I finally got a chance this morning to catch up with Microsoft’s Jason Matusow, better known as Redmond’s point person on all things open source, and one of the topics of discussion was the perception that Shared Source is just Windows. Before I get there, I just wanted to state for the record for vendors that I have explicit rules about what I will/won’t blog from briefings; in this case I’m comfortable making an exception because Jason has already [1] discussed it.
Anyhow, the question implicit in this morning’s discussion and in Jason’s post is this: why is the perception that Shared Source equals Windows so prevalent? My answer to this question is actually quite simple: the term Shared Source, as people have come to understand the definition around Windows, is having a drag effect on projects released under more permissive terms. Open is good, shared is less so.
Understanding that there are political reasons for Microsoft’s labelling, I still think it’s clear that the term Shared Source has its share of detractors. But the question is, what’s the difference? When there are 57 OSI approved open source licenses available, how can open source be compared to anything? After all, the BSD license is profoundly different than the GPL, which is profoudly different from the MPL, and so on.
But in looking for commonality across the multitude of licensing options, I find it in perhaps the most unlikely of all places: the term open source itself. At their core, open source projects to me are about having access to the source code itself. Obviously life complicates greatly from there, when you factor in things like reciprocity, but whether we’re talking Apache, BSD, GPL, or Sun’s controversial CDDL for that matter, the source code needs to be available. I know its sounds absurdly simple, and yes I’m indulging in a bit of hyperbolic oversimplification, but you’d be surprised how many would overcomplicate the definition, burdening it with baggage it was never meant to carry. This is why I continue to take issue with folks like Steven J Vaughan-Nichols when they claim that Open Solaris is not open source. There’s source, and it’s open – ergo it’s open source. Even the OSI agreed on it. Unless you’re imbuing the term open source with some intangible philosophical requirements, in which case one should be upfront about those biases because not everyone shares them. Open source projects then, are perhaps best characterized by just what the name implies – source that’s open. The terms and permissions may differ, but at the end of the day I have the ability if I so choose, to examine the internals of the product I’m relying on.
Not so under Shared Source initiatives – or at least, all of them. On the plus side, if you head here, for example, you can easily get the source code for WiX, the Windows Installer XML tools. That type of project, to me, is better described by the term “Open Source” than by “Shared Source.” Contrast that with Windows – the aforementioned and unfortunate(?) case study for Shared Source as a whole. The code there is not open, but explicitly shared with preapproved parties and institutions.
Now don’t get me wrong: I support Microsoft’s right to choose the terms under which they distribute and release their products, even if I don’t like them personally, or think they’re necessarily in Microsoft’s best interests professionally. Ultimately I trust in the market and the community to decide which model works most efficiently and is most sustainable in the longer term.
But if the question is why most people think of Shared Source as just Windows, my answer would be that most people don’t bother to look beyond the term “Shared Source.” Change the terminology, and I think you’d change some perceptions.
[1] I highly recommend you read the first comment to this post, from one “Lon Ingram.” He says with fewer and better words what I’m trying to say here.