Last week was Sun’s annual JavaOne and thus its major announcements. This year, the big news was the new “JavaFX” brand, and the two products — “JavaFX Mobile” and “JavaFX Script.” Maybe I’m dense, or rushed, but I don’t get the logic of either one — the branding, the need for the technology, or how it fits with existing ecosystems.
Declarative languages are the best way to specify user interface/code interactions, as Mac GUI authors have known for more than 20 years. However, despite Sun’s claim to a technical need for yet another scripting language, the aims of JavaFX Script (or whatever they end up calling it) seem more about keeping Java programmers writing in Java, and developing for a Sun-controlled architecture.
Meanwhile, the latest language option raises questions about last fall’s decision to hire the “JRuby Guys” and efforts to drive Ruby development to the Java-native interpreter.
The open source and branding strategy are similarly confusing:
What Is Project OpenJFXEverybody got that? JavaFX Script is going to be open source someday, you should just call it “JavaFX”, and this “JavaFX” has the same name as Sun’s new family of products (of which these are but the first two). If this is the long-term strategy, it’s hard to see that JavaFX Script ever becomes independent (like Eclipse) rather than captive or even dual license (like MySQL).
Project OpenJFX is a project of the OpenJFX community for sharing early versions of the JavaFX Script language and for collaborating on its development. In the future, the JavaFX Script code will be open sourced. The governance, licensing, and community models will be worked out as the project evolves.
What Is JavaFX
JavaFX is a new family of Sun products based on Java technology and targeted at the high impact, rich content market. …
Why is the JavaFX Script name so long?
Although the official name of the scripting language is JavaFX Script, we expect many programmers to just call it JavaFX as it is the core of the JavaFX family.
JavaFX MobileThe other half of the JavaOne announcement was JavaFX Mobile.
This is based on the work of SaveJe, a spinoff of Lucent that won $71m in VC funding, and strategic support from European carriers Orange and Vodafone. Although people like the SavaJe technology — adding mobile phone features into the Java virtual machine — it ran out of money last fall and then all its IP was acquired for a song by Sun last month.
Again, Sun seems to be trying to compete head-on with Adobe (née Macromedia née FutureWave) Flash, which has successfully turned middleware into an API platform that pre-empts operating systems.
Various accounts say that JavaFX is targeted at low-end phones or "multimedia phones". (If they are the same then all phones are multimedia phones). So Sun has another six months to figure out a strategy before it ships first product. Meanwhile, it hopes to commoditize phone operating systems, pleasing carriers like Orange and Vodafone while pissing off major mobile phone customers like Nokia, Samsung and Motorola.
What does it all mean?That Adobe, Microsoft and various second tier vendors (like Sun) want to own rich Internet content is not all that surprising. But what is interesting all these vendors are vying to offer complete solutions for mobile phones, which already has Symbian, Palm, emerging Linux solutions as well as the phone makers’ in-house solutions.
Two things seem like larger lessons:
- Unlike with the original Acrobat, or Flash, none of the competitors are willing to let a new platform win by default. (Even MS-DOS had competition briefly from CP-M/86 and of course recently from Linux).
- So far, all of these options (except Linux) seem to be proprietary software stacks with only an occasional bone of openness (such as the JavaFX and Silverlight open source promises). Either the vendors are right, and buyers (whether end users or hardware makers) don’t care about openness, or there’s an opportunity for someone to compete using openness as a weapon.