News

Microsoft's Open Source Journey: From Calling It a 'Cancer' to Buying GitHub

Microsoft has gone from its CEO calling open source a "cancer" in 2001 to buying the pre-eminent open source development platform GitHub in 2018.

That surprising journey was recently detailed in a day-long Open Source Virtual Conference.

The Sept. 13 online conference featured panels with Microsoft open source experts. It began with a keynote talk by John Gossman, a Distinguished Engineer on the Microsoft Azure Team. He recounted Microsoft's history with open source software and suggested that much had changed since former Microsoft CEO Steve Ballmer called Linux "a cancer" back in 2001. Gossman described that point of view as being 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 has added tooling support, such as the ability to use Remote Desktop Protocol (RDP) and Secure Shell (SSH) to access a Linux virtual machine. It made PowerShell, SQL Server and .NET Core all run on Linux. Microsoft Technical Fellow Anders Hejlsberg is the leading contributor to the open source TypeScript scripting language, a superset of the JavaScript language. The open source Visual Studio Code development environment is now "the most popular editor in the world," Gossman said.

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:

[Click on image for larger view.] Microsoft's GitHub open source code contributions since 2014. (Source: Microsoft Open Source Virtual Conference keynote talk of Sept. 13, 2018)

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.

About the Author

Kurt Mackie is senior news producer for 1105 Media's Converge360 group.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube