In the 2010s, Microsoft was the furthest thing from being cool when it came to developers. You either chose Linux or OS X, which closed you off from the entire Microsoft Ecosystem. C# was useful in corporate settings, but new developers increasingly chose Ruby, Node, or something else. Outside web and application development, the rest of Microsoft products were flopping too: Vista, Windows Phone, Internet Explorer, Bing.
But something changed, and Microsoft is now cool again.
So how did Microsoft win back developers?
Embracing Open Source
Microsoft became even better at leveraging open source than Google. They focused on open-source developer tools – creating monopolies and subsidizing products that contributed to their distribution flywheel.
- VSCode – arguably the most important piece. Disrupting your own business (Visual Studio) is a hard choice to make.
- TypeScript – will only increase in importance as the front end eats the backend.
- .NET – while it might be outside the normal stack for cutting-edge developers, open-sourcing .NET has provided enormous quality-of-life improvements for the average corporate developer.
Bridging the development gap
Microsoft embraced Linux as the developer's environment, primarily through WSL. It allows developers to get the world's best window manager and desktop environment coupled with the world's most common OS runtime for server applications.
Strategic Partnerships and Acquisitions
At the time, I believed that the GitHub acquisition was one of the best things that Microsoft could do. The results have even exceeded my expectations. GitHub's feature velocity has increased since then, and they've shipped some important products: Actions, CodeSpaces, Search, and Copilot.
In addition, it set them up (in my opinion) to partner with OpenAI. The Codex model is important in LLMs – it showed that the text-based models actually increased in chain-of-thought and understanding when trained on code. Not to mention the commercial applications of Copilot.