When I first heard that Microsoft was beginning to ramp up their open source contributions, I initially felt this was good news. Despite Microsoft's rocky past with open source software and Linux in general, anyone who wishes to contribute to the open source community should be able to do so.
As of this article, Microsoft is actually one of the most active contributors to the Linux kernel. Yes, these contributions all benefit them in one way or another. But after I had a chance to ponder this issue a bit more, I began to question Microsoft's motivation in the long-term.
Still a fan of software patents
Just because Microsoft formed a new company strictly for handling open source code doesn't mean they've suddenly had a change of heart regarding software patents. Fact is, there's big money in patent ownership within the software space. And while I'm personally not a fan, Microsoft is quite content in pursuing software patents as part of their business.
After looking at the issue, I feel that Microsoft first began embracing open source because they had to. While I doubt we'll see much of it on the desktop, they're embracing it quite heavily within the enterprise space. Hyper-V is one such example of how Microsoft has seen the value in working closely with the open source community.
But despite this cooperation between the open source community and Microsoft, the idea is that Linux will be the guest operating system in this equation.
When the chips are down, Microsoft has no intention of reversing their views on software patents. And this is why the opening of the new Microsoft subsidiary for open source projects is relatively meaningless to the community as a whole. It's purely something designed to benefit Microsoft only.
In my view, any side benefits felt throughout the community will be purely incidental.
If I was a betting man, I'd suggest that Microsoft might take their new open source-based subsidiary and begin tinkering with new and exciting ways to lock its users in, even more than they are already.
Right now, the open source endeavors are merely a way to get open source users running with Microsoft technologies. Down the line, however, one might speculate that Microsoft might take things a step further by rethinking the licensing for their other products as well.
No matter how "great" some users might think their products are, the fact is many people are seeking out cheaper or free alternatives to the same software Microsoft currently sells. Assuming Microsoft as a company has looked ten years down the road, chances are reasonable that they've begun tinkering with ideas of how they might be able to give away their technologies while still making money on services, perhaps even in the non-enterprise space.
Now Microsoft has been tinkering with cloud-based operating system concepts for sometime. Thus far, the target market has been limited to the enterprise arena. And with recent lowered prices on their Azure cloud OS, one might think this is great news. In reality though, Azure is a proprietary platform and if Microsoft was successful in gaining widespread adoption, it would mean even further vendor lock-in.
Coming back full circle to Microsoft's open source efforts, one must remember that this is a company that enjoys control of the desktop PC market. They've been fighting like mad to maintain some position in the server space and anything they offer to get Linux onto their proprietary platform(s) is a danger to open computing. Even worse, imagine this same concept on workstations in every home.
Windows monopoly revisited
Long before Microsoft knew what was happening in the cloud space, Google knew that someday the software of the future was going to be made available via the Web. In contrast, Microsoft currently maintains a solid hold on the desktop OS market, which largely depends on non-web based software.
While it has seen more competition over the years, Microsoft is still very much in the drivers seat. Anything they offer to the community in the way of open code should be looked at with great care. What is the motivation? Is it worth it to accept the code provided by Microsoft? The answers to these questions remain unknown.
Now let's consider the possibility that Microsoft begins offering (down the road) code to be used on the Linux desktop. And not just the same old stuff we've seen spats over in the past, like the fat32 file system. I am talking about technologies that haven't been released yet.