Last week Apple released their latest product destined to change the world (the iPad). At least that's what they want us to believe. Perhaps the biggest controversy over the thing is the lack of Flash capability. However this being java.net I have to wonder out loud, where is Java capability, and more importantly why isn't as much controversy being raised over Java being missing? But I think we all can enumerate some reasons for both being missing. And it's worth it for the Java community to ponder this issue.
A couple weeks ago I attended a meeting of the Silicon Valley Web JUG (yes: Java User Group). (The Future of the Web According to Dion Almaer and Ben Galbraith) A very interesting meeting with a great overview of advances in HTML5 with an eye on the great possibilities it holds.
The interesting thing is they began the evening with a question: How many of you are interested in JavaFX? A meeting of 100+ geeks in Silicon Valley who are associated with a Java User Group, you'd think a few of them would be interested in JavaFX. One person raised their hand. I think that says a LOT.
Their presentation said a LOT about why Java and Flash both are missing from the iPad and iPod, and why we shouldn't care about that functionality gap, and indeed should feel liberated at their absence.
By being based on Open Standards the Open Web has tooling available from many organizations and a rich ecosystem of experience and adoption.
HTML vs. Flash: Can a turf war be avoided? That's an interesting article covering the current stance where Adobe is saying "HEY WAIT A MINNIT" about the lack of Flash in the iPad. e.g. "We are now on the verge of delivering Flash Player 10.1 for smartphones with all but one of the top manufacturers," Lynch said, specifically mentioning the Nexus One as one such device and adding that the software also works on tablets, Netbooks, and Net-enabled TVs. "Flash in the browser provides a competitive advantage to these devices because it will enable their customers to browse the whole Web...We are ready to enable Flash in the browser on these devices if and when Apple chooses to allow that for its users, but to date we have not had the required cooperation from Apple to make this happen." I happen to know for certain that Sun could say the very same thing about Java on iPhone/iPod/iPad.
Where is the truth between these possible states:-
- The Web only has components standardized by standards bodies
- All the tools and components are completely open source under OSI approved licenses
- There is a mix of open standardized components, semi-open proprietary components and completely closed components (todays situation)
- Every web site has its own incompatible standard (the fate we fortunately avoided several years ago)
Open Source != Open Standard. For a long time the hue and cry was for Sun to Open Source Java, and that would ensue a brave new era of wonderful harmony across the planet or some such. In practice Sun didn't quite open source Java, instead it created an Open Source project on a specific implementation of Java (OpenJDK) but "Java" (in my mind) was explicitly not open sourced. As a result while the resulting situation was much better than before the wonderful era of harmony did not ensue.
In any case an Open Standard can be delivered by closed source software so long as it obeys the standard. An Open Standard still allows wide use of the software and a huge amount of freedom in lots of practical forms of freedom. But Open Standards don't allow things like forking that Open Source explicitly allows.