Linux is just a platform and without an application stack, it loses interest very quickly. For it to be relevant, enterprise applications should be available on the OS and they should really be open source to be relevant.
One of the biggest movements of yesteryears - Java - is not yet available in the open source arena. It is one of the few closed down languages, which is funny because Scott McNealy actually used to point out that Microsoft could control the language you speak in the world. Bill Gates got one up on him by pushing C# into ECMA, while Scott simply played around with ECMA until the last day when Sun's lawyers showed up with copyright documents, after Java had gained world wide acceptance.
The last serious effort to develop a JVM - blackdown
- was stifled once Sun bought the company (or had some sort of commercial arrangement with them, I don't remember which). You are, since then, dependent on either Sun's own low performing JDK, BEA's JRockit, or IBM's here-today-gone-tomorrow JDK. Sun has no real commitment to Linux, BEA has an app-server which is the primary focus of the JVM, and that leaves IBM to help out with Linux. They have a few open alternatives like their Kaffe JVM.
But the JVM is only part of the story. You need the APIs to make it all work, and today, even BEA uses Sun's JDK along with its JVM. GNU has an effort called classpath
, but it is hindered by the fact that the APIs are not complete. There are open source JVMs like the SableVM
around, but they are weak - Sable for example is just an interpreter.
There has been wide speculation whether Sun would free up Java. Scott & Co haven't yet figured out how to make money off the language, and it is a money sink for them. Jonathan Schwartz tends to tantalize the world by suggesting that JES is next to follow that crafty CDDL lincense now that solaris10 has been offered under it. While all this is going on, there are very strong rumors that IBM will be releasing an open source JDK soon. That could have the electric effect of jumpstarting Java, especially if Apache or a similar organization creates a parallel entity to JCP to update APIs and modules, and helps grow the ecosystem. Someone might as well create a variant of C++ that you can use to convert back and forth from Java, (maybe Bill Gates should donate the code that converts to C++ to the open source community and win accolades like IBM and Sun are doing through their patent donations).
This is a very necessary milestone in the future of Java. Sun has kept the JDKs free because they would lose support from other vendors as soon as they charge for it. But there is the possibility of them asking for royalties sometime in the future, especially if it becomes technically bankrupt like SCO. Given the last scare Linux had, it would be difficult for enterprises to justify using Java because it can come back to haunt them, especially if their mission critical software runs Java.
I am looking forward to IBM's open source JDK and want to see the reaction of Sun's lawyers (sometimes I think their law team is stronger than their hardware team!!). That would tell us a lot as to whether an open source stack is feasible!