Archive for March, 2011


As a RIA specialist I have been doing client side development professionally over the last six years or so, in a variety of UI toolkits and libraries that spanned Ajax, Adobe Flex, HTML5, Swing, Applet and Silverlight. During this period I have been in touch with different RIA technology, JavaFX being one of them. Before continuing the discussion further first I would like to tell you little bit about JavaFX. The JavaFX is a rich client platform for building cross-device applications and content. Designed to enable easy development and deployment of rich internet applications (RIAs) with immersive media and content, the JavaFX platform ensures that RIAs look and behave equivalently across diverse form factors and devices. This is an innovative technology built on top of Java that allows the creation of next generation RIAs.

javafx_logo_color_1

Client side developers are always seeking for most efficient way of creating expressive RIAs. They need to build high fidelity GUIs that operates seamlessly on multiple web browsers, operating systems and devices, without having to rewrite their applications for varied environment. JavaFX promised to provide this kind of technology for end user developer, with the power of most preferable web and device technology- Java. With the advent of JavaFX it was thought that java would be one stop shop for developers.

It’s been three years since JavaFX was introduced to the world, but alas it didn’t gain a lot of momentum, though being launched at the right nick of time when the web community was moving towards RIA. It introduced a new scripting language called JavaFX Script, a very powerful language. In fact, it’s a DSL (Domain Specific Language) for creating rich user interfaces where the resulting application runs inside the Java virtual machine on the client. To my surprise when I first loaded the demos on their sites it took lot of time to load as compared to Adobe flash based application. I was hoping that being developed on Java as base technology it should have outperformed the flash based application. The benchmark on different site shows that JavaFX is by far the slowest. JavaFX APIs are not stable yet, it is not an industry standard and not many vendors are committed to it. Further, competing technology such as Adobe Flash is very popular and almost dominates the RIA domain. The key mantra of JavaFX is deployment and performance. Unfortunately, this is where JavaFX has failed miserably. The original Java applets and swing application failed miserably in deployment and JavaFX (which was supposed to be the next applet technology or applets 2.0) has inherited the failed deployment with it. In other words, nothing has really changed since 1995. This is what happens most of the time – you click on a link to launch a JavaFX application inside the browser. The browser freezes for about 5 seconds. To my woes, yesterday night while discussing about the JavaFX deployment process with one of my friend, I tried to show him the demo on JavaFX site, and the browser crashed twice. Should I blame him for this, for he was trying to click here and there while the demo was trying to load itself? I think JavaFX failed to gain any significant momentum mainly because of deployment problems which I described here. Deployment was never simple. Running an applet could freeze the browser for a few seconds, present you with a number of scary securities dialogs, and maybe even launch. If you were not that lucky, you would see the Java logo as an animated GIF. What I described above is the main reason JavaFX has failed so far. Deployment is still a disaster. If Oracle needs to know how deployment should work, it’s very easy. Just look at Adobe Flash. Make it as simple and transparent as running a Flash application. That’s it.

Some people say they don’t like JavaFX because they need to learn a new language. Well that’s just a bunch of hot air. First of all, any decent Java developer can pick up JavaFX Script in about 2 days. If you are developer (any kind) today, you have to learn new stuff all the time.

After acquisition of Sun Microsystem by Oracle, the roadmap or vision of JavaFX is changed. As everyone knows by now, Oracle is making significant changes to JavaFX. Oracle is stopping any further development of JavaFX Script. Instead, it will develop Java APIs which will become a part of JavaFX 2.0 to be released in the second half of 2011. So, instead of using JavaFX Script to develop rich Java applications, you will use the new Java API. There is still time to make JavaFX successful, but the time is running out. First, fix the deployment issue need to be addressed. Just start from scratch, don’t try to fix the current deployment system. Second, if Oracle doesn’t want or need JavaFX, then open source it and let the community drive its future. I think Oracle has 6-12 months at the most to try and revive JavaFX. If nothing happens by then (which would be about 4 years since the technology was announced), we just might as well close the door on JavaFX. Now market trends driven towards open ended technology like HTML5, people are not ready to depend on any third party proprietary technology. As the history suggests Java popularised for being cross-device technology. So for me JavaFX still have a market in device development segment. If they fix the performance and deployment issue ASAP.

Adobe Flash Player 10.3 Beta Release

Posted: March 25, 2011 in Adobe
Tags:

Flash Player 10.3 for Windows, Mac, and Linux introduces new developer features and enhanced user privacy protection, such as:

  • Media Measurement — Measuring video just got easier. With Flash Player 10.3 and Adobe SiteCatalyst®, developers can implement video analytics with as little as two lines of code. Analytics solutions can use a new set of open APIs to easily implement consistent video analytics irrespective of implementation or delivery protocol. Media Measurement for Flash allows companies to get real-time, aggregated reporting of how their video content is distributed, what the audience reach is, and how much video is played.
  • Acoustic Echo Cancellation — Flash Player 10.3 enables developers to create real-time online collaboration experiences with high-quality audio, such as telephony, in-game voice chat, and group conferencing applications. Developers can take advantage of acoustic echo cancellation, noise suppression, voice activity detection, and automatic compensation for various microphone input levels. End users will be able to experience higher quality audio facilitating smoother conversation flow, without using a headset.
  • Integration with browser privacy controls for managing local storage — Users now have a simpler way to clear local storage from the browser settings interface – similar to how users clear their browser cookies today. Flash Player 10.3 integrates control of local storage with the browser’s privacy settings in Mozilla Firefox 4, Microsoft Internet Explorer 8 and higher, and future releases of Apple Safari and Google Chrome.
  • Native Control Panel — Flash Player 10.3 provides users with streamlined controls for managing their Flash Player privacy, security and storage settings. Windows, Mac, and Linux users can access the Flash Player Settings Manager directly from the Control Panels or System Preferences on their computers.
  • Auto-Update Notification for Mac OS — Flash Player 10.3 supports automatic notification of software updates on Mac OS, making it easier for Mac users to stay current with new capabilities in the latest version of Flash Player.

With this beta release of flash player developer can start taking advantage to test existing content and plateform for compatibility. You can download this beta version from Adobe Lab : http://labs.adobe.com/downloads/flashplayer10-3.html

Enjoy 🙂

Flash on iOS devices

Posted: March 15, 2011 in RIA, Technology

Adobe has finally release a new tool called Wallaby, that will convert Flash files to HTML5 so they can run on Apple devices like the iPad and iPhone. This tool is basically help online advertisers and websites who have alreaduy made a big investment in Flash and don’t want to loose the iOS market.

Wallaby is essentially a Flash to HTML5 converter. This software runs on top of Adobe AIR, and will convert Flash(FLA) files into HTML5 format through a drag and drop action. Wallaby outputs HTML5 content compatible with Webkit based browsers e.g. Google Chrome, Safari and the iOS browser.

Interested in Wallaby :-)… get connected and downloded from http://labs.adobe.com/technologies/wallaby/