If we were to judge by the volume of press inquiries yesterday, the announcement of the CodePlex foundation is Big News. Big B, capital N. Maybe it’s an artifact of Microsoft’s checkered history with open source, maybe it’s the personnel movements involved, or maybe it was simply a slow news day. Either way, the press was and is all over the foundation’s launch.
The question they all had, however, is unanswerable at this point: will this be successful? That is, at present, an unanswerable question for the simple reason that we do not yet know whether the high level of interest will be duplicated by those in whose fate the foundation rests: the developers. We have some anecdotal reactions, yes, but nothing of a sufficient sample size to project future traction with any confidence.
What we can do, however, in the absence of such data is deconstruct the news from the perspective of such folk. By asking some of the same questions they are likely to, we might be able to draw some conclusions on what we might expect from CodePlex, both now and in the future. Herewith, the traditional Q&A.
Q: Before we begin, do you have anything to disclose?
A: Yes. Microsoft is a RedMonk customer, and I was prebriefed on this news. In addition, the Eclipse Foundation is a RedMonk customer, and we have done work in the past with the Apache Foundation. Amongst commercial entities, MySQL and its parent company Sun are also RedMonk customers, as is IBM. Mozilla, meanwhile, is not a RedMonk customer, although I know personally many of its employees. I also know, personally, several of the Board of Directors and Advisory Board members, including Miguel de Icaza and Stephen Walli.
That should about cover it.
Q: For those that have missed the news, can you summarize it for us?
A: Sure. Yesterday, Microsoft announced the formation of the CodePlex Foundation, a 501(c)(6) organization structurally independent from the Redmond giant, whose mission is the enablement of “the exchange of code and understanding among software companies and open source communities.” Microsoft has, as I understand it, transferred over to said organization the rights to the CodePlex trademark. In plain language, CodePlex is an open source foundation intended to bridge the gaps between open source organizations and commercial organizations. As part of the announcement, Microsoft has gifted the newly created foundation with $1 million to get it up and running.
The non-Microsoft members of the board of directors are Miguel de Icaza – of GNOME and Mono fame – and Shaun Bruce Walker, from DotNetNuke. Not counting Sam, of course.
Q: Ok, before we take all of that apart, what exactly is a 501(c)(6) organization?
A: Wikipedia describes the (6) classification as characteristic of “Business Leagues, Chambers of Commerce, Real Estate Boards, etc.” This is distinct, then, from other organizations which file as 501(c)(3) – a charitable non-profit. As to why they chose (6) over (3), CodePlex offers the following from its FAQ:
While the Codeplex Foundation may eventually evolve into a charitable non-profit, the requirements for a charitable non-profit are more stringent. The set-up time for such an organization would have been longer, and the planning process considerably more complex. Given that we wanted much of the planning for the Foundation to take place in an open, transparent manner, it made more sense to launch quickly but minimally, and then begin the dialog with industry partners and open source community members that will ultimately shape the Foundation.
Q: Do you buy that line of thinking?
A: It is undeniably true that the process of 501(c)(3) is complicated and lengthy, so their reasoning is certainly defensible. The difficulty for the foundation is that it may – along with certain other CodePlex decisions – lead the naturally skeptical proportion of the open source world to shy away.
Q: Why is that?
A: It’s the elephant in the room. The fact that this is Microsoft forming an open source foundation. As I’ve discussed in presentations previously, those two things have typically gone together like oil and water. In spite of progress in the area, which now coincidentally will be questioned with the departure of Sam Ramji, Microsoft is still viewed very skeptically by open source audiences.
Q: What progress has Microsoft made, do you think?
A: Over the past several years, we’ve seen a significant evolution of the company’s attitude towards open source. While the “Linux is a cancer” rhetoric is well trodden ground at this point, the ensuing years have seen Microsoft mature to engage actively with open source communities like Apache, Eclipse, Mozilla, and PHP (via Zend). Two months ago they even announced their intentions to contribute to the Linux kernel.
Are they an “open source company?” Quite obviously not. These moves, while commendable, do not involve the leveraging of open source as a strategic mechnanism. And make no mistake: there is a significant volume of anti-open source antibodies circulating with Microsoft still. But all of that said, the work of Sam Ramji’s team, and Jason Matusow’s before him, has resulted in a Microsoft that at least is able to recognize that open source a.) is here to stay, b.) is the preferred development model for millions of developers worldwide, and c.) offers pragmatic economic opportunities for its various business units.
Q: What led to the formation of this foundation, in your opinion?
A: Microsoft has clearly had issues with its employees contributing to various open source projects over the years. Consider that when the folks from Redmond decided to build an Open Document Format plugin for Microsoft Office, they turned to partners – Clever Age, Aztecsoft, and Dialogika – for the actual development rather than do the work themselves. As the contribution to the Linux kernel indicates, Microsoft has managed to conquer some of its concerns in this regard over the years, but they clearly felt that there were sufficient pain points in contributing – as a commercial organization – to open source projects that it made sense to address them via the formation of CodePlex.
Q: Do you think it’s true that commercial organizations have difficulty contributing to open source projects?
A: I think it’s certainly true that Microsoft has. Whether that problem is as endemic to the industry as they suppose remains to be seen, and may be determinative in the success or lacktherof that CodePlex experiences. Presumably Apache and Eclipse, who both have strong relationships with commercial organizations, would argue that their respective governance processes and licensing philosophies work adequately enough. And many large and small vendors have well constructed processes for allowing its paid developers to work effectively on open source code.
The question will be whether or not CodePlex is sufficiently differentiated in the area of commercial to open source interaction to give itself a fighting chance to outgrow the “place where Microsoft related projects are housed” label it will almost certainly be given initially.
Q: How is CodePlex.com different from the foundation? And is the code hosting facility popular?
A: They are essentially independent entitites. Same brand, but different goals. CodePlex is about project hosting, while the .org is one level up on the project governance level. During the briefing, the folks from Microsoft were careful to point out that CodePlex projects may be hosted on the property of their choice: Google Code, SourceForge, Github, and so on. Being a CodePlex project does not necessitate being hosted on the CodePlex.com venue.
As for the popularity, CodePlex has had some success, crossing the 10,000 project mark back in July. As Roberto Galoppini points out, however, that’s an eighth of what Google Code amassed in half the time. So while it’s got traction, neither has it been overwhelmingly successful.
Q: What about the question of independence?
A: This is one of the two most important questions facing CodePlex, in my opinion, just as it once was for Eclipse. While there are occasionally still those who would cast Eclipse as a mere IBM puppet, those days are further and further in the past – in spite of continued contributions from IBM. Why? Because Eclipse made an active (and necessary) effort to distance itself from its IBM roots. Mike Milinkovich, for example, was hired out of Oracle. The result of these and other efforts was the explosion of the Eclipse ecosystem. This would have been impossible for an entity strictly controlled by IBM.
Microsoft clearly understood this aspect, which was why they are making a serious effort to emphasize the independence of the new organization. But understanding the need and executing on it are not the same. It can be difficult to let go, and even if you can, perceptions linger – just ask Eclipse. This is even more true when copyright is involved.
Q: How is copyright involved in the CodePlex Foundation?
A: CodePlex, as I was told during my prebrief and Sam Ruby picked up on, CodePlex requires that contributors grant the foundation a license for the code. See section 4 of the Contribution Agreement (PDF warning):
Copyright License. You grant Foundation a perpetual, worldwide, non-exclusive, royalty-free, irrevocable license in the Submission to reproduce, prepare derivative works of, publicly display, publicly perform, and distribute the Submission and such derivative works, and to sublicense those rights to third parties.
Or, the alternative, section 2 of the Assignment Agreement:
Assignment of Copyright. For good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, Assignor assigns to Foundation its entire right, title, and interest in any copyright rights that attach to (i) the Code and (ii) any documentation delivered with the Code.
There are clear advantages to this approach, but personally, I think it’s a mistake.
A: Because it will both act to throttle potential contributions and prompt further questions about the independence of the organization involved. As Sam put it:
If Microsoft’s goal was to be at arm’s length, I would have recommended that they follow Eclipse’s or Apache’s model. Copyright assignment may provide benefits down the road, and can work for obviously independent organizations like the FSF, but in this case I’m concerned that this may prevent a successful and sustainable bootstrap.
To be fair, Bill Staples – Microsoft VP and a member of CodePlex’s Board of Directors – addressed this in a subsequent comment, saying:
The CodePlex Foundation actually provides templates for how companies and individuals can either assign or license contributions to the foundation. [link]
Both options are available for potential contributors to consider.
Which triggered the following response from Sam:
As long as it is the contributor and not the project that decides, I guess there is no issue, but I have to ask: how common is it for potential contributors to prefer to assign vs license (and retain) rights?
For my part, I remain unpersuaded. As I told Microsoft there are certainly reasons to do this, but it’s going to open the door to a lot of questions.
Q: Doesn’t copyright ownership make working with the projects easier in the long run, particularly for commercial usage, which is CodePlex’s mission?
A: Indeed. As I discussed in this piece looking at copyright, there have been questions as to whether it would even be theoretically possible to relicense Linux because some of the original copyright holders are now dead.
But consider that with full copyright ownership – either by assignment or license – CodePlex could effectively dual-license the assets for commercial usage. I was told in no uncertain terms during the briefing that this is not the intent of CodePlex, but it’s possible. Much as MySQL can relicense its database under whatever terms it is economically incented to do so, so too could CodePlex, legally.
Certainly there are cases where the foundation is sufficiently trusted as independent for this to work: Mozilla operates this way, as does the FSF. But for an organization as newly minted as CodePlex, with its roots in an organization with a spotted history with respect to open source like Microsoft, this is a problematic requirement.
Particularly because the trend is away from such centralized control.
Q: How is the industry trending away from copyright assignment?
A: Well, consider the case of MySQL. Popular as it has become, it is probably the canonical example of centralized copyright assignment. The database maker required, like CodePlex, that all potential contributors either assign or license their copyright to the commercial organization. This allowed MySQL to pursue so-called dual-license revenue streams alongside of more traditional support and service businesses. But while this worked for a time, the quality of non-licensed has risen to a degree that MySQL is no longer able to offer the best MySQL. As Jeremy says, with external projects such as MariaDB, OurDelta and Percona not operating under the same copyright restrictions as MySQL, “you can get a ‘better’ MySQL than the one Sun/MySQL gives you today.”
It was not a huge surprise, then, to see the Drizzle fork of MySQL eschew this centralized copyright model. Because increasingly, even for purely commercial organizations, it’s a difficult model to sustain.
Q: What’s the big deal? Shouldn’t projects have the ability to effectively manage themselves over time, using copyright and other mechanisms?
A: The big deal is that this is a Microsoft sponsored initiative, and some developers won’t wait and see on CodePlex’s independence. Rightly or wrongly, they will equate this as assigning their copyright to Microsoft. That’s a problem.
Q: Besides questions of differentiation and copyright, what are developers likely to be asking about CodePlex?
A: How their projects will be perceived via their association with CodePlex, for starters. Which is why the copyright question is so important: if the perception is that contributing to CodePlex is contributing to Microsoft, the foundation will have problems here.
Q: Question from the audience: how will Microsoft judge CodePlex to be successful?
A: There are a variety of metrics that I suspect would be involved, including objective measurements like the number of participating projects to subjective assessments of its developer reputation. I think they will also be monitoring the types of projects and contributors; if their overall traction is slight, but they can claim substantial engagement within their target market of commercial entities and have some real success stories emerge, I think they’d count that as a win.
Q: Does CodePlex espouse a particular licensing philosophy?
A: It does not. From the About page: “The Codeplex Foundation releases intellectual property under a standard open source license. Which open source license depends on the needs and constraints of the open source project in question.”
Q: Is that a positive or negative for the foundation?
A: Possibly both. It’s positive in that it doesn’t unnecessarily filter potential contributors, but it’s potentially negative in that the foundation will lack the shared values that other, license-centric foundations such as Apache or Eclipse. While there are certainly exceptions to the single license philosophy – Mozilla and its tri-licensing comes to mind – they generally refer to groups with alternative but still strongly held philosophies.
Q: Does the world need another open source foundation?
A: I’ll defer to the market on that question. As I’ve argued above, I think it will be important for CodePlex to differentiate itself significantly as quickly as possible to provide developers with a reason to engage, but Microsoft appears to be significantly committed to the endeavor, so they should have enough time to succeed or fail on their own merits.
Q: Lastly, what does Sam Ramji’s departure mean for Microsoft?
A: Internally, it’s difficult to say. Open source has had its share of advocates within Microsoft over the past few years, but Ramji has proven to be one of the more motivated and certainly one of the most visible. He will be missed, certainly, because – Microsoft employee or no – he was able to work effectively with a varity of open source communities and keep the company moving forward with respect to its relationship with open source. Bill Hilf has vowed that Microsoft’s commitment to open source will not waver in the wake of Ramji’s departure, and a lot of people will be watching to see if he can keep that promise.