Microsoft's Open Source Shift a 'Profound Cultural Challenge'
- By Kurt Mackie
- September 17, 2018
At the recent Open Source Virtual Conference, Microsoft open source experts described how the company has changed its position on open source software development over the past two decades.
John Gossman, a Distinguished Engineer on the Microsoft Azure Team, kicked off the Sept. 13 online conference with a keynote talk in which he recounted Microsoft's history with open source software. Much has changed since former Microsoft CEO Steve Ballmer called Linux "a cancer" back in 2001, according to Gossman, who described that point of view as a "fundamental misunderstanding of open source."
Gossman, an 18-year Microsoft veteran, said that there weren't many engineers that understood open source software when he first joined the company. Since that time, he's seen the leadership change. They "grew up with open source," he added, and Microsoft brought in open source leaders from other companies.
Current Microsoft CEO Satya Nadella has a different attitude about open source, according to Gossman. Nadella had suggested in his book "Hit Refresh" that leadership at Microsoft must be "boundary-less and globally minded in seeking solutions." That approach included ensuring first-class support for Linux on Azure. It was not just a purely technical dilemma at Microsoft, but it also "posed a profound cultural challenge," Gossman noted.
Since Microsoft is "the Windows company," Gossman said, people have been surprised at what it has done with Linux. Microsoft made sure that its Hyper-V was a good hypervisor for both Windows and Linux. In adding graphics processing unit support to Azure, Microsoft ensured support for the Linux kernel, as well. Microsoft has long had a SQL service in Azure, but the same engineering team also built MySQL and PostgreSQL open source database management services into Azure.
Microsoft also uses open source software in its datacenters. Microsoft's Software for Open Networking in the Cloud (SONiC) runs on Microsoft's datacenter switches, but SONiC is built on Debian Linux, Gossman noted. Microsoft and hardware manufacturers all contribute to the open source SONiC effort.
The shift toward open source software was largely driven by organizations. When Microsoft asked, it found that all of its customers were using a combination of Windows and Linux. In addition, with the use of cloud services, the industry has become "a polyglot." It's essential that Microsoft support these things, Gossman added.
Microsoft began partnering with Linux-based companies, such as Red Hat, which once was a Microsoft rival. At one point, Microsoft even rolled out office space for Red Hat's engineering team on its Redmond, Wash., campus.
Microsoft currently has a large number of partnerships with companies doing business in open source, including Red Hat, Canonical, SUSE, Bitnami, Pivotal and more. Gossman said that he serves on The Linux Foundation board, and Microsoft contributes to the development of Linux in terms of providing code and funding. Microsoft wants to contribute to the open source software community "even if it's not our software," Gossman said. "We're all benefitting from that strong community," he added.
To illustrate Microsoft's open source code contributions, Gossman offered the following slide showing its GitHub submissions:
Microsoft announced the purchase of GitHub in June for $7.5 billion in stock. At that time, Microsoft promised that GitHub would operate independently and would provide an open platform to all developers. The deal is currently under consideration by government regulators. Reuters recently reported that European Union regulators will make a decision on the deal by Oct. 19.
The keynote also included a talk by Gabe Monroy, lead program manager for the Azure compute team. He was the former chief technology officer at Deis, a maker of open source Kubernetes tools. Microsoft had announced its plans to acquire Deis last year. Deis built Helm, an open source package manager for Kubernetes. Monroy described himself as an open source developer, focused on Linux, and said that he continues to do that work at Microsoft.
On the Azure team, Microsoft is trying to flesh out a full suite of products around the container system. It's using open source technology like Docker's.
"What's important to recognize," Monroy said, "is that these are all built with others in the industry, and a lot are competitors." Microsoft also puts its efforts into the Cloud Native Computing Foundation, building the services that open source developers want, he noted.
Kurt Mackie is senior news producer for the 1105 Enterprise Computing Group.