So that being said, this morning Oracle made its intentions to swallow Sun Microsystems whole, as it was a giant constrictor snake that was going to squeeze it, its customers and its competitors and anyone who participated in Sun's ecosystem -- and in particular, anyone who lived within the sphere of influence of Java, OpenOffice, MySQL
, Solaris, and anything else of Sun's that was Open Source.
Various predictions have been made about how the merged Oracle and Sun will act against its competitors and what it will do with its Open Source properties and how alliances will be forged and broken. I'm not going to make any prognostications about who stands to lose what or what defensive actions are going to be taken by these supposedly spurned companies, because it's way too early for armchair quarterbacking. Quite frankly, recent events strike me as so weird and Kafka-esque that what corporations do these days in what they believe to be in their own and their customers' best interests make very little sense to me anymore, so I'm not going to try to understand them. At least, not today.
However, while Sun is indeed going to be swallowed whole by Oracle, assuming it is able to complete the transaction -- it can also be said that just because Oracle can throw $7 billion in dollars and change (the extra change presumably needed as billowing material for the golden parachutes for those-who-will-not-be-named) doesn't mean it will have any real and lasting impact on the Open Source Community -- which seems to be the subject of greatest concern.
The Open Source Community's strength has always been in its numbers and the will of developers contributing to projects to drive project initiatives in the direction they desire simply by voting with their time and willingness to contribute. If a project no longer meets their requirements, be it from a licensing or political perspective, they simply cease working on it and go onto other things that interest them instead.
That is the beauty of of Open Source, in that it is pure Social Darwinism and Software Phylogenetics at work. Even if you have a bunch of large natural predators, such as Constrictus Siliconvallis, it's not possible for them to swallow entire communities, even if they buy the companies that run the projects themselves. And like evolutionary trees, if projects are to be compared to Phyla, they do indeed branch off. Sometimes because developers get pissed off, like in the case of XFree86 forking into X.org, Debian forking into Ubuntu, or OpenOffice.org forking into Go-OO.org. These are but a few well-known examples, and there are countless others. Heck, every version of BSD is a fork of the original, because each set of developers had different design goals in mind.
So let's get down to the projects that people are worried about. Certainly, Java, which was released by Sun under GPL2 in 2007 is one of concern because the Java Specification Requests which formalize the standardization of the language in order to be certified as "Kosher" Java is controlled by Sun under the Java Community Process (JCP) which is presumably going to be run by Oracle shortly. What this means is if you want to build a Java Virtual Machine that is certified as actual Java in the future, or propose new additions to Java, you'll have to play the same game with Oracle that you've been playing with Sun all this time. If Oracle is actually smart, they'll make it easier for companies to participate in this process. Then nobody will complain about the swallowing.
Many people use the official Sun JVM, but some companies have licensed "Kosher" Java as defined under the JCP and JSRs and built their own. IBM, for example, has its J9, which it uses with its Websphere Application Server (WAS). Unisys has also built its own version for large SMP systems, although it has not been updated in some time. It should also be noted that a fully Open Source, Free GPL2 JVM has been released as OpenJDK and IcedTea and only has a very small amount of legal "encumberances" left in it before it can be considered a completely self-hosting environment and free of any dependent pieces that are in binary-only form.
The question of course remains is if Oracle will continue in Sun's tradition with the OpenJDK, permit it to be fully recognized as an implementation of "Kosher" Java and if it will allow the JCP to continue as normally or even in a more open and collaborative manner, as some of it's critics would hope. Indeed, If it throttles back and Oracle follows its usual constrictus siliconvallis instincts, that doesn't mean it's the end the world. It means that like many projects before it, IcedTea and OpenJDK will inevitably fork, and some other organization will issue its own JCP and JSR replacement.
Java has already had several "Nonkosher" implementations, some of which have been fairly successful in their own right for limited applications. One of which is Google's Dalvik, which is is a Java syntax-compatible virtual machine similar to J2ME but is incompatible enough with Java -- as it uses a totally different bytecode format -- that it cannot be fully declared by the JCP or Sun as Java.
Dalvik, which is Apache licensed, is currently only used on Android devices, but I see no reason why Dalvik Enterprise Edition could not be built by an aspiring community on existing J2EE specifications that did essentially the same thing for enterprise server systems. Sun's officials have already complained that Google's App Engine lacks certain features for complete Java compatibility, so if Oracle decides to get aggressive and open it's maw a little too wide, I could certainly see a DEE or "D" language in the offing. Good Bye Java and the JCP, Hello Dalvik and DCP. IBM and Apache has already created its own Apache-licensed J2SE class library with Harmony. Now all that's missing is an Apache-licensed Pseudo-Java virtual machine to go with it.
And MySQL? Well, MySQL has already forked, by MySQL's creator, Monty Widenius, in the form of MariaDB. I don't see why if reptillus larryellisonus decides to kill off MySQL for the purposes of furthering Oracle's own RDBMS that MariaDB cannot take its place practically overnight, just as X.org did for XFree86 in every Linux distribution in existence.
Indeed, Oracle owns InnoDB, a powerful and commonly used enterprise storage engine for MySQL that MariaDB doesn't have, which sets it at something of a disadvantage up front, but there's no reason that some interested party -- a rather large carnivorous snake hunter -- of which I can name six or seven off the top of my head -- wouldn't want to contribute time, dollars and effort into building one to compete with it.
Will Oracle be the snake that snaps the neck of Open Source? Or is the community too strong and adaptive even for this fearsome predator? Talk Back and Let Me Know.