Microsoft recently made its first significant contribution to Linux in the form of GPL-licensed code recently. See the>analysis of Redmonk’s Steve O’Grady for a good summary: Microsoft, the GPL and Linux: The Q&A.
The best summary I have seen comes, not surprisingly, from Linus Torvalds in an interview in Linux Magazine, Microsoft Patches Linux; Linus Responds. 
What should we do? Perhaps Linus should reject the code and keep Microsoft at bay. After all, why help them? Then again, anyone should be free to contribute code if it’s useful and the right quality.
We put this question to Linus, asking whether this patch was something he would be happy to include, even though it’s from Microsoft. He replied:
“Oh, I’m a big believer in “technology over politics”. I don’t care who it comes from, as long as there are solid reasons for the code, and as long as we don’t have to worry about licensing etc issues.
In fact, to some degree, I’d be more likely to include it because it’s from a new member of the community rather than less (again, I’d like to point out that drivers are special. They don’t impact other things, so they get merged much more easily than some core changes).
I may make jokes about Microsoft at times, but at the same time, I think the Microsoft hatred is a disease. I believe in open development, and that very much involves not just making the source open, but also not shutting other
people and companies out.
There are ‘extremists’ in the free software world, but that’s one major reason why I don’t call what I do ‘free software’ any more. I don’t want to be associated with the people for whom it’s about exclusion and hatred.”
See especially (emphasis added):
Linus states that this is how all open source code gets written, developers scratching an itch. The fact that this comes from Microsoft shouldn’t make any difference at all, saying:
“I agree that it’s driven by selfish reasons, but that’s how all open source code gets written! We all “scratch our own itches”. It’s why I started Linux, it’s why I started git, and it’s why I am still involved. It’s the reason for everybody to end up in open source, to some degree.
So complaining about the fact that Microsoft picked a selfish area to work on is just silly. Of course they picked an area that helps them. That’s the point of open source – the ability to make the code better for your particular needs, whoever the ‘your’ in question happens to be.
Does anybody complain when hardware companies write drivers for the hardware they produce? No. That would be crazy. Does anybody complain when IBM funds all the POWER development, and works on enterprise features because they sell into the enterprise? No. That would be insane.
So the people who complain about Microsoft writing drivers for their own virtualization model should take a long look in the mirror and ask themselves why they are being so hypocritical.”
I couldn’t agree more. Ultimately every programmer writes code to prove, by example, that it can be written, whether working on their own or for a corporation.
1. I hope Linus appreciated the irony in being interviewed by a magazine whose name is based on his.