The changes unleased by the new, post-Ballmer Microsoft on its user and developer base in the past week have been northing short of seismic. Here are four of the biggest takeaways for developers from the many announcements that have come out of the Build conference.
1. Microsoft's new development culture runs on open source
This is about more than Microsoft open-sourcing existing work. Granted, it's nice to have, and nobody's complaining about great swaths of open source, cross-platform .Net infrastructure. But the underlying issue is much larger: Microsoft's entire software development culture, going forward, will be powered by open source.
No, it doesn't mean all of Microsoft's products will be open source, so don't hold your breath waiting for an open source version of Windows. But it does mean the culture of tools around Microsoft's products -- the languages, the compilers, the development environments -- will to be open endeavors.
What's more, the way those things will be open source will be far more in line with the way open source has worked in the software world outside of Microsoft. When Big Red(mond) announced that the next-generation .Net compiler, code-named "Roslyn," would be open source, many wondered if it would be released under Microsoft's own MS-PL. Instead, it was released under the Apache 2.0 license, which grants patent licenses to the work -- a major about-face for the normally protective Microsoft, since developers were previously leery of how much patent leeway Microsoft would give with its open-sourced creations.
The scope and utility of those tools has now been hugely broadened. A key selling point for Roslyn is that it turns the compiler into an API of its own -- which could in time have as much impact on Microsoft's software ecosystem as something like Node.js had with JavaScript.
This brings up another reason why the shift to open source for Microsoft's development tools makes sense. All of the really exciting developments in software culture in the last decade or more have been open source: Node.js, Hadoop, cloud- and infrastructure-related tools like Puppet and Chef (both now supported in Azure, hint hint), and so on. For Microsoft to continue to miss out on being a part of all this, or to only be a part of it by allowing use of it on its platforms, means Microsoft would continue to shirk the energy and creativity of the very developers Microsoft claims to prize so highly -- developers who have been working first and foremost outside of Microsoft's ecosystem.
2. Build once, run anywhere may finally be real, but developers may face new issues with it
The idea of a genuinely singular Windows platform has been more pipe dream and propaganda than reality for too long, but now, for the first time in Microsoft's history, it's real. But for developers, the reality of creating something that can run across Microsoft-powered devices is just the beginning of a new set of issues.