Tim Bray has an interesting point.
The Java Virtual Machine has a huge installed base. Has the JVM actually won this battle? Or, how does it fight against Microsoft's Common Language Runtime; Parrot, the free common VM coming out of the Perl / Python community, which should also support Ruby etc.; and the one that Bray misses : the Flash player)
Having spent some time looking at what GUI library to use for my current Python project and seeing things haven't developed very much in the last five years in terms of standards and resources, I think the JVM / Java platform is in a strong position. Swing isn't wonderful but, as Bray notes, neither is the competition.
Two things that would be interesting :
- a XUL or XUML on top of the Java platform.
- open sourcing the JVM. Strategically this must be worthwhile for Sun now. It's not like Microsoft, who are commited to the CLR are likely to try to embrace and extend the JVM.
What about the web-as-platform and AJAX? Some interesting stuff is happening here too.
With the inclusion of Canvas and SVG in the new Firefox (and Gecko), this becomes an interesting component to build graphical applications.
So we could see Gecko as a common between both web based applications and for stand-alone desktop applications. Although maybe the distinction will much dissolve.
Maybe there's a whole potential zoo of cool available in a Python-Parrot-Gecko hybrid as a rival to Java-JVM-Swing.