I was looking at all of the effort that went into JavaFX. Sun has really done a good job with it. It does some really cool things: effects, animations, simple declarative style, etc.
It is missing something... Usefulness.
I think that it is really neat. Don't get me wrong. I am wondering based on Sun's history and recent pull-back from projects it has called "the next big thing", that this will fall into the heap of ideas that fail to get momentum (sustainable momentum).
I have waited for two years (JavaOne 2007) for this to come out. In that two years, we have had plenty of hype, but no substance. Sun's chance at getting into the RIA space has been diminishing during this time. The folks that are/were most interested in this type of technology have adopted Adobe Flash, Flex, and Air, or have moved to Microsoft Silverlight.
Who is this technology designed for?
A few years ago, Sun had a product called Sun Studio Creator. It had this vision of making it easier for web developers to develop sophisticated JSF and EJB technology based sites. The idea was to make the tool easy enough for non-programmers to use these powerful technologies. It never gained critical mass. That technology was transferred over to NetBeans as Visual Web Pack in its first editions. Later this became Visual JSF in NetBeans (Project Woodstock). Sun has since abandoned the project.
Now Sun has another framework based on the same idea that we can get visual designers to work with Java developers to do the same thing again, but with a twist. Visual designers won't do ANY development, just provide their creative work to Java developers to implement.
I am an enterprise developer. I create applications for business users to use. These are primarily web based, but I also do a lot of Swing development. When I want to create an application for end users to access SAP, I don't need drop shadows, 3D animations, or transitions. I need a simple elegant interface to enter data. I have never seen a visual designer, nor do I need one. I need a technology that just works.
I shouldn't need a visual designer to create "pretty" pictures for my applications.
The majority of the companies I am familiar with are in the same boat. We don't need fancy JavaFX... we need Swing to work.
I would rather have had some folks at Sun work on JSR-295 Beans Binding and JSR-296 Swing Application Framework. These were Sun's next big things at JavaOne 2005 and JavaOne 2006.
Where do we go from here?
JavaFX is really cool. I suggest you go check out the demos if you have a Windows, or Mac based machine. Linux users will need to wait. It has not been released for Linux.
It is also quite apparent that someone in marketing who does not get it, came up with some of the current name changes: Stage and Scene. Really??? So I need to learn new names for something that should be transparent. That is a permanent mistake!
Tooling needs to be improved. In its initial release, the tools in NetBeans 6.5 are mediocre at best. I have been waiting for the technology and tools for two years. The initial tooling release is disappointing at its best, and better left undiscussed in polite company at its worst.
Swing tooling with Matisse, and Visual JSF are much more mature and better.
I will probably try some experiments with JavaFX, but it is not ready for the prime time of critical business application development and deployment.
In the December issue of eWeek magazine, Spencer Katt has an article on the last page which has a cartoon with the tag line "Adobe Releases 64-bit Version of Flash For Linux". In the cartoon, the Linux penguin asks Spencer what his favorite feature in Flash is. He replies "The skip-intro button". Let's hope that is not the fate of JavaFX.