Welcome!

Java IoT Authors: Zakia Bouachraoui, Liz McMillan, Kevin Benedict, Elizabeth White, Yeshim Deniz

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)

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.


IoT & Smart Cities Stories
New competitors, disruptive technologies, and growing expectations are pushing every business to both adopt and deliver new digital services. This ‘Digital Transformation’ demands rapid delivery and continuous iteration of new competitive services via multiple channels, which in turn demands new service delivery techniques – including DevOps. In this power panel at @DevOpsSummit 20th Cloud Expo, moderated by DevOps Conference Co-Chair Andi Mann, panelists examined how DevOps helps to meet the de...
According to Forrester Research, every business will become either a digital predator or digital prey by 2020. To avoid demise, organizations must rapidly create new sources of value in their end-to-end customer experiences. True digital predators also must break down information and process silos and extend digital transformation initiatives to empower employees with the digital resources needed to win, serve, and retain customers.
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, will provide 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 ...
Smart Cities are here to stay, but for their promise to be delivered, the data they produce must not be put in new siloes. In his session at @ThingsExpo, Mathias Herberts, Co-founder and CTO of Cityzen Data, discussed the best practices that will ensure a successful smart city journey.
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
LogRocket helps product teams develop better experiences for users by recording videos of user sessions with logs and network data. It identifies UX problems and reveals the root cause of every bug. LogRocket presents impactful errors on a website, and how to reproduce it. With LogRocket, users can replay problems.
@CloudEXPO and @ExpoDX, two of the most influential technology events in the world, have hosted hundreds of sponsors and exhibitors since our launch 10 years ago. @CloudEXPO and @ExpoDX New York and Silicon Valley provide a full year of face-to-face marketing opportunities for your company. Each sponsorship and exhibit package comes with pre and post-show marketing programs. By sponsoring and exhibiting in New York and Silicon Valley, you reach a full complement of decision makers and buyers in ...
There are many examples of disruption in consumer space – Uber disrupting the cab industry, Airbnb disrupting the hospitality industry and so on; but have you wondered who is disrupting support and operations? AISERA helps make businesses and customers successful by offering consumer-like user experience for support and operations. We have built the world’s first AI-driven IT / HR / Cloud / Customer Support and Operations solution.
Data Theorem is a leading provider of modern application security. Its core mission is to analyze and secure any modern application anytime, anywhere. The Data Theorem Analyzer Engine continuously scans APIs and mobile applications in search of security flaws and data privacy gaps. Data Theorem products help organizations build safer applications that maximize data security and brand protection. The company has detected more than 300 million application eavesdropping incidents and currently secu...
Rafay enables developers to automate the distribution, operations, cross-region scaling and lifecycle management of containerized microservices across public and private clouds, and service provider networks. Rafay's platform is built around foundational elements that together deliver an optimal abstraction layer across disparate infrastructure, making it easy for developers to scale and operate applications across any number of locations or regions. Consumed as a service, Rafay's platform elimi...