So many answers mentioning the technical superiority of Linux. That is totally not what this is about for Microsoft!
Microsoft has decided that the operating system is no longer an important battle-ground, and it’s more important to gain market share in cloud (Azure and Office 365) than it is to put energy into battling Linux for application market share.
If you want to see what a company really values, you look at their sales compensation approach. Microsoft focuses all of its accelerators and sales training on Azure and Office 365. Its sales people lead with these. Customers renewing their Windows/Office software licenses get free credits for Azure when they ask for a discount.
Microsoft will (of course) absolutely take a Windows renewal deal, but it is going to come with a chunk of free Azure because it wants you to use that instead of Windows on your own servers. It also has a program for its VARs (value-added resellers — people who help you get value out of Microsoft stuff) to provide professional services to help customers use those free Azure credits. It also has VARs who will help customers transition off Exchange and onto hosted Exchange instead, which is far easier to manage than hosting it yourself.
So why this shift away from caring about Windows?
An operating system only matters because it is a platform for applications. Apps make money for businesses and productivity for individuals — i.e. they deliver the real value of computing.
Microsoft very effectively monetized apps with Windows and the .NET application platform. While the various proprietary UNIX vendors (Sun, HP et al) were duking it out with each other in the server market, they built a very well-integrated and easy to use app development platform for the desktop. When Linux and Intel x86 based servers came along and started to cannibalize the UNIX market, keeping Sun and others occupied, Microsoft spent its time expanding Windows from the desktop into x86 servers too. In recent years, 75% of the servers going into corporate data centers ship with a Windows license – the rest run Linux, mostly from Red Hat, who had spotted the need for Linux server distro that enterprises could actually run reliably and spent 10 hard years building a business around that.
Linux was largely successful in replacing proprietary UNIX in data centers (mostly Sun), and outside the enterprise in the hosting business (again, mostly Sun) where Intel x86 servers were now “good enough” and no-one wanted to pay for the operating system. Microsoft didn’t care too much about this because there is no OS market when no-one wants to pay.
However, being free, Linux app capabilities grew as did the base of people who knew how to write apps for it. So Linux has grown in scale and usage, even though it’s hard to make money as a server OS vendor with a Linux distro (proof points: Canonical, SUSE). Only Red Hat has managed it, but they have broadened their business into management software to find growth.
So if you’re Satya Nadella and in charge of Azure and Windows, what is the single best strategy for growth when AWS is a $10Bn business, >10x the size of Azure and growing 64% per year , while Windows licenses are growing in single digits? AWS, the cloud that is a platform for apps in its own right, regardless of which OS you run?
Do you keep pouring money into making Windows the platform for more apps vs. Linux? Or should you just not care which OS the app runs on, throw open the doors and welcome every single app that runs on Linux onto Azure?
Although it is doubtless painful, as Satya you stop caring about the OS and focus on the cloud app platform, embarking on a program to make yourself as attractive as possible for every Linux app. That includes joining the Linux Foundation.