To be perfectly honest, I can think of several things I’d rather do than deconstruct yet another Linux vs OpenSolaris/Solaris flamewar. Including having a few of my fingernails pulled out. But given the volume of inbound requests for comment, both public and private, I feel obligated to comment in some capacity.
That said, this discussion is largely a waste of time for both sides, so unless you’re the kind of person that slows to observe traffic accidents in some detail, this is probably one to skip. With that, the Q&A.
Q: How about we begin with the usual statements of disclosure.
A: Of course. This discussion is fraught with such considerations; from the OpenSolaris/Solaris side, Sun is a RedMonk customer and I know personally – and respect – many of the developers and marketers of the technology past and present. On the Linux side of the equation, IBM – the employer of several of those commenting – is a RedMonk customer, as are other Linux oriented businesses such as Canonical. In addition to knowing and respecting many of the employees of said firms involved with the Linux ecosystem, I also know and respect the folks from the Linux Foundation who are also have their part to play in this “debate.” So I’m getting it from both sides.
Lastly, Linux is the operating system of choice for the RedMonk production server, as well as my laptop and workstation respectively.
Q: Before we jump in, why is this all a waste of time?
A: Because it is my belief – like Savio’s – that competition is generally good, and that Linux is good in that respect for Solaris and vice versa. Making these dustups pointless, like pretty much every other flamewar.
Q: So take us back to the beginning; how did all of this start?
A: Going back to the very beginning would take forever, so I’ll restrict myself to my abridged version – which may differ, please note, from those of members of the Linux or OpenSolaris communities. Your mileage may vary, as always.
The gist of the situation, as far as I’m concerned, is this: OpenSolaris, like a great many open source projects, has internal factions that do not always agree with each other. When discussing the hiring of Ian Murdock, I characterized this as a new school / old school problem. Views of the nature of the divide may differ, of course, but even a cursory review of the OpenSolaris lists will reveal deep differences of opinion concerning the OpenSolaris project, Sun’s relationship to it, and the role of the OpenSolaris distribution called Indiana.
If you’re curious about the gory details of the latter dispute – that of the role of the project termed Indiana – I’ve got excellent news for you: I’ve written them all up here. Excellent for me, as well, because I don’t need to rehash it. Suffice it to say that the idea of anointing Project Indiana with the OpenSolaris moniker was anathema to some. To others, it was the process of naming that was distasteful more than the naming itself. And to still others – myself among them – it was merely the logical decision to make, given the lack of a quote unquote reference distribution for the project designated OpenSolaris.
Ultimately, per Sun’s wishes, Indiana became OpenSolaris and – predictably – the elements within the community that didn’t care for the name, the process, or both, were furious. Just as unsurprisingly, some members walked out the door as a result, the most notable defection probably being Roy Fielding, whose public resignation from the OpenSolaris Community has been pure fodder for internal critics and Linux advocates alike.
Q: How so?
A: Well, let’s take this out of the realm of the abstract and look at two in particular. From Michael Dolan, we have “‘I told you so’ in order? Roy Fielding resigns from OpenSolaris.” In that, Michael makes a couple of assertions. First, he argues that “Sun is not an open source community or development player.” Second, that nearly three years into the project, development is still done behind the Sun firewall, contributions require the approval of a Sun engineer, contributors have to sign a Joint Copyright Agreement, and that there are essential parts of the operating system that are not available under the CDDL license. Lastly that anyone arguing that Sun is “great, open, etc.” is “brainwashed.”
The Linux Foundation’s Amanda McPherson was no less critical, saying:
This is why the L in Lamp is Linux and Literal. Linux has the broadest and most active development community of any open source project. Linux has over 3,000 developers contributing to just the kernel in the last year, while Sun has announced 70 non-Sun engineers. (This doesn’t even account for the vibrant development communities around Linux community distributions, desktop toolkits and other upstream projects outside of the kernel.)
The Linux development community keeps getting stronger while Sun’s is seeing public defections of some of its most important members due to Sun’s control.
You getting the feeling that the Linux folks don’t have much love for Sun, Solaris or OpenSolaris? Because I am.
Q: I’m not even sure where to start, but how much of that is accurate?
A: Setting aside the question of whether or not Sun is “great” or “good” – which is a pointless question to me when it concerns publicly held companies – let’s tackle the points I believe to be true. First, most if not all of the claims made with regard to the openness of the OpenSolaris development process are true, to the best of my knowledge. Second, the number of external contributors to Linux – which is approximately all of them – dwarfs those contributing to OpenSolaris.
Q: So Sun is not an open source company?
A: To me, that question, and much of the discussion above, boils down to a philosophical question: are Linux and MySQL both open source? Or do you believe that anything short of the Linux model does not qualify? That was, in fact, the question I asked Michael in a comment. His reply was this:
I do not consider MySQL to be an open source development community which to its credit, MySQL has never claimed; unlike Sun/OpenSolaris.
While noting that the response doesn’t actually answer the question, it does point to the fundamental disconnect between our two viewpoints: I’m judging open source by the availability and licensing of the code, while Michael, Amanda and other critics seem to prefer a community based metric. As should be expected, since it favors their platform of choice.
For my part, I believe that MySQL is in fact an open source company and an open source project, in spite of the fact that the development of the codebase is not open but rather done entirely (or nearly so) by MySQL employees. So, assuming that Amanda is correct and that there are 70 external OpenSolaris engineers versus Linux’s 3K, that still leaves OpenSolaris as “more open” than MySQL. Whatever that means.
Logically, then, if MySQL is open, and OpenSolaris more open still, I’m fundamentally unable to conclude that Sun is not an open source firm. But then again, maybe I’m just brainwashed.
For what it’s worth, however, Roy’s own resignation acknowledges that this model is in fact open source:
Sun should move on, dissolve the charter that it currently ignores, and adopt the governing style of MySQL. That company doesn’t pretend to let their community participate in decisions, and yet they still manage to satisfy most of their users. Let everyone else go back to writing code/documentation for hire.
There’s nothing particularly wrong with that choice — it is a perfectly valid open source model for corporations that don’t need active community participation. IMO, the resulting code tends to suck a lot more than community-driven projects, but it is still open source.
His problem, then, isn’t fundamentally with the model – as is the case with Amanda, Michael, and others – but rather the fact that he feels he was mislead as to the end goal of OpenSolaris.
Which is obviously his right.
Q: But is he right?
A: Without knowing who promised what to him and when, I can’t say one way or another, but I don’t doubt that Sun’s stance vis a vis the OpenSolaris asset has changed. Substantially.
But that does not surprise me, particularly.
Q: But how is that different than Linux?
A: Frankly, I think the comparisons to Linux are misplaced outside of a technical context. The projects are governed by different licenses, developed under different models, and are at significantly different points in their respective lifecycles. Comparing an 18 year old project developed by a consortium to a 3 year old project maintained principally by a single organization is the definition of apples to oranges, in my book. So too does Apache have more contributors than nginx; I’m not sure this tells us much besides the fact that one is younger than the other.
Q: Is it me, or do these issues boil down to control?
A: It’s not you. Ultimately, the critics – within the project and without – point to the above as mere symptoms of an inability to relinquish control.
Q: Is there truth to that assertion?
A: Sure. Sun has been accused on multiple occasions in the past of refusing to let go. See, for example, the dispute with Apache on the field of use restrictions, the long running but recently resolved divide between IBM and Sun concerning OpenOffice.org, and so on. None of those situations, nor the current Solaris flareup, were particularly straightforward, but I’m on record – with the Apache situation in particular – as disagreeing with that reluctance. But neither would I contend, as some have, that the issue is simple and that the answer is always open development. Particularly when we’re talking about a core asset of a commercial organization, as opposed to that of a Finnish graduate student.
Q: To return to it, what about the naming issue? Isn’t that proof that Sun has acted in bad faith?
A: Well, my flip answer would be to simply point you over to Mark Pilgrim’s comment over on Tim Bray’s piece, which reminds us – as only Mark can – that naming disputes are more or less par for the course in the open source world.
But to answer the question more seriously, do I understand why people are upset? Of course. But do I think it’s ridiculous that Sun should want to assert its rights with respect to such an important brand? No. And more to the point, I think there have been individuals within the community on both sides of the Sun/anti-Sun divide that have been terribly nonconstructive in their conduct. I’ve lost track of how many calls on list there have been for perspective, understanding and peace.
In that respect, it’s just like virtually every Linux distribution I know.
Q: Speaking of Linux, why does that community seem so concerned with the doings of OpenSolaris?
A: Well, the two operating systems are competitive in a variety of contexts, and there is substantial bad blood on both sides of the divide. All’s fair in love and war, as they say, and for some years it’s been war between the two technologies.
What I do find interesting, however, is that Linux advocates will simultaneously tell me that OpenSolaris and Solaris are dead technologies, representing no further threat, going nowhere. And yet they’ll expend the kind of energy attacking that I doubt would come into play if the dispute were within BSD or Minix.
Doth the lady protest too much? Mayhap.
Q: So where does Sun go from here?
A: If the question is where they will go, my answer is that I’m not sure. Sun has asserted certain rights, and debates are currently raging as to what that means for the community at large.
Many of the Solaris and OpenSolaris engineers remain passionately in favor of truly open development, but candidly, Michael is right to point out that the lack of greater progress nearly three years into the project can only indicate a lack of a commitment to that end.
It may well be that Roy is right, and that Sun should move OpenSolaris towards a MySQL model of development, a scenario that many find abhorrent but that personally I’d be fine with. It’s also possible that with this issue behind the community, and some of the diametrically opposed philosophies departed, the community will be less prone to internal strife and make better progress.
Either way, the community will have its say, but so will Sun. And I don’t have an issue with that, as long as it makes a decision and sets expectations appropriately.