I know this is old news now but Josh Ledgard made waves in the Open Source community a while ago with this blog post. There were a few things that I see a bit differently from my work in the Open Source community via the WiX toolset and wanted to take a second to cover them here.
First, I saw a number of comments on the Slashdot article questioning why Microsoft was asking for help producing Open Source projects. I had to agree with the sentiment. If you have a project (no matter what company you work for) that isn’t key to your core business revenue and you think can better your community then open it to the community. Don’t sit around asking for help coming up with ideas for things to release to the community. Talk to your boss and talk to your business people (and probably lawyers) then create the project. I can understand that Josh was trying to engage his readers but, as you can see in the comments, there were a lot of requests for projects that Josh was unlikely to be in the position to act on at all. Admittedly I’m more of a doer than a talker so maybe I’m just biased.
In the days that followed his initial post, Josh did a great job following up on a lot of the issues raised from the initial post. I agree with most of his responses so I’ll only call out where I think Josh left out some detail.
Josh says all the right things here and I completely agree that trust isn’t gained in grand sweeping gestures or any amount of talk. Only small and consistently positive actions can get people to trust you. Apologizing for mistakes can also help but too many mistakes can be very damaging. This stuff all tracks back to basic human sociology.
What Josh fails to point out is that Microsoft has already taken steps to try and improve our developer relations in the Open Source community via WiX and WTL. I cannot speak for Nenad and WTL but the WiX community is growing slowly. There are already a number of developers who trust Microsoft enough to work on the project and help introduce new developers into the community.
WiX and WTL are small steps but as I noted above, small steps are the only way to rebuild trust. These are also just our first steps. There will be further steps later.
I’m not a lawyer and I can’t say I truly approve of the way that the patent system currently works. However, I’m not in a place to affect great change on that system so all I can do is try to understand how to work within the system appropriately. However, the comments floating around that essentially boil down to a scenario where Microsoft sponsors an Open Source project to attract developers only later to hit the community with patent infringements are "patently stupid". This kind of talk serves no purpose but to spread fear, uncertainty, and doubt about Microsoft’s participation in the Open Source community.
That said IANAL but I believe the other concerns related to "intellectual property taint" and "pedigree issues" (problems where a patent infringing piece of code ends up in a project) are real problems no matter what Open Source project you are interacting with or what company you work for (or want to work for in the future). I have spent a lot of time with company lawyers over the last few months and these two issues come up all of the time. We don’t discuss them as ways to "attack members of the community" but as issues that community members could inadvertently cause for the WiX project and Microsoft.
I can’t tell you how frustratingly cautious we have to be simply because Microsoft is such a large legal target. As Josh noted many internal concerns related to Open Source software are cultural at Microsoft. However, a great many more of the concerns are legal issues related to Open Source. I struggle with these legal issues all too often, when all I really want to do is build tools that help.
Josh catalogs a number of the suggestions for projects that his readers though should be released as Open Source. A list is great but the arguments for why each project should be released as Open Source are all very weak. What I’d love to see is a real detailed argument from the people that think any of those projects (or heck any other project) why their project should be released as Open Source.
Personally, I (with a group of business people) had to explain to a Group Vice President (VP’s don’t get any bigger than that at Microsoft) why the WiX toolset was a good project to release as Open Source. I wrote this blog entry the night after the meeting.
So, if you have a really solid argument why a project at Microsoft should be released as Open Source, feel free to post it in your blog and link to me. I’ll read it. If your argument is strong enough and you want to, I’ll try to convince the right people here to have you come defend the idea yourself. Who knows, you might be able to help change the face of Microsoft too.
It is being considered. The right people are always trying to find the right projects. In my case, there was no project like the WiX toolset in existence so I had to start from scratch. Others are finding other ways to participate in the community.
This is the last point I want to discuss. Devin suggests that he’d come work at Microsoft only if he could also work on an Open Source project. Personally, I find this attitude short sighted. If you think Microsoft should be participating in Open Source projects and you know how to manage (and grow) Open Source projects then why not join Microsoft to help change the culture from within? I joined five years ago, did my small part to help educate others about the benefits of some Open Source methodologies and now Microsoft officially sponsors two Open Source projects. You can do the same.
Okay, that’s it. Tomorrow night, I’ll be dissecting another Open Source conversation that happened in the less distant past. After that another post about the Open Source goings on at Microsoft then back to setup stuff.