Should Microsoft Financially Support Open Source Projects?
UPDATE: I remember that Scott Hanselman proposed that Microsoft put together an organization like INETA for Open Source Software in an editorial aside a while back while discussing NDoc.
Hanselman Editorial Aside: It's a shame that Microsoft can't put together an organization like INETA (who already gives small stipends to folks to speak at User Groups) and gave away grants/stipends to the 20 or so .NET Open Source Projects that TRULY make a difference in measurable ways. The whole thing could be managed out of the existing INETA organization and wouldn't cost more than a few hundred grand - the price of maybe 3-4 Microsoft Engineers.
This sounds like a great idea and it is a shame I didn’t think to link to it in my discussion here.
Dave writes that Microsoft should financially support open source projects in response to this blog post on Microsoft’s Open Specification Promise. There are two key points he makes in defense of his thesis.
- It’s in Microsoft’s own financial best interest.
- It is good PR for Microsoft.
Microsoft’s Financial Benefit
For the first point, Dave supplies anecdotal evidence in which open source software (DotNetNuke which has been supported by Microsoft) helped his company keep costs low and stay in business when they were just about to fold. Because of the turnaround, Microsoft received the financial benefit that his company was still around to purchase Microsoft licenses as they received funding.
Although I tend to believe this type of evidence as my own company has also implemented DotNetNuke successfully for a client in a project that would have otherwise been unprofitable, I am not easily convinced by anecdotal evidence. I doubt Microsoft would be.
It would be interesting to see Microsoft fund some studies to bolster or contradict these claims. If open source software built on Microsoft tools really does benefits Microsoft financially, they would probably like to know by how much.
Microsoft’s PR Benefit
Now this argument is a more compelling to me. As Dave points out, performing a Google search on the term Evil Empire and Microsoft shows up on the first page of results.
It’s amazing when you think about it. Despite the legion of Microsoft bloggers who put a real, articulate, and passionate human face to Microsoft, Microsoft still suffers from an image problem. I think the world of Microsoft because of bloggers like Dare, Steve, Clemens, Chris, and Don to name too few.
Why should Apple or Google enjoy the so hot right now status when Microsoft is the one really opening up. Microsoft’s PR problem seems to extend to its ability to retain top talent lately, though I don’t know if the perceived talent drain is truly real (they could be hiring just as many top quality replacements but we don’t hear about it).
I don’t know if supporting open source software would suddenly give people warm and fuzzies when they think of Microsoft, but it might attract developers to the platform who would otherwise be lured to Ruby on Rails or other such alternative platforms.
My Take On This
Ultimately I think Microsoft is not a charity and should do what’s best for Microsoft. Ultimately, I think it is in its best interest to look at this seriously and consider helping projects (like NDoc) out.
As for me, I wouldn’t want anyone to think that I’m going around looking for a handout. It’s not why I started this project nor why I devote my time to it. It’s an incredibly fulfilling way to spend my time and hone my skills, not to mention that the doormen at all the hot clubs in Los Angeles are Subtext users and let me cut to the front of the line (ok, maybe not).
I have implemented one instance of Subtext for a client at a steeply discounted rate, but I don’t see generating a huge amount of business from it. The point being, I don’t know if Subtext specifically is a benefit that would even register a blip on Microsoft’s radar. Could be I’m thinking too small. At least I know some of my posts have helped developers find solutions to problems saving them money.
However if someone were to wave money in front of me to help develop it with a good business case, I probably wouldn’t turn it down. I’m proud, but not stupid.
The situation I daydream about is one day having a position in which my job is to help a company implement some product that provides a service to the open source community (such as something like CodePlex, or a source search engine for open source software, or a blog host, etc...) and as part of my job description be given a decent amount of work time to lead development on Subtext. The Subtext time would have to not be charity, but seen as contributing to the company by keeping it relevant to its consumers.
But again, I digress. I’d love to hear your thoughts and comments, either here or over on Dave’s post.
UPDATE: Joe Brinkman has a great post on this topic that pretty much aligns with my views. However, I would only add that I do think it is in Microsoft’s best interest to be more active in leveraging successful open source projects to benefit Microsoft.
Especially in cases where software is licensed in a favorable manner (BSD baby!) for inclusion in its own products. Why write your own unit testing tool when you could have used MbUnit or NUnit and would not have any obligations to release your customizations if you so choosed (although my mom taught be that sharing was a good thing to do)?