Update: To contribute to Java — to give changes back to Sun for inclusion in Java — you must sign the Sun Contributor Agreement. It explicitly states: “You hereby assign to Sun joint ownership in all worldwide common law and statutory rights associated with the
copyrights, copyright applications and copyright registrations in Your Contribution, and to the extent allowable under
applicable local laws and copyright conventions,…”
I.e. Sun owns the modifications to the code.
Actually, it [the GPL] only limits someone’s ability to abuse the rights of previous creators who wrote the software to be distributed as they wished. So… if you didn’t write it originally, write a better mousetrap where you can dose out your source. So it’s limiting to people who want to take advantage of the goodwill of previous developers. OK. I get that.
Let me be utterly simplistic and blunt: The GPL is not a free license very much because it limits your freedom to do what you want with whatever it is that is under the GPL. Period.
The dictionary definition of free:
not under the control or in the power of another; able to act or be done as one wishes
This is not a political discussion. This is not an attempt to apply a Fluffy Bunnies Will Lead The World To Peace or a Richard Stallman Is The Bearded Reincarnation of Stalin description to the GPL, the bottom line is that the GPL prevents you from doing many things with your copy of the code (and your modifications) and, thus, is counter to the definition of “free”.
Other licenses — like the BSD and the MIT licenses, for example — do not carry any such limitations. free is defined as not in the control or in the power of another and the GPL quite explicitly expresses control and power over what you do with your modifications to GPL’d code!
Therefore and in light of the definition of the word free, GPL software is not free software. The GPL is free as in beer and not free as in ‘not in the control or in the power of another ‘.
That is all. No political agenda about it (well, beyond the bunnies/stalin sentence). While certainly flippant, none of the above is intended to express an opinion for or against the GPL. It is just fact.
It doesn’t matter if your intentions are good or evil, if you modify GPL’d code, you are quite explicitly limited from taking certain actions and, therefore, your changes are not under your control — are not free!
Now, the argument that Sun is somehow releasing Java under the GPL solely that people won’t “abuse the rights of previous creators / contributors” is laughable. At this moment in time, the only “previous contributors” were either Sun employees or otherwise had a contractual relationship via which said changes were conveyed to Sun. From a Cosmic Karmic Ownership perspective, Sun is making this announcement with a clean slate.
I strongly suspect that if ensuring fair use of previous developer’s work were the only reason for adopting the GPL it would likely be grounds for a shareholder’s lawsuit. Sun is a publicly traded company and, therefore, is ultimately obligated to their shareholders to maximize company value and profitability.
Sun is out to make a profit and “giving away” the JVM under the GPL is a perfect vehicle for doing so. Well, at the least, it is a much better vehicle than the previous one.
It preserves their intellectual mindshare while simplifying the licensing issue and guarantees that any company who still actually wants to own (as in control distribution of) intellectual property that involves modifying Sun’s source will pay Sun money for the rights to do so.
As well, applying the GPL to the JVM has advantages beyond protecting Sun’s intellectual property. As Taran and I both said, it makes it possible to ship a Blessed Sun JVM as a core part of Linux distributions. No longer will the JVM be relegated to some weird “other” category in Debian (and, I would assume, Ubuntu).
All in all, shipping the JVM and related sources under the GPL is a total strategic win for Sun. Congratulations for having the harbls to actually do so!
To put this back into the “free as in beer” terms, it is as if Sun is throwing a massive beer party. You don’t have to pay money to go, you can drink as much beer as you want while you are there, and you can take it home with you as long as you only offer it for consumption at an open party (or you drink it by yourself in a locked room).
However, if you want to take Sun’s beer home and throw a party where you charge a cover fee or have a limited guest list, you are gonna have to pay Sun for the privilege of doing so. I’m betting that Sun is going to be perfectly happy to sell you exactly such a party package.
Sun isn’t in the game of throwing beer busts just for the buzzy benefit of the industry. Sun is out to make money and Sun will be perfectly happy to be your party planner for hire.