Welcome!

Java IoT Authors: Yeshim Deniz, Pat Romanski, Liz McMillan, Zakia Bouachraoui, Elizabeth White

Related Topics: Agile Computing, Java IoT, Adobe Flex

Agile Computing: Article

JavaFX: The Baby's Welcome, But the Birth's a Little Premature

Java developers should definitely start experimenting with this new kid on the block

On December 4, JavaFX arrived to this world with lots of “It’s a Boy” balloons. The family of RIA development tools gets bigger and as a Java programmer, I wish best of luck to this new kid on the block.

But the party is a little spoiled because the baby is premature and will have to spend some time in barocamera to survive. To make myself clear, I’ll mix in here some definitions from Wikipedia in italic:

Human fertilization is the union of a human egg and sperm, usually occurring in the ampulla of the fallopian tube.

In my opinion, this definition is OK for bulls and cows, but in the human world it would be nice if the bearers of sperm and egg loved each other and wanted this baby.   In May of 2007, when Sun Microsystems announced JavaFX, I did not see any traces of love there.

This was forced fertilization. Sun, which technically created the first rich Internet application in the form of applets in 1995 did not give enough love to that baby too concentrating its efforts on Java technologies that would help selling Sun’s servers. As a result, Java EE shines as a platform for development and deployment of the server-side enterprise applications.

Java Swing , the client side library, was too difficult to program, required large Java runtime that was not too easy to install, had a slow 0-60 acceleration. Java on the client did not have a runtime environment that was feasible for consumer-facing RIA. A trucker from Alabama would not be able to install the proper version of JRE.

In the world of RIA, availability and high penetration of the runtime environment is the most important pre-requisite for any RIA technology or technique.  High penetration of Web browsers supporting DHTML plus XMLHttpRequest object is the explanation of the three years of AJAX craze that’s, thanks God, is coming to an end.
About ten years ago, Sun “won” a lawsuit with Microsoft and made $10B. These bad guys from Redmond wanted to make our Java dirty by quietly introducing their infidel libraries.  Sun went into a fight, got the money… and lost the mechanism for spreading Java runtime. The Internet Explorer, that’s being used by about 75% of the users, even today ships with the ten-year old Java 1.1 runtime.

On the other hand, Adobe’s Flash Player is a runtime for Flash and Flex application that’s small, has seamless installation and has a penetration rate of 98%. Flex 2 was announced three years ago after Adobe has acquired Macromedia, and not only offered nice framework for developing UI, but also came with advanced network protocols and easy integration with Java EE on the server.

Microsoft was first to recognize Flex as a new RIA platform leader, and as usually, responded, “Me too.” And when Microsoft says, “Me too”, they really mean it. Some very serious dependency injection (I’m talking about long and green) did the trick, and Silverlight 2.0 may start competing with Flex in a year, if the penetration of the Silverlight’s runtime will reach at least 80%.

During JavaOne 2007, Sun realized that they missed the RIA boat and announced JavaFX loud and clear. They were forced to bed, but the sperm met the egg and the process has begun. Marketing people and executives started make some serious noise about JavaFX.

Pregnancy (latin graviditas) is the carrying of one or more offspring, known as a fetus or embryo, inside the uterus of a female.

But just running around screaming, “I’m pregnant, I’m pregnant!” is not enough for delivering a healthy baby. Pregnant women should have better nutrition, and should be surrounded with love and support. I was following the evolution of JavaFX very closely and I didn’t see this love and support from Sun’s top management. Sun's executives were trumpeting about new and great product, but I'd rather see them providing some real support to a small group of talented software engineers that were trying to do the bet pushing the product out the door.

Please read the story of an Chris Oliver, creator of JavaFX.  Sun published this strory under the title “Mind-Bendingly Cool Innovation ”. On the surface, it looks like a success story of a boy who didn’t even go to college but became a Senior Stuff Engineer at Sun.  But one of the Oliver’s statements tells me that he had lots of obstacles within Sun while working on JavaFX:

“For us, a bunch of tedious work - what I wanted to do but was obstructed for the last several years. Now I won't be obstructed, thanks to the new management. Now the path is open for us to walk down it, but we have to actually walk down it," he says.

I’m sure, you know that it take a women nine months to deliver a baby. In software, it usually takes a lot longer, and the released version of JavaFX gives me a feeling that it’s premature.

The Web site javafx.com didn’t impress me.  The Web site itself was falling down several times during the opening day – it was not tested well enough. This is yet another evidence of insufficient resource allocated to this project. There is no demos of the UI for enterprise-grade applications that I was expecting to see.  As a matter of fact, long time ago I’ve been sending emails to people who were involved with development of JavaFX asking for at least a Pet Store demo. It didn’t happen yet.

The start of the available demos is still slow. The ugly messages like “Java Starting” and “You may not have the right certificate. Do you trust this application?” will scare that Alabama trucker to death and he’ll run away from this Web site.

On the positive side, JavaFX has pushed Sun to developer Java Kernel, a relatively small JRE that loads faster. The other smart thing is their attention to designer-developer workflow. Sun decided not to re-invent the wheel and create a plugin that should allow designers continue using Adobe Photoshop and Illustrator with automatic JavaFX code generator.

Sun made yet another smart decision - decoupling of the JVM from the browser. You should be able to start JavaFX from the browser, but then kill the browser and your applet should stay alive. You should be able to drag the applet from the browser and drop it right onto your desktop (may not work on MAC OS).

Here's another good feature - automatic detection of the  client's JVM version. Inclusion of a small JavaScript piece into the HTML wrapper of your applet should check it out and ensure that the user machine has JVM 1.6U10 or above.  If not, the JVM should be SEAMLESSY upgraded. I haven't seen this feature in action yet- running available demos on ny MacBook Pro, which has only JVM 1.5, and so far I haven't been forced or offered to do an upgrade.THis must be enforced as it's the only way to improve penetration of JVM 1.6U10 (actually, J6U11 is the latest version).

Now Sun has to offer tools for developing JavaFX applications. Sure enough, you can use NetBeans 6.5, but for some reason, the majority of Java developers use Eclipse. The speedy introduction of Eclipse plugin for JavaFX should be a highest priority item for Sun. Just bite the bullet and do it.  

Even though I’m using Adobe Flex for development of the UI portion of enterprise RIA, I don’t fall in love with programming languages, and would be gladly using JavaFX too when it’s ready for production.   It may happen in 2010. But Sun has either to put the money where its mouth is or open source JavaFX to allow Java enthusiasts make this language competitive in the RIA world.

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 (1) 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
pshanks 12/08/08 10:21:47 PM EST

I went to the demo page, thinking that some of Mr. Fain's experiences must have been fixed by now. I clicked on the "Draggable MP3 Player" demo. I did hear some rather annoying music, but the entire browser froze when I attempted to use the controls. I mean really froze -- I had to kill the browser (IE6SP2; WinXPSP2; Java 1.60_07) in the Windows Task Manager. My luck was slightly better in Firefox -- at least I could close the browser when the JavaFX interface jammed up as I tried again to use the controls.

IoT & Smart Cities Stories
Early Bird Registration Discount Expires on August 31, 2018 Conference Registration Link ▸ HERE. Pick from all 200 sessions in all 10 tracks, plus 22 Keynotes & General Sessions! Lunch is served two days. EXPIRES AUGUST 31, 2018. Ticket prices: ($1,295-Aug 31) ($1,495-Oct 31) ($1,995-Nov 12) ($2,500-Walk-in)
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 settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
Nicolas Fierro is CEO of MIMIR Blockchain Solutions. He is a programmer, technologist, and operations dev who has worked with Ethereum and blockchain since 2014. His knowledge in blockchain dates to when he performed dev ops services to the Ethereum Foundation as one the privileged few developers to work with the original core team in Switzerland.
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and smart thermostats, are fairly well-understood. However, there are a new set of challenges for IoT devices that generate megabytes or gigabytes of data per second. Certainly, the infrastructure will have to change, as those volumes of data will likely overwhelm the available bandwidth for aggregating the data into a central repository. Ochandarena discusses a whole new way to think about your next...
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
All in Mobile is a place where we continually maximize their impact by fostering understanding, empathy, insights, creativity and joy. They believe that a truly useful and desirable mobile app doesn't need the brightest idea or the most advanced technology. A great product begins with understanding people. It's easy to think that customers will love your app, but can you justify it? They make sure your final app is something that users truly want and need. The only way to do this is by ...
DXWorldEXPO LLC announced today that Big Data Federation to Exhibit at the 22nd International CloudEXPO, colocated with DevOpsSUMMIT and DXWorldEXPO, November 12-13, 2018 in New York City. Big Data Federation, Inc. develops and applies artificial intelligence to predict financial and economic events that matter. The company uncovers patterns and precise drivers of performance and outcomes with the aid of machine-learning algorithms, big data, and fundamental analysis. Their products are deployed...