Today was the official start of JavaOne 2007, and of course there was a keynote. The VP of Software for Sun, Rich Green sauntered on to the stage with music pumping out from a DJ and with massive video screens showing lots of shiny, happy Java people. Dressed in black jeans, a tight black t-shirt and receding grey hair I think he might have ‘Steve Jobs Envy’. If he had only worn the skivvy (or turtleneck as they call it over here), he might just have pulled it off…
On to the real stuff – what was announced?
Well, he made a fairly big deal about Java becoming fully Open Source. As of today, the JDK itself is open source, the final step in moving Java to a GPLv2 licence. He made the point that the choice of the GPL licence meant that Java can now be bundled in GPL distributions like linux with no issues, and that the next version of Ubuntu will now come with Java as part of the core distribution.
A couple of other ‘smaller’ announcements were that Java Real-Time is now here and that there will be a focus on making the JVM ‘faster, faster, faster’. The former means you can be more confident that your program will respond in a guaranteed time and not be interrupted by garbage collection. The latter means both smaller downloads and faster execution time, so that is welcome news.
Next came the breathless announcement of a new scripting language – JavaFX Script. This is part of their push towards better end consumer functionality. In short, it is aimed at creating rich user experiences in a browser more easily. Think Flex from Adobe. The hope of Sun is that this will expand Java coding out from developers into the graphic designer arena and try to keep solutions pure Java. Apparently there are tools coming, but in the absence of them it is way too hard to see if this is a credible threat.
Following on, an even more excited Green announced JavaFX Mobile. I have to get my head around this, but basically it seems like a JavaOS for mobile devices. They are going to be making it available to phone companies in an OEM sense for them to create a new set of phones with richer client functionality (see JavaFX Script above). They tried to pump it up as an iPhone killer without ever mentioning ‘that phone’, but the real test is going to be whether any of the major manufacturers actually start shipping phones with it. The demo they showed looked a whole lot like the iPhone demo (think colourful buttons, swooping icons, etc), so that is fairly cool. And of course it continues to allow midlets to run on phones, but with a little better integration into the phone that what you see currently.
Interestingly, there wasn’t any announcement that impacted on the majority of people in the room – in the main hard core developers. Unless you work for Ericsson or Nokia, you are unlikely to need to do anything with JavaFX Mobile. Few people are likely to need Real Time. Some might be interested in JavaFX Script, but it isn’t really new, just an alternative to other solutions already in the market.
So, talking a big game about taking Java to ‘the rest of humanity’ via mobile devices (please let’s ignore that the 3rd world is unlikely to be adopting smart mobile devices in large numbers in the short term…) but where does that leave the rest of us? What about web development? What about Swing? I agree that trying to make the Java platform the ubiquitous platform for all development is a good goal, but I for one wasn’t left breathless.