The reasons behind Microsoft's drive for open source

The impact of Azure

Influential as TypeScript has been, none of this could happen without Azure.

System Center has managed Linux servers since 2009. Ever since it came out with Hyper-V, Microsoft has had to deal with Linux virtual machines, which has meant contributing code to the Linux kernel to make that work well. As Jake Oshins from the Windows Server team pointed out in a blog post last year: "Microsoft has cared a lot about supporting Linux in a Hyper-V VM for a while now. We have an entire team of people dedicated to making that work better."

But he also admits that Linux wasn't always a priority when designing features. When he worked on support for devices in VMs, the security principles he'd adopted also "caused me to come up with a protocol that was perfectly tailored to what Windows needs as a guest OS. Anything that would have made it easier to accommodate Linux got left out as 'extra attack surface' or 'another potential failure path that needs to be handled'."

To be a credible public cloud provider, Microsoft couldn't afford that sort of accidental compromise when supporting Linux on Azure, and it now accounts for more than a quarter of all VMs on Azure (up from 20% six months ago). Because Azure is a subscription service, supporting Linux and other open source systems turns into a revenue stream for Microsoft – and that goes beyond the way Oshins says Azure is "constantly tuning to make that even better."

Microsoft's new attitude to open source has a lot to do with Azure

Microsoft's new attitude to open source has a lot to do with Azure

The better Microsoft can understand open source tools, the better it can make them work on Azure, which means more and more Microsoft engineers getting involved in external open source projects and seeing the advantages of open source.

At the same time, Azure has also embraced the Open Compute Project, not only taking advantage of open hardware designs but contributing its Open Cloud Server back to the community (like Facebook and unlike Amazon, for example).

Nothing's off the table

It's no surprise that it's Azure CTO Mark Russinovich, once best known as a Windows kernel expert, who's standing up on stage inviting open source experts to apply for jobs in Azure and saying that nothing is off the table in terms of open source.

As he recently pointed out: "Microsoft's open source journey began more than 10 years ago and we've been a significant and growing contributor to open source projects ever since – particularly on Microsoft Azure, where we support numerous open source programming models, libraries, and Linux distributions."

That doesn't mean that Azure itself is likely to switch from running on Windows Server to running on Linux though. For one thing Microsoft believes that the Windows kernel and hypervisor are both excellent. And for another, Microsoft wouldn't be investing so much time and money in building out container support in Windows Server 2016 and basing Azure Stack on it.

What Redmond is doing is using Linux strategically, for example by creating its own open source network switch software, SONic, to run on an open hardware switch that it can control through software, so it can automate all the network provisioning and management for Azure, right down to the chips inside the switch. Down the line, that can all be part of the systems Microsoft sells to enterprises as Azure Stack hybrid cloud.

Finding the balance between open source and commercial business isn't always easy – Sun's commitment to open source produced interesting developments but didn't help the bottom line enough to keep it from being sold to Oracle.

Playing it clever

Microsoft seems to be finding a good balance that brings the benefits of open source to Microsoft, to customers and to the open source communities it's working with. It's not the non-commercial philosophy that once drove some open source communities, but a large number of open source projects have a commercial arm.

Microsoft is obviously committed to open source – that's both a strategy its executives are driving and something developers and engineers are adopting with enthusiasm for the benefits it brings (which means they're contributing to the open source community rather than just building on it). But it's doing that in a very disciplined and strategic way that supports Microsoft's commercial business rather than undermining it.

Contributor

Mary (Twitter, Google+, website) started her career at Future Publishing, saw the AOL meltdown first hand the first time around when she ran the AOL UK computing channel, and she's been a freelance tech writer for over a decade. She's used every version of Windows and Office released, and every smartphone too, but she's still looking for the perfect tablet. Yes, she really does have USB earrings.