Welcome!

Linux Containers Authors: Liz McMillan, Pat Romanski, Elizabeth White, Yeshim Deniz, Flint Brenton

Related Topics: Adobe Flex, Java IoT, ColdFusion, Machine Learning , Silverlight

Adobe Flex: Article

Can You Use Flex Communication Protocols for Mission-Critical Trading Applications?

Answering James Gosling's Flash Player Comments

Redmond Developer News has published an interview with Dr. James Gosling, creator of the Java language, where among other things, he talks about JavaFX and  competing technologies. And he made a comment I can’t agree with. Here’s the quote from that interview:

As organizations think about building rich Internet applications or rich client applications, when should developers look at JavaFX over competing technologies? If you look at something like Flash, when you get to the much more advanced stuff -- richer interfaces, more complex network protocols, more complex APIs -- it really falls short. We've had a platform for years that can build rich Internet applications that are extremely sophisticated.”

Before even going into technical details explaining why this statement is wrong,  let me tell you that if someone would ask me to name a dozen of the most respected people in the industry, James Gosling would be one of them. Because of him, I live in a nice house and drive a nice car – I’ve been doing Java for the last 10 years.  If James had not invented Java, I’d be probably still working with PowerBuilder, writing that it’s the best thing since sliced bread. 

But let’s go to the essence of the accusations. Dr. Gosling does not attack the presentation and delivery abilities of Flash Player because Flash Player is today’s leading delivery mechanism  for rich Internet applications. He addresses network protocols, something that may not be as easy to argue. So let’s talk protocols.

In 2007, my colleague and I were invited by a financial company (a Java shop) to assess if they could create an Internet version of their trading application using Flex. They did not have any doubts the GUI part should be done in Flex and delivered to their customers by Flash Player. Using AJAX for such an application would be crazy.

Sun’s long history of ignoring Java as a platform for delivering Internet applications ruled Java applets out. A dancing Duke made his short appearance in 1995 and was forgotten by Sun for the next 10 years. Can you imagine Amazon or Google using Java as a front end for their applications? It’d be insane – they’d lose half of their customers trying to persuade them to use Java applets - each of them has different version of JRE and installing the right one requires a college degree in computers.  I hope this situation will change with the introduction of the Consumer JRE later this year, but we are not there yet.

Anyway, this financial company was not sure if the communication protocols offered by Flex were robust enough to provide reliable and guaranteed message delivery and could be extended to accommodate the specific needs of this application, such as adding the application-specific quality of service (QoS) information right to the packets sent over the network from the Flash client to Java server-side application. They wanted some other things too, such as message throttling in case of network congestion and more.

Flex offers a server-side piece called LiveCycle Data Services ES, which comes  with a couple of fast communication protocols: AMF – a binary protocol that makes calls over HTTP from client to server (polling), and RTMP – real time messaging protocol that supports real time push from the server to the Flash client.  By the way, AMF goes open source in a month or so (see BlazeDS).  Security is similar to Java applets (sandbox) and you can use RTMPS instead of RTMP. Java offers RMI protocol for RPC and JMS for messaging.  RTMP is easy to integrate with other messaging systems via JMS. RTMP is built using Java non-blocking IO and it supports the data push needed in most Web applications.

Under the hood,  AMF and RTMP protocols implement object serialization,  so an instance of a Java object gets serialized on one end and is re-created as an instance of the ActionScript object on the client inside Flash Player, which is nothing else but a VM. On the way back, an ActionScript object is serialized on the client and gets re-created in the server’s JVM as a Java object.

One of the most important features of the Flex framework is that it’s extendable. The server side of the implementation of these protocols is written in Java, and the client side in ActionScript 3. To make the story short, we were able to extend the communication channels, end points, message consumers and producers to enrich RTMP protocols to the client's specification. Now the messages about trading orders and executions travel happily between the Flash client and Java server.  We've also added a two-way RPC-over-messaging in a symmetrical way. 

This project was an example of a nice marriage between  Flex and Java in a Wall Street application. If Flex has weak spots, it’s slow compiler and a mediocre (by Java standards)  Eclipse-based IDE. Since Flex is open sourced now,  I hope that some third-party company will create a better IDE and improve the compiler.

But as of now, I’m pretty happy with using both Java and Flex technologies, and the good part is that it’s not an either-or situation – just use the right tools for the job. There is no need to lobby for any particular language. As for JavaFX, I wish it would start competing with Flex and Silverlight as soon as possible. The more the merrier.

Some time ago I said to my kids, “Even if, God forbid, you commit a crime, Mom and I will still love you and will try to protect you to the very end. You are our kids and we love you regardless of your achievements and personal qualities.” It seems that James Gosling has the same principles and protects his baby no matter what. I respect this but have my reservations.

James Gosling's fan,
Yakov Fain

More Stories By Yakov Fain

Yakov Fain is a Java Champion and a co-founder of the IT consultancy Farata Systems and the product company SuranceBay. He wrote a thousand blogs (http://yakovfain.com) and several books about software development. Yakov authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", and "Enterprise Web Development". His Twitter tag is @yfain

Comments (4) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
steve ballmer 01/12/08 09:28:25 PM EST

PopFly+Silverlight makes Flash Obsolete!
At the web 2.0 thingy we gave a preview of "Microsoft Online Composition Media Aggregation Layout Toolset", at the time I wasn't exactly 100% so I couldn't remember the name, so I just told them it was named PopFly. I don't know what made made say that name, but it has gone over well.
So, PopFly! PopFly! PopFly!
Adobe has been an annoyance to me for years, we have tried everything we could to dislodge them but they just keep cranking out good products. We even tried a few sabotage .dll's, but they always figure it out in no time at all and issue a patch.
But I think we now have the right Combination, PopFly and Silverlight. Here's my plan:

Those companies who will not adopt these technologies will be "downlisted" at MS.
IE8 will require it's installation.
The booby-trap .dll's will come out weekly.
Adobe will be marginalized!

It's a beautiful day at Microsoft!

John Bailo 01/08/08 07:50:36 PM EST

Gosling is absolutely right! I have thought the same thing myself. Flash does not make "rich applications", it is useful for very graphically rich applications. To me, a rich application is one where the whole space is available for interaction. Yeah, you could make the page one gigantic Flash "graphic", but that's not the point. I want all the elements at my disposal, from the lowliest HTML element, to the most magnificent control -- but I want absolute programmer direction of each thing.

Java is good enough to do it all -- I think we'll see some real consolidation (and some real needed growth for Sun Microsystems (JAVA)) in the coming ten years.

ByStander 01/08/08 03:37:40 AM EST

> I've been doing some variation of AJAX for over 4
> years now and can say that aside from vector
> graphics, AJAX can do anything that Flex can.

An AJAX vs Flex dicussion at AJAXWorld would be cool, are you giving a session, Dave?

DaveS 01/07/08 06:26:25 PM EST

Surprise, surprise, Yakov disses on AJAX again. I've been doing some variation of AJAX for over 4 years now and can say that aside from vector graphics, AJAX can do anything that Flex can. Based on Yakov's prior comments regarding AJAX, he has very little experience with advanced JavaScript and DOM scripting.

@ThingsExpo Stories
More and more brands have jumped on the IoT bandwagon. We have an excess of wearables – activity trackers, smartwatches, smart glasses and sneakers, and more that track seemingly endless datapoints. However, most consumers have no idea what “IoT” means. Creating more wearables that track data shouldn't be the aim of brands; delivering meaningful, tangible relevance to their users should be. We're in a period in which the IoT pendulum is still swinging. Initially, it swung toward "smart for smart...
As data explodes in quantity, importance and from new sources, the need for managing and protecting data residing across physical, virtual, and cloud environments grow with it. Managing data includes protecting it, indexing and classifying it for true, long-term management, compliance and E-Discovery. Commvault can ensure this with a single pane of glass solution – whether in a private cloud, a Service Provider delivered public cloud or a hybrid cloud environment – across the heterogeneous enter...
DXWorldEXPO LLC announced today that ICC-USA, a computer systems integrator and server manufacturing company focused on developing products and product appliances, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City. ICC is a computer systems integrator and server manufacturing company focused on developing products and product appliances to meet a wide range of ...
Michael Maximilien, better known as max or Dr. Max, is a computer scientist with IBM. At IBM Research Triangle Park, he was a principal engineer for the worldwide industry point-of-sale standard: JavaPOS. At IBM Research, some highlights include pioneering research on semantic Web services, mashups, and cloud computing, and platform-as-a-service. He joined the IBM Cloud Labs in 2014 and works closely with Pivotal Inc., to help make the Cloud Found the best PaaS.
Headquartered in Plainsboro, NJ, Synametrics Technologies has provided IT professionals and computer systems developers since 1997. Based on the success of their initial product offerings (WinSQL and DeltaCopy), the company continues to create and hone innovative products that help its customers get more from their computer applications, databases and infrastructure. To date, over one million users around the world have chosen Synametrics solutions to help power their accelerated business or per...
Dion Hinchcliffe is an internationally recognized digital expert, bestselling book author, frequent keynote speaker, analyst, futurist, and transformation expert based in Washington, DC. He is currently Chief Strategy Officer at the industry-leading digital strategy and online community solutions firm, 7Summits.
In an era of historic innovation fueled by unprecedented access to data and technology, the low cost and risk of entering new markets has leveled the playing field for business. Today, any ambitious innovator can easily introduce a new application or product that can reinvent business models and transform the client experience. In their Day 2 Keynote at 19th Cloud Expo, Mercer Rowe, IBM Vice President of Strategic Alliances, and Raejeanne Skillern, Intel Vice President of Data Center Group and ...
Founded in 2000, Chetu Inc. is a global provider of customized software development solutions and IT staff augmentation services for software technology providers. By providing clients with unparalleled niche technology expertise and industry experience, Chetu has become the premiere long-term, back-end software development partner for start-ups, SMBs, and Fortune 500 companies. Chetu is headquartered in Plantation, Florida, with thirteen offices throughout the U.S. and abroad.
In his Opening Keynote at 21st Cloud Expo, John Considine, General Manager of IBM Cloud Infrastructure, led attendees through the exciting evolution of the cloud. He looked at this major disruption from the perspective of technology, business models, and what this means for enterprises of all sizes. John Considine is General Manager of Cloud Infrastructure Services at IBM. In that role he is responsible for leading IBM’s public cloud infrastructure including strategy, development, and offering m...
From 2013, NTT Communications has been providing cPaaS service, SkyWay. Its customer’s expectations for leveraging WebRTC technology are not only typical real-time communication use cases such as Web conference, remote education, but also IoT use cases such as remote camera monitoring, smart-glass, and robotic. Because of this, NTT Communications has numerous IoT business use-cases that its customers are developing on top of PaaS. WebRTC will lead IoT businesses to be more innovative and address...
Rodrigo Coutinho is part of OutSystems' founders' team and currently the Head of Product Design. He provides a cross-functional role where he supports Product Management in defining the positioning and direction of the Agile Platform, while at the same time promoting model-based development and new techniques to deliver applications in the cloud.
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
In his session at Cloud Expo, Alan Winters, U.S. Head of Business Development at MobiDev, presented a success story of an entrepreneur who has both suffered through and benefited from offshore development across multiple businesses: The smart choice, or how to select the right offshore development partner Warning signs, or how to minimize chances of making the wrong choice Collaboration, or how to establish the most effective work processes Budget control, or how to maximize project result...
IoT is rapidly becoming mainstream as more and more investments are made into the platforms and technology. As this movement continues to expand and gain momentum it creates a massive wall of noise that can be difficult to sift through. Unfortunately, this inevitably makes IoT less approachable for people to get started with and can hamper efforts to integrate this key technology into your own portfolio. There are so many connected products already in place today with many hundreds more on the h...
Personalization has long been the holy grail of marketing. Simply stated, communicate the most relevant offer to the right person and you will increase sales. To achieve this, you must understand the individual. Consequently, digital marketers developed many ways to gather and leverage customer information to deliver targeted experiences. In his session at @ThingsExpo, Lou Casal, Founder and Principal Consultant at Practicala, discussed how the Internet of Things (IoT) has accelerated our abilit...
In his keynote at 19th Cloud Expo, Sheng Liang, co-founder and CEO of Rancher Labs, discussed the technological advances and new business opportunities created by the rapid adoption of containers. With the success of Amazon Web Services (AWS) and various open source technologies used to build private clouds, cloud computing has become an essential component of IT strategy. However, users continue to face challenges in implementing clouds, as older technologies evolve and newer ones like Docker c...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
No hype cycles or predictions of zillions of things here. IoT is big. You get it. You know your business and have great ideas for a business transformation strategy. What comes next? Time to make it happen. In his session at @ThingsExpo, Jay Mason, Associate Partner at M&S Consulting, presented a step-by-step plan to develop your technology implementation strategy. He discussed the evaluation of communication standards and IoT messaging protocols, data analytics considerations, edge-to-cloud tec...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an overview of the evolution of the Internet and the Database and the future of their combination – the Blockchain. Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settl...
In his session at @ThingsExpo, Dr. Robert Cohen, an economist and senior fellow at the Economic Strategy Institute, presented the findings of a series of six detailed case studies of how large corporations are implementing IoT. The session explored how IoT has improved their economic performance, had major impacts on business models and resulted in impressive ROIs. The companies covered span manufacturing and services firms. He also explored servicification, how manufacturing firms shift from se...