Wednesday, June 8, 2011

Does JavaFX2 has life ahead which has released recently with a complete overhaul ?



Oralce has released Javafx 2.0 Rich Client Access ( Client side RIA ) beta. The JavaFX 2 plugin support is given in the new Netbeans 7.

The Major feature includes:

New Improved Java APIs for JavaFX : 

1. Allows to work with the java heritage

2. Support for DSLs

3. Swing Interoperability: No alien for java swing developers

4. A prism capable plugin: A plugin capable of running prism without starting of AWT.

5. A new graphics stack with new fully hardware accelerated pipeline called Prism targets DirectX on windows and Opengl on other platforms.

6. A web component that uses Webkit to render HTML.

7. An ultra net set of UI controls

8. New media features like Alpha Channels , Audio Equalizer, Low latency audio and programmatic Media Marker.

Find more details (http://javafx.com/roadmap/ )

Java is very strong and is more prominent in server side. It has not seen much success in client side. Sun developed very innovative client technologies like swing and applet sticking to the tag line
“write once run anywhere”.

Till today the applets are in use in many production environments. The java + opengl combination in the client side makes more appealing and as applet runs on the browser, it makes much more important the role of applets in browser to display the media content. There are several other alternatives technologies have been emerged using opengl but the good old way of displaying 3D content would be using a simple applet.

But somehow all these innovations failed to attract building client side applications using java. Till today sun/oracle did not bridge that gap may be it is mainly because an enterprise cultural issue or lack of focus. On the contrary Microsoft always excelled in providing nice UI friendly languages be it VB or C# with window forms and wpf. In the browser side it has very strong product to beat the competition is Silver Light. So developers are comfortable developing .Net stack the natural choice of the RIA platform is Silver Light.  

On the same page while Adobe had some strong comments from Steve Jobs on using flash in apples product line, but Flex is one of the most used technology in the client side. ( 90%) web applications use flash in their websites. That itself shows the product acceptance.

The following picture shows the job trends between competing products. javafx, extjs, adobe flex,silver light.
  



   
While all this is fine, there is new kid in the block which is HTML 5. Most of the companies are betting on HTML 5 to be the defacto standard for client side apps such as displaying 2D and 3D contents, audio/video stream to building client side apps with JS being the underlined language. Microsoft has recently raised confusion on Silver light’s feature as it believes the HTML is way feature and so apple.

The biggest question is do we have any need for any new RIAs with new learning curve and new nuances.

I feel each RIA vendors embrace HTML as standard platform, still these technologies will have their own approach to make HTML5 work for app developers. 

Let me know your comments.

4 comments:

  1. Early last year I had a chance to write very simple intranet app; basically just an editable grid. I decided to give javaFX a try and got badly burnt. There were some amazing looking sample apps around, but they would only build against beta releases not the latest stable version.

    I had three false starts and then abandoned javaFx having sat working late to try to crack such a simple problem. In the end I used a good AJAX framework and completed the task in very quick time. I am sure had I picked to learn flex/flash rather than javaFX I would have been as quick but I need to "go with what i know" given the wasted time on "prototype" javafx

    Sun didnt get it. I am not sure Oracle get it. Winning on the server was a historic accident. Flash and .Net are massive ecosystems. It is not the case of "if we build it they will come". Only google can throw a prototype at the world and find that 50 'how to get started' articles and two books appear overnight.

    If oracle are not going to go-live with a book and a big site with very comprehensive sample library of small apps and a big investment at making it usable and accessible (netbeans? get real) then it is all just effort down the drain. HP are paying public developers to write apps for their new webos. Likewise BlackBerry is paying big money out to gain a community of developers. All to start to look like a minnow to iOS dev community. Is oracle going to put some serious effort to do with javafx to win minds from the adobe flash community?

    My prediction is that javafx is betamax and flash is vhs.

    ReplyDelete
  2. My prediction is flash and javafx are dead ends.

    html5/javascript is the future of RIA/UI. Look at the announced development model for Windows 8, It will be based on html5/javascript and yes many companies are betting on html5/javascript, Apple ditched complete the flash platform from their ecosystem.

    ReplyDelete
  3. I was really looking forward to JavaFX 2.0 seven years ago.

    JavaFX 1.0 with it's own scripting language was a disastrous mistake. Java's strength is in it's numbers of developers now... leverage the language. And they have now. But Oracle needs to release an Adobe like Designer suite with the SDK to get people to jump on the band wagon.

    If I was Oracle, I'd go the GWT route. Leverage all the strength of the Java API and new JavaFX libraries, but compile to JavaScript or generate a HTML5 Canvas type component. Simultaneously, release an online editor, with the usability of GoogleDocs, for Designers.

    ReplyDelete
  4. Anthony,

    You are right probably the google gwt way should be one of the best option.

    ReplyDelete