Former Microsoft CEO Steve Ballmer once infamously described Linux as a cancer. Microsoft’s founder, Bill Gates, in the past criticised the ‘Pac-Man’ like nature of the most famous open source licence, the GPL.
But although Microsoft isn’t likely to start handing out the source code of Windows, the Redmond of today has a distinctively more warm-and-fuzzy attitude towards open source, according to Mark Hill.
The Microsoft executive has been there to witness the change first-hand: He’s the company’s vice-president for open source sales and marketing and a Microsoft veteran, having worked there for over two decades.
Emblematic of the changing relationship was the announcement in November that Microsoft had partnered with Red Hat. Microsoft added support for a range of Red Hat software – including Red Hat Enterprise Linux (RHEL) -- to the Azure cloud computing service.
It’s not that Microsoft is mellowing — it’s that the company has gone through profound changes, and like every other major IT company it sees a services model as central to its future.
“If you wind the clock back, our business was built on building software code and then providing it to customers,” Hill explains.
“We monetised that effort of ours by charging a licence fee for the code, and our channel partners and our other partners monetised that effort by providing services to install and configure and manage that software for customers.
“That was our business model: Building IP and licensing IP. Our partners were the ones that did all the services.”
A services world
A decade and a half ago, the business model common to many open source companies — monetising the services provided around software — was “orthogonal” to the Microsoft business model, Hill says.
“That’s why we couldn’t play well in an open source world,” Hill says. “It just didn’t fit in our business model — we all know that.”
“Now we’ve both done some silly things and said some silly things in the past but it was because our business models were orthogonal,” the Microsoft executive says.
“So what has changed? Well the fundamental thing is, moving forward, Microsoft is less about being a company that licenses intellectual property and it’s more about providing a service to customers.”
“Everything changed with the cloud,” he adds.
“Through the cloud we can provide customers with a service around traditional Microsoft software and we can provide a service around open source software.
“If you go today and you want to get a Windows virtual machine – you start up a Windows virtual machine and you pay us by the hour. There’s no licence fee being paid – you just pay us to run Windows for you. If you want to start a Linux VM, there’s no licence fee for Linux – you just pay us to run a Linux VM for you.
“So simply speaking, it doesn’t matter whether the software is built by Microsoft in a commercial model or the software is built by an open source model – we can provide that as a service and monetise that effectively as a business.”
“It suddenly makes sense to reach out and become really, really good at delivering services around open source solutions,” Hill says.
Red Hat partnership
The changing attitude of Microsoft has made for some moments — such as the partnership with Red Hat — that few would have predicted even a handful of years ago. Although Windows Server and RHEL have been pitted against each other in the enterprise, Red Hat doesn’t offer a “hyperscale” Azure-style cloud service, Hill says.
“You know how to run Linux; we know how to run cloud. Customers use your stuff; they use our stuff,” Hill says of the partnership.
“Let’s go jointly and make sure that customers can continue to have the best service and support from both of us, in such an integrated way that we’ll even integrate our back-end support.
“On Microsoft’s campus you have Red Hat engineers with Azure engineers for back-end support for both companies. That’s unique — doesn’t happen at AWS, doesn’t happen at Google or any other cloud provider.
“The reason is — we’re not a competitor. Most customers have already chosen whether to use a Linux or a Windows environment. If they’ve chosen Windows, fine. If they’ve chosen Linux, then they’ve chosen Linux. What Red Hat doesn’t want is when customers move to the cloud to be switched over to somebody else’s Linux distribution.”
The partnership extends beyond running RHEL in the cloud to a number of Red Hat’s other offerings such as JBoss, Hill adds.
“Here’s the real kicker,” the Microsoft VP says. “A while ago we open sourced the whole of the server side of .NET. Red Hat and Microsoft are working together to make .NET a fantastic platform on Red Hat Linux, which gives .NET developers and .NET application providers yet another platform to go and run their .NET applications.”
“Who would have thought you’d have someone like Red Hat go and attempt to be the best Linux-based .NET platform?” Hill says.
In the pre-Azure world, Microsoft’s work with open source software focused on interoperability, Hill says.
“We contributed millions of code into the Linux kernel so that Windows could run in virtualized way in Linux, for example,” he says.
“When Azure came around, we realised we were a services company and in order to be able to get scale in our services, you needed to be able to cater for any technology that the customer is interested in running in the cloud,” he adds.
That doesn't mean Microsoft will stop building its own technologies, Hill adds. However, it does mean greater focus from Microsoft on building technologies that filled gaps in the market.
“We didn’t want to write any software that’s already been written — not a line of code that’s already been written — we should focus where things aren’t happening,” he says.
In early 2014 Satya Nadella was announced as Ballmer’s successor and told employees in an open letter that the company “must zero in on what Microsoft can uniquely contribute to the world.”
(Nadella, selected to replace Ballmer after an extensive recruitment process, was a long-time Microsoft employee who came to the CEO position from the software company’s enterprise and cloud division.)
When the penny dropped
It was about four years ago the “penny dropped in a big way” with regards to Microsoft’s relationship to open source, and the company started making major changes to its strategy, Hill says.
Then two years ago Hill’s role was created to build up the company’s ability to engage customers and partners around open source.
He has been at Microsoft for 23 years and is well-respected internally. Hill was chosen for the role because he’s seen as someone who can “shake things loose and move things without breaking the business,” he says.
The shift was not unchallenged within the company, though the questions came more often from the sales and marketing side rather than Microsoft’s engineers.
“On the engineering side, everybody understands it — it’s history from an engineering perspective,” Hill says.
“I don’t think there’s anybody on the engineering side that is concerned about this. It’s now about going to our sales and marketing organisation and saying, ‘We’ve built all of this, now it’s time for you to sell it’ — and that’s a change.”
Hill has created new product manager positions, called open source leads, in every Microsoft subsidiary around the world.
Many of those roles were filled by Microsoft employees who originally came to the company with open source backgrounds but were tasked with figuring out how the company could effectively compete with open source offerings.
The new title was “strategically chosen” Hill says — “it’s about leading with open source, not ‘open source when you have to talk about open source’ leads.”
“It was a bold move; it’s top level role in the company now,” he says.
Microsoft has hired a “ton” of data centre specialists with Linux backgrounds around the world, he adds.
“We’re putting them in subsidiaries around the world to be an overlay sales force. So when our general account teams go and talk to customers and the customer has a Linux or an open source environment, we can bring in a technical specialist who can talk their language.”
“We’re also hiring partner managers because we need to recruit a new partner channel,” he adds.
“We just don’t know how to talk to Red Hat partners — people who implement Red Hat or people who implement MySQL — it’s not something we’ve done in the past.
“Our ‘partner engagement machine’ doesn’t know how to engage with open source partners, so we’re putting in new people, in addition to the existing ones, to help us go and build a channel for open source system integration.”
Hill says his efforts have the backing from the top of Microsoft all the way down.
Beyond the work with Red Hat, another open source-related move cited by Hill is Microsoft’s engagement with Docker, including Azure’s Docker service and work to ensure interoperability between Docker management tools and the Windows Server container strategy.
“We aligned the container strategy so that the tools that manage Docker and the tools that you use to orchestrate Docker containers you can also orchestrate Windows containers,” he says.
“The intent is to be able to make this completely seamless for customers.”
Hadoop is another open source project embraced by Microsoft, Hill says. The company offers Azure HDInsight, a Windows-based PaaS offering, as well as Hadoop atop of Linux.
Embrace, extend, extinguish?
Of the infamous “embrace, extend, extinguish” approach, Hill says: “We don’t have time for that.”
“Why do we want to spend time extinguishing?” he says.
Supporting open source is paying off for Microsoft, Hill says.
More than one in four VMs on Azure run Linux — a figure that is rapidly increasing, according to the Microsoft executive.
Another figure he cites is that over 60 per cent of the prebuilt images available through the Azure Marketplace are Linux-based, including images based on Suse, Ubuntu, Debian and CoreOS distributions, as well as RHEL.
“If a customer wants to move a technology to the cloud, why spend any time trying to do anything else – just go and run it for them,” Hill says.
“That’s how we make money. Why would a customer want to spend time re-architecting for a different, Microsoft product and then go and run it on the cloud? All we’re going to do is chase them off to a competitor.”