Exploring IBM v Sun, Linux v OpenSolaris

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

While my reasons might differ from Red Hat‘s, some of you may have noticed that I elected not to attend LinuxWorld a few weeks back. Between my attendance at other conferences and some much needed downtime, I simply could not work an appearance into the schedule – particularly with me summering in Maine. I’m somewhat disappointed to not have made it, not solely because there were some interesting product announcements made, but also because it would have afforded me a front row seat for the ensuing fireworks.

Just in case some of you don’t track operating systems and vendor sparring quite as closely as we do here at RedMonk, the short version is that IBM had some rather uncomplimentary things to say about the OpenSolaris effort. Even for an IBM/Sun relationship that is decidedly frosty at times, the comments were a bit more pointed and direct than I would have anticipated. What I did anticipate was the response from both Sun and its community.

But for a more detailed look at the remarks, the context, the implications, and some of the various reactions, let’s do a Q&A.

Q: Getting them out of the way, let’s do the disclosures.
A: Both IBM and Sun are RedMonk customers. In terms of consulting, we’ve worked on subjects relating to both operating systems in the past. In terms of usage, RedMonk is a Linux shop at the present time, using Ubuntu for our production server, and Gentoo on our backup server. The server, interestingly, was donated by Sun. Implementations of Solaris, or rather a Solaris distribution Nexenta, are planned but not as a replacement for our current production box. I think that about covers it.

Q: Ok, so before we get to your take, what have you seen in the way of reactions? How were the messages received?
A: Well, privately, I’ve had a number of discussions on this subject, and they run pretty much the range from “IBM doesn’t get it” to “IBM’s right.” As is so often the case, the opinion is largely predictable depending on which community a person aligns themself with. Except when it doesn’t.

Q: What do you mean?
A: Just what you might expect. For example, the Sun folks – unsurprisingly, as Shankland puts it – were decidedly unhappy with Dan Frye’s remarks in particular. See Jim Grisanzio, Patrick Finch, or – if you’re willing to stomach some very Bile-blog like and probably not-safe-for-work commentary – OpenSolaris community member Ben Rockwood. But the commentary, interestingly, did not break down solely along partisan lines. Sun’s Glynn Foster, for example, took the high road and tried to get at the substance of Frye’s commentary in a very rational, well considered post. On the other hand, the founder of Gentoo Linux, Daniel Robbins, was not impressed by IBM’s commentary on the subject of OpenSolaris. So the fallout is tough to characterize in simple, general terms.

Q: All those remarks aside, where do you stand on the issue as an analyst?
A: Simply put, and as I’ve related to IBM, I think they were ill considered and not at all helpful. Nor would I agree with the general assertions that OpenSolaris either isn’t “open,” has no community, has no traction and so on. And I sure as hell don’t think it’s a “game.” As I’ve discussed before, I was a confirmed skeptic of the investments that Sun made in Solaris – and told them so fairly openly. Since then, the facts have changed, and so has my viewpoint.

All of that said, however, do I think the criticisms of OpenSolaris are entirely without substance? No, I don’t. OpenSolaris is not perfect; it’s improving, but there’s work yet to be done.

Q: Let’s begin with the first half of that statement: you’ve covered the Solaris technology before, but what about OpenSolaris specifically? What is your evaluation of the state of the OpenSolaris project today?
A: Herein lies at least part of the problem: there simply is no easy way to judge the success of an open source software project in absolute terms. When you’re comparing proprietary software, success can be measured – in most cases – in dollars. How many units were you able to sell, at what margin, for what profit? Note that this does not in any way measure the technology – there are many poorly designed products that made and continue to make good money – but it does provide a yardstick for gauging success in commercial terms. The only terms, of course, that Wall Street and investors understand.

Open source, as has been well documented, renders that assumption almost irrelevant. I say almost, because it’s worth noting that the dollars and cents do still matter, which is why Red Hat is such an important company in the industry. But so is MySQL, and I don’t believe (they’re private) they’ve approached the sorts of revenue numbers that Red Hat has. And so was Sleepycat (since acquired by Oracle) – and they were never near Red Hat type money to the best of my knowledge.

Clearly dollars and cents are one measure. According to what I’m told, VC’s are now factoring downloads into their due diligence, which seems reasonable until you consider that it’s more or less impossible to measure downloads accurately (none of the open source software RedMonk is using has been counted in any download numbers). But let’s accept downloads as another measure. Some, IBM apparently included, would point to the number of outside contributors to a particular codebase. Which again, seems fairly logical, until you consider the example of dual license firms like MySQL, which typically do not accept outside contributions or putbacks to their code. How about percentage of code that’s open source? That’s important, no doubt, but SugarCRM seems to still be the darling of the open source applications space and they are not 100% open source. What about the number community participants? Forum participation? Number of conferences?

And so on, you’re all smart people, you get the point. Success in open source is a relative measure, and to my way of thinking is clearly a Rorschach of sorts. It’s easy to look at a project – even the most successful projects – and see what you want to see, because somewhere there will be a metric, a measure, that will support your argument.

The important measure of whether or not OpenSolaris has been successful, IMO, is simple. At least from a Sun perspective, and perhaps from a Linux perspective as well. Is Solaris more or less popular now that it has been open sourced? The answer to that question, as far as I’m concerned, is that it is significantly more popular today than it was as a closed source asset. Thus, in my book, OpenSolaris is a success.

Relatively speaking, of course.

Q: But relatively speaking Linux is still more popular than OpenSolaris/Solaris, correct?
A: The short answer is yes. Let’s look at something concrete like driver support. The Linux community will often bemoan the relatively inferior hardware support Linux enjoys relative to Windows (the graphics card people in particular are killing us), but it’s still worlds ahead of Solaris in that respect. Or let’s look at something like hosting; it’s easy to obtain Linux hosting, not so for OpenSolaris. Just like it’s easy to get PHP, and not so easy to get Java. In short, Linux is far closer to the ultimate goal of most projects – ubiquity – than Solaris is. I don’t think even the Sun people would debate that.

It’s important to keep that delta in popularity in context, however. Both codebases have been around for years, but ones been open source for better than a decade, the other for slightly over a year. Which would you expect to be more popular? I tell the story all the time because I think it’s amusing, but I still remember talking to a member of the press on the day OpenSolaris was launched and listening to them say that the communities didn’t compare and responding, “It’s the First. Day.”

Do I expect OpenSolaris/Solaris to rival Linux in general popularity anytime soon, if ever? No, I do not. I simply don’t believe that precludes OpenSolaris/Solaris from having a viable market opportunity.

Q: What about the notion that the project is not really open, or that parts of it are closed and behind the firewall?
A: Frye, IMO, has a legitimate point here, but I don’t believe it’s the gotcha it’s made out to be. Whether it’s the dozen or so briefings I’ve taken on Solaris or just listening to talks at the local Solaris Users Group (FROSUG), I’ve sat and listened to detailed explanations of the process of working with, and potentially contributing to, the codebase. And guess what? It is Sun centric, and it is behind the firewall. When the project was launched, the pieces needed to build it had not been open sourced. Glynn, in his piece, admits this freely, saying:

Dan’s right, the code is still stored behind the firewall. Yes, that *is* a problem that we need to fix. However, in a rather weird twist, that’s one of the things that Sun got right. As frustrating as it currently is to push back code [and really you should be talking to one of the people who have done this from outside], it gave the opportunity to discuss what development model works best for *everyone*, not just those internal to Sun.

But as Glynn says, we should be talking to one of the people who has done this from the outside, and fortunately the Slashdot conversation featured one such:

I am an outside contributor to OpenSolaris. I have several projects which are currently in the process of getting integrated into Solaris.

It is true that the development model at Sun is a bit more “Cathedral” than “Bazaar”, and there are still some technical and administrative challenges to solve (for example they haven’t figured out how to get folks to directly commit to OpenSolaris yet — you have to hand off code to folks at Sun who integrate your code and walk it thru the process.)

Development of Solaris has always been a tricky thing, and historically has had huge amounts of “process” to get changes. This is because there are numerous quality safeguards, and committees that have been involved. There are famous questions that every project integrating has historically had to answer: (is it i18n safe, what interfaces does it expose? does it conform to various standards already established? is it portable to both intel and sparc? etc. etc.)

Part of the review process also has to uphold things like Sun’s binary compatibility guarantee. In any respects, the _quality_ of Sun’s Solaris product is much higher, I think, than what you find in say Linux, where churn is a lot higher and quality and oversight controls a bit less.

Anyway, it is possible to contribute to OpenSolaris now, though its a bit of a rough road right now. But they are making it better, and I expect it will be a lot easier in the next year or so.

Though I don’t subscribe to all of the above, either, I think it makes one point well. The process is far from perfect, and not as open as it could (should) be. But is it closed? Depends on your perspective, but not from where I’m sitting. More to the point, I feel certain that the Nexenta guys would not argue that the project was closed.

Q: So you don’t think, as has been argued, that OpenSolaris is nothing more than a marketing exercise, or a “facade”?
A: Let’s back up for a minute, and look at this in simple terms. Is open sourcing a codebase a trivial task? If you ask people that have been through the process previously, I think you’d find that the general consensus is no, far from it. What about cost? Is open sourcing a codebase an inexpensive exercise? Again, I think you’d consistently get an answer of no, it is not. So the question remains, if it’s expensive and non-trivial, would it be worth it simply as a marketing exercise? Particularly because a failure would by definition be a matter of public record? I don’t believe so.

Q: Do you think that, as has been argued, there should be only one open source operating system?
A: I get asked this a lot because I’ve been and remain a strong believer that the Eclipse / NetBeans divide benefits primarily Microsoft, so let me clarify. No, I do not believe that the open source ecosystem can only support one project per category. One major project per category, perhaps, but not one project. I’ve done this before, but let’s take a quick look at the basic LAMP stack. Forgetting OpenSolaris for a moment, Linux is already joined by another open source operating system: FreeBSD. Apache may lead the open source web server category by a huge margin, but developers are free to choose from other projects like lighthttp and so on. MySQL likewise has achieved a clear leadership position within the open source database category, but that hasn’t stopped Postgres, Derby or other relational database projects. And as for P, you can’t even get a consensus answer on what the P stands for. So generally I am not a believer that any application category should be consigned to a single project.

Further, I’m a believer that OpenSolaris has actually been good for Linux and will continue to be. Even Linux advocates will generally admit that technically, Solaris 10 is a very well designed operating system with some innovative features that differentiate it from Linux. That pushes Linux, and I think you need look no further than the SystemTap work to see how Linux is striving to respond to the work that has been done within Solaris.

How then do I reconcile this with my beliefs vis a vis Eclipse/Netbeans? Simple. My problem is not with the IDE’s themselves, but rather the fact that they are architected in such a fashion as to prohibit interoperability. ISVs must choose to develop plugins for one or the other, or both. That’s not ideal, and that’s my problem with the current state of affairs.

Q: Have you spoken to IBM on this subject?
A: I have. Tom Curran at IBM’s Analyst Relations was kind enough to obtain me an audience with Dan Frye himself, who, contrary to what some of the Sun folks might now believe is actually a very good guy. After speaking with him yesterday, I think I understand better where IBM was coming from, though obviously as indicated above we differ significantly on many areas, and agree on others. The core point that Dan stressed – and that I agree with – is that building and fostering a community is hard, incredibly so. Where Dan and I break is on whether or not the amount of effort involved in building another open source operating system community is wisely invested or better spent elsewhere. This was in fact the reason that IBM chose the Linux route rather than the AIX route from an open source perspective. At the request of foomonkey from our #redmonk IRC channel (more on that in a later post), I did put the question – asked also by Daniel Robbins above – to him of whether or not IBM would open source AIX and the answer was not in the foreseeable future, unless market conditions – meaning demand, I’d guess – change dramatically.

All in all, though, Dan seemed content to emphasize the positives of the Linux community rather than engage in what I’d consider to be relatively pointless mudslinging. I might not agree with his entire worldview, but I certainly respect his right to it. Let’s let the market figure out who’s right and who’s wrong.

Q: Anything else to add?
A: No, that’s quite long enough.


  1. Stephen, as usual a very insightful posting.

    Speaking as one OpenSolaris developer who is internal to Sun, I think one issue is that many of the OpenSolaris discussions (be they design reviews of a proposed enhancement or the code review of a bugfix or a discussion on which source code management system should be used) naturally occur on the site’s mailing lists and forums. But unless one takes a bit of time to explore and either lurk or join those forums, I think it’s possible to not appreciate how involved the external community has already become.

    Glynn’s comment is spot on with respect to the firewall. But the important thing to realize is that neither Sun nor the OpenSolaris community wishes to keep the status quo around longer than it needs do be. There’s been a steady stream of progress made in this area (from cleaning up the source base so that it can be compiled by gcc to choosing a SCM system (a process which was done entirely in the open with vocal participation from the community) to creating the infrastructure to move the primary repository on the other side of the firewall.

    I think what was frustrating about Dan Frye’s original comments was the assertion that Sun had done nothing towards building a community for OpenSolaris. I think if the programmer mentioned in the original article who had monitored the OpenSolaris project had either joined the community or lurked on the various forums, they would have seen that assertion was false. As you state, it’s far from perfect but we all are working on making it better. And though IBM concluded that OpenSolaris did not post a credible threat (according to the original article), what was left unsaid is whether they saw an opportunity to participate where it might serve their interests for example with the current project to port OpenSolaris to the PowerPC architecture. I hope they might consider doing so.

    Finally, it was great meeting you at the recent OSCON.

  2. The debate amongst enterprisey folk is that one should consider which operating system exhibits the best performance, security, and scalability characteristics out of the box. Only after that, should we discuss outsider contribution. If the base architecture of the OS is deficient then the conversation is done.

    Solaris 1 – Linux 0.

Leave a Reply

Your email address will not be published. Required fields are marked *