This may sound like a contradictory statement considering the fact that the mainstream (and Microsoft-funded news is painting Microsoft in a new light now that Microsoft has released three drivers totalling 20,000 lines of code under the GPL version 2 for inclusion into Linux in order to make Linux work better on a Microsoft Hyper-V virtualization environment for the purposes of accommodating their Novell Agreement.
To quote Mary Jo Foley from ZDNet:
“The pigs are still in the air. Microsoft really did release not one, but two, pieces of code under the formerly Microsoft-hated GNU General Public License (GPL) this week.” – source
Make no mistake about it, Microsoft still hates the GPL, Steve Ballmer still would tell you that it is cancer, and the fact is that Microsoft released the code solely due to the fact that to link into the kernel, you have to use the GPL or a compatible license.
This is a prime example of the GPL doing what it was intended to, which is to prevent persons or companies from hording their own kernel code to make their version of the software operate better/faster/more efficiently/with more features than anything the competition has. It has also prevented an all-out UNIX-wars style schism that the BSD license encourages.
Apple can run off with FreeBSD and make an entire mutually incompatible operating system out of it (OS X), and decide what, if anything, they contribute back to the project they forked. This is not so easily done with software under the GPL.
Both licenses are good, both have appropriate uses, and both have an equal number of reasons you shouldn’t use one or the other.
Xiph.org makes FLAC, Vorbis, and Speex available under a BSD style license and I’ve never heard anyone complain. If someone made an encoder that violated the bitstream format, it would no longer be FLAC, Vorbis, or Speex anyway, and the BSD license gives encouragement to companies to use these audio standards without the hesitation and political red tape of the GPL. It may even surprise some that Microsoft Game Studios has made their own Ogg Vorbis decoder to embed in such hit titles as Fable and Halo: Combat Evolved.
The problem with licensing an entire OS under as BSD-style license is that it encourages/has encouraged/would encourage companies likeĀ Apple (OS X), Microsoft (TCP/IP stack in earlier versions of Windows NT), and Novell to just peck away and/or carry off your entire project and finish it off with nearly 90% of their work completed and the original project seeing none of the returns flow back into it.
So Linux users can thank the GPL for not allowing Novell-Microsoft pact to turn into the MicroNovellix distro *now with 10% more proprietary fork goodness*. :)
Microsoft may learn the value of pragmatism, but their compliance with the GPL license with regards to Linux is much like forcing oneself to go to the dentist to have a cavity filled, or the State of Alabama or Texas being compelled not to violate human rights by court order. Necessity and desire are two totally different things.
The necessity of obeying a court order can’t force stupid hicks to cease being stupid hicks, the desire to wish your tooth didn’t ache won’t make it so, and the GPL can’t force Microsoft to stop being a proprietary software-foisting patent troll. Take the code contribution for what it is.
GPL 1 / MicroNovellix 0