Open-Source Microsoft Part II - Seeds for the Future
In the previous article, I examined Microsoft's announcement that it will open-source .NET, its impact on customers, and its more important impact on Microsoft's business lines. In sum, I believe that Nadella may be trying to change the culture at Microsoft from one in which they depend on customers being forced to stick with its Windows line to one wherein Microsoft is driven by market forces to develop products and services that customers actively want to buy. It will hurt in the short-run as many customers who have applications written on .NET switch to non-Windows platforms but stay with the same apps, but will save the company in the long-run by giving it back its "win-the-market" competitiveness and innovation.
There is, however, another angle to the story: tech firms. Tech firms, and especially startups, completely and totally eschew Windows for production. Yes, they will use Windows on the desktop - although I heard yesterday that Google bans Microsoft across the board - and in the IT server room for Exchange and maybe SharePoint. But they would not be caught dead running production applications, let alone building their own next-generation offerings on Microsoft.
This is true for large established firms such as Facebook and Google, but even more so for the aspiring future companies, the startups. Not only is Microsoft too expensive - and despite Microsoft startup programs, almost no smart company is lured by their "free samples" that tie them in for the long-haul - it is a kiss of death. Smart engineers in Silicon Valley, New York, Los Angeles and Tel Aviv do not want to work on Microsoft. They want Rails, or Node, or Python; but Microsoft? "Sorry, I have a better offer."
As a matter of fact, many venture capitalists will not fund companies built on a Microsoft stack. I have personally assisted companies in transitioning from an early Microsoft stack (servers, database, applications or some combination) to open-source. The motivation was as much, "we are not getting serious funding from VCs" as "we need to scale our infrastructure and don't believe we can do it on Windows."
There are many startups; very few will survive to adulthood. But many of the engineers and executives in these startups will go on to found or work in others, while others will go work inside existing technology firms or IT divisions of non-technology companies - health care, retail, financial, travel, etc. If this generation is anti-Microsoft wherever they go, Microsoft's immediate future may be secured through funneling .NET customers onto Windows platforms, but its long-term is very questionable. Eventually its current champions will move on, and who will pay their licensing fees then?
By opening up .NET and putting it on multiple platforms, Microsoft is exposing it to the inspection and hacking of thousands of smart engineers across the world, working in very different and more diverse environments than Microsoft's research centres in Redmond, WA, or Herzliya, Israel. Microsoft is trying to make .NET interesting to smart and, in the future, influential people.
As with existing customers, this is a very big risk. If .NET is poorly written, insecure, or bloated, not only will it be avoided by many in the larger engineering world; it will be mocked. But eventually it may be improved, and respected for doing so.
Will it be sufficient? Will Microsoft's image as a platform to be avoided by dynamic engineers change as it becomes open? I don't know. It has a long uphill battle to climb, but then again, Apple was almost wrecked when Jobs took over, and a niche but decent company before the iPod was launched. Stranger turnarounds have happened.
Whether exposing Microsoft's insulated people to market forces to force upon them a culture of winning business, or making it interesting to the current and future technology leaders, Nadella has to be respected for taking serious risks with the present of the company to build its future.