Will Sun's 1600 patents suck the life out of Linux?
Summary: Now that people in blogosphere and open-source circles have had two days to let Sun's OpenSolaris announcement sink in, the commentary is starting to show up. But before touching on that, first a quick review of what happened.
Under the name OpenSolaris, Sun officially announced an open source version of the Solaris operating system that's largely based on Solaris 10. Several intellectual property barriers remain to open-sourcing all of Solaris 10. As those hurdles are cleared, Sun intends to move more of Solaris 10's componentry into OpenSolaris' codebase. To qualify as open source, software must have an Open Source Initiative-approved license attached to it and, in OpenSolaris' case, that license is the Sun-authored and very recently OSI-approved Common Development and Distribution License (CDDL). During the announcement, both Sun chairman and CEO Scott McNealy and the company's executive vice president of software John "Johnny-L" Loiacano characterized the CDDL as a license that allays open source licensing confusion by removing ambiguities and "cleaning up" the licensing language. In the end, McNealy concluded, "We're committed to one word and that's sharing. "
But in addition to having introduced perhaps even more ambiguity into an already ambiguous environment (more on that in my analysis of the transcribed text below), will Sun's announcement further compartmentalize an already compartmentalized open source community? Read on.
>
Perhaps the most interesting among the list of commentators is IBM's vice president of standards, Bob Sutor, who in his blog entry, commended Sun for embracing the spirit of open source, but then added "As far as I understand it, Sun is not pledging these patents for use in any open source project as [IBM] did."
In terms of what IBM did, Sutor is referring to the 500 patents that IBM released for unencumbered use by any developer working on open source software that has any OSI-approved license attached to it (as opposed to a specific open source license such as the GNU General Public License). And Sutor's conclusion, which originally sent this hound on the hunt, is true.
What Sutor is referring to is that, apart from certain academic open source licenses such as the BSD and MIT licenses, most open source licenses, including both the GPL and CDDL, have reciprocal provisions in them that require derivative open source software to bear the same license as the code from which it was derived. What this means is that if code from the CDDL-licensed OpenSolaris were intermingled with code from the GPL-licensed Linux, then the resulting derivative work would technically be required to inherit the licenses from both, which is impossible because certain provisions in each license cancel out the other. (In other words, they're totally incompatible with each other.)
In fact, the entire open source community is compartmentalized along these licensing lines. For example, code from the Eclipse Project (started by IBM) cannot be intermingled with code from Mozilla because each of the those projects operates under their own, incompatible-with-the-other open source license. The net-net is that when a large company--be it IBM, Sun, or anyone else--donates code (as IBM has with Eclipse, and Sun has with OpenSolaris) to the open source community, the writing (and approval by the OSI) of a one-off license like the Eclipse Public License or the CDDL gives those companies a way to donate their code to the open source community (which in turn can enhance it to the benefactor's advantage) without that code leaking into a competitor's product (with a non-reciprocating license) in such a way that it can be used against the benefactor.
Nothing prevents IBM from building a product using CDDL-licensed code. But then, that product, which is technically a derivative of the CDDL-licensed code, must also be available under the CDDL, which then means all of IBM's contributions to it become available to anything else Sun is building under the CDDL (like OpenSolaris). So, to McNealy's point that Sun is committed to one word and that one word is "sharing," yes, Sun is sharing its code. But like a lot of other shared, open source code, that code has a firewall around it. CDDL or unlicensed code that's ready to take on the CDDL license can get it in, but nothing gets out. In other words, it's not universal sharing.
From the legal corner of the blogosphere, SCO whipmaster and master-miner of legalese Pamela Jones at Groklaw wrote:
...they are freeing up 1,600 patents, but not for Linux, not for the GPL world. I'm a GPL girl myself. So it's hard for me to write about this story on its own terms. I am also hindered by the fact that I've yet to meet a Sun employee I didn't like personally. But, despite being pulled confusingly in both those directions at once, in the end, I have to be truthful. And the truth is Sun is now competing with Linux. That's not the same as trying to kill it, but it's not altogether friendly either. Yet, at the teleconference, Sun said they want to be a better friend to the community. I feel a bit like a mom whose toddler has written "I LUV MOMMY" on the wall with crayons. Now what do I say?"
Answer? Just tell it like it is PJ. Just remember all is not as it seems.
Then, from across the pond comes a newsletter from the folks at Gentoo, which basically applauds Sun for the move and talks about how Gentoo is embracing OpenSolaris under the Portaris version of its Portage project. Portage, according to an e-mail I received from Gentoo senior manager Pieter Van den Abeele, is a metadata-driven package manager. One thing you can most definitely do with Gentoo is describe a final operating system installation in terms of what it can do (I'll take a router, a firewall, an Apache Web server, and a browser please) and then stamp out a version of Red Hat that does that. If you don't like the final work of art, using the same metadata, you can now stamp out a version of OpenSolaris that does the same thing. But, in addition to that, as best as I can tell from Van den Abeele's e-mail (please correct me if I'm wrong), you can pick and choose best-of-breed parts from any source code (regardless of the license that goes with those parts) and stamp out your own sort of Frankenstein. Said Van den Abeele:
Gentoo declares GPL licensed metadata about various applications and platforms in one big machine-readable, GPL-licensed knowledge base. Our users declare their feature requirements and preferences to our Package Manager "portage," which in turn using the knowledge base suggests a plan to build or enhance an operating system that will satisfy the user.
If my interpretation of what he's saying is right, then I'm declaring Gentoo the Napster of Open Source. To the extent that you can create a final package that mixes, matches, and violates every open source license known to man, Gentoo appears to be just the facilitator. This is reminiscent of how JBOSS couldn't distribute a soup-to-nuts Java-based application server, but it could tell you how to take what it built and merge with something else from Sun (a Java Runtime Environment) to come up with a free app server. Just don't forget that this sort of Frankenstein merger of code is exactly what SCO sued Autozone for.
And finally, the moment you've all been waiting for, a transcription of what was said, and my Between the Lines analysis.
McNealy: We have absolutely done something nobody else in the open source community has done and that is add intellectual property patent indemnification to it. Sun is assigning 1,600
Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.
Talkback
I'll correct you about Gentoo...
-Bryan
Need to learn more about Gentoo
FUD and common misperceptions ...
The author makes referrence to SCO. SCOs original litigation was aimed at users who had loaded on their computers certain SCO proprietary Unix libraries which were neither open source NOR freely distributed. Most of these were also SCO Unix users who simply copied over SCO libraries to their Linux systems. They were all institutional rather than home users. SCOs case against them was rock solid. This case bears absolutely no resemblence to the Open Solaris / Linux issues.
SCO later moved from that allegation to the IBM contract issue, a completely different ball of wax. Their claim was/is that IBM misappropriated non-open and non-free Unix IP into Linux. SCO's case against IBM is extremely shaky because of all of the water under the bridge as Unix made its way from Bell Labs to new SCO. But again, this situation bears no resemblence the Open Solaris case.
Still later SCO went on to make copyright claims against the basic Linux codebase. They have waxed hot and cold on these claims and at this point have all but given up on pursuing them. These claims are in fact 99% FUD intended to scare people from Linux to Unixware AND make sure that Unixware customers don't jump ship for Linux.
Likewise, claims that Sun is going to somehow 'damage' Linux with Open Solaris are largely FUD intended to direct potential customers to Sun's product instead of Linux. The reality is, Sun will probably do well with Open Solaris. Those who buy in will likely be institutional users who are looking for Sun's warm and fuzzy total indemnification. In short, they are customers who would likely never choose Linux in the first place do to its perceived IP issues.
I welcome Open Solaris, but at the same time read Sun's claims regarding Open Solaris and Linux with a certain degree of skepticism. One must remember that when Sun speaks, there is marketing going on, not just disemination of information. And these days, sowing FUD (fear, uncertainty, and doubt) about competitors and potential competitors seems to be a staple ingrediant of marketing.
1600 times zero?
* OpenSolaris
I'm looking for another item on the list but not finding it. Well, OpenSolaris is still pretty neat. Let's download a copy and compile it.
Oops! Won't compile. It seems that OpenSolaris depends on a Sun-internal compiler. That should be solvable ....
[i]Several months of hacking later[/i]
Hmmm -- parts compile but it doesn't link. Oh -- I see. Sun hasn't released everything yet. Well, that should be managable. I'll just splice in some stuff from Linux --- oh, never mind.
Still, I have those 1600 patents. Sort of.
Proprietary Open Source
but still does not solve the unconstitution issue of patents as implemented.
Portage is not a melting pot
That's what Portage does, but it certainly does not create new products by cannibalizing code and reusing its content, that's not in the design. Consequently, it cannot "mix and match" sniplets of code and concoct something that "violates" the original licenses along the way!
Take even a very simple build, e.g. Vim, the text editor. First of all, you'll need an environment to compile it in, Linux utilities and tools, a shell to run in, the gcc compiler, and glibc and bind and perl and whatnot - mostly GPL'ed, but there are exceptions even at that basic level. Then you've got lots of dependencies that need to be in place for it to do everything it does, some BSD, some plain or Artistic GPL, but also things like Java with a non-OSI license. And finally there's Vim, which comes with its own peculiar charityware license. An `emerge --emptytree vim` (which is Portage's command for recompiling the entire environment necessary to run the editor) will try to rebuild up to 50 packages - preserving all their individual licenses, nothing is mixed and matched and violated doing that...
You'll have to agree that people can put the Vim, an Acrobat reader and Oracle on the same system, even though their respective licenses hardly have anything in common, be they OSI-approved open-source or commercial licenses. Suppose you had access to the code of a Microsoft product and an open-source package that you want to install on the same Windows host - do you violate Microsoft's end-user license agreement by installing a GPL application on the same host? Of course not. Does the viral nature of the GPL application influence the scope or nature of Microsoft's EULA? Nice try. They're installed alongside each other, that's where their relationship ends.
If anything, Portage is a spinster, not a napster... It pulls in all the necessary threads and spins a complete server or desktop or special appliance configuration, and it's doing that in Linux systems - not only Gentoo Linux, mind you, nothing prevents people from running Portage in Mandrake, Debian or other flavours of Linux. The non-Linux instances of Portage are lesser known, but extremely popular with those who do, like the "Gentoo for Mac OS X" project which allows to build runtime versions of applications from the source code and install them on a Macintosh. The same is or will be true for OpenSolaris and other Unix or Unix-like operating systems. Portage versions for those environments are already functional (OpenSolaris) or under development (BSD), or at least theoretically feasible. No harm will be done to any of those in the process.
I agree that the official Portage tree doesn't violate licences
There are many non-official ebuild sites out there that let individuals post their home-built ebuilds (I've even made my own crude home-built ebuild for the OOo 2.0 beta, but I submitted it to Gentoo's Bugzilla instead). It'd be impossible to make sure all of those do not violate all licences involved. I could easily see how it could be possible to create an elaborate ebuild which downloads Linux source code, plus patches containing Sun code, and combining the two.
The fact of the matter is that you have to trust the source of the code you download to make sure you don't violate licences. Gentoo makes sure its ebuilds on the official tree keep licences intact before it releases it. But unofficial sites may not.
Correction to my first sentence
So why not just cut to the chase?
Finally developers can earn something
Libre, not Gratis
Well, let's see:
OSRM pays Linus and Andrew Morton around $200K/yr.
Red Hat pays Alan Cox enough that he can take a couple of years out for his MBA.
Intel and IBM pay several hundred programmers enough that they don't leave.
etc. etc.
Have a look through the copyright notices in the Linux kernel. You won't find many lately that aren't corporate internal addresses. Which leads me to ask,
[i]Which Linux developers are you talking about, that "work for free?"[/i]
Good to hear.
But I probably won't say it in consideration of all the Unix people affected. The goal is still to replace them.
A moment to speculate unrealistically:
So, Linux is a scheme by large corporations to evade anti-trust rules against collusion which will lead to large fines and perhaps jail time for some of the perpetrators.
Well, Sam Palmisano will probably escape jail by accepting a plea bargain in which he agrees to testify against Linus at the criminal trial.
Things never quite come out perfectly, but, that wouldn't be so bad.
[Yes, it's Friday.]
I am beginning to see Linux as a promising idea.
Collaboration vs. Collusion
"Collusion" is not the same as "collaboration." You might want to look up the definitions to see the difference.
For other examples of the latter, consider the IEEE and JEDEC: bodies where representatives of various companies (often competitors) meet to work out standards which allow them to interoperate.
The one I know best (for the last several year, rather intimately) is JEDEC and its memory standards committee (JC-42). On JC-42 you find IBM and Sun, Intel and AMD, Samsung and Micron, all working to set standards for memories that can be produced and used by anyone.
Now I suppose that you [u]could[/u] argue that this is bad for consumers, but since the alternative would be having to choose between Samsung memory, which works with Apple and Intel machines built by Dell but not HP vs. Micron memory which works with AMD machines built by Hancom and Intel machines from HP vs .....
Another very good reason
If it sounds too good to be true, it probably is.
Stolen?
Or do you mean like the STAC code was stolen by Microsoft for the "Double-Space" feature of Windows?
The records show that STAC won their suit.
The pejorative "pimplefaced kids" doesn't fit either.
( ( ( ( ( ( ( ( ( ( ( Fruit Cake) ) ) ) ) ) ) ) ) ) )
Too late for sun
Will Sun's 1600 patents suck the life out of Linux?
Cheers!
Portage Is a Package Manager
Portage is awesome in the sense that it gives you the ability to download, compile, and install an open source package onto your system with one simple command (e.g., emerge mozilla-firefox). Portage manages all the dependencies for you and ensures that everything it needs is downloaded (as long as the particular software package allows you to do so).
I'd strongly encourage any LINUX user who hasn't already to give the Gentoo distribution a shot. If you're not comfortable with that, then at least check out the thread at the following URL which talks about how you go about getting portage to work on other distributions:
http://forums.gentoo.org/viewtopic.php?t=28559&highlight=portage+nongentoo+platforms
Derek
__________________________________________________
Do you Gentoo?
I agree....
You can build a "clean" system. How many of us have downloaded and installed a linux distro to find that it comes with three of every piece of utility software (for your convenience, so you can see what you like best). I hate this.
Gentoo lets you specifically build your system, an operating system configured for your hardware and your needs, and ONLY the apps you want. It's cool.