The Burning Question Microsoft Needs To Answer This Year
The biggest change is that Microsoft is no longer the Windows-first company.
In the old days, Microsoft employees and watchers often talked about the Windows "strategy tax." Other parts of the company would propose a particular product or feature, only to have it killed by higher-ups because they wanted to reserve that feature for Windows, or were worried that it would somehow hurt Windows sales.
But in 2014, that attitude seemed to disappear.
Microsoft released touch-enabled versions of Office for competing platforms (Apple's iOS and Google's Android) before similar versions for Windows tablets and phones. Nadella named "productivity" as Microsoft's key focus, meaning both at-work products like Office and Exchange email, as well as personal-productivity products like OneDrive, Skype, and Outlook.com. Nadella also put the cloud at the center of Microsoft's strategy, naming Office 365 (a mostly online, subscription-based version of Office) and Azure (Microsoft's platform for cloud development) as vital.
(Yes, I know that many of these changes actually started under Ballmer, but they saw daylight under Nadella, or were expressed more clearly by him. I think he deserves credit for being crystal clear where Microsoft's heart now lies and for allocating resources to match his words.)
Windows isn't unimportant, but it's no longer top dog.
Some Windows devotees aren't all that pleased about this development. Paul Thurrott of the Supersite for Windows wrote today that Microsoft needs to put out a "clear sign" that it will include its own mobile platforms right alongside iOS and Android development. Otherwise, he warns Microsoft, "you're going to see the first real exodus of your most faithful users in 2015."
In other words, Thurrott wants Microsoft to answer the question, "why should people keep choosing Windows, particularly for mobile devices?"
I think Microsoft has already lost the mobile platform battle. It can still thrive in tablets and touch-enabled PCs, but Windows Phone has been so far behind for so long, Nadella is smart to send Microsoft's apps to the largest possible audiences first - like every other app developer.
But I do think Microsoft needs to answer a similar question for another key constituency: developers.
That question: Why should developers keep building on Microsoft's platforms?
That was an easy question to answer 15 years ago. In 2000, most of the computing devices sold ran Windows. If you wanted to make money selling applications, you built for Windows. You could build web apps as well - this was the dot-com boom, after all - but you had to make sure that those web apps ran on Internet Explorer, the built-in Windows browser.
Microsoft platform developers have suffered a lot of whiplash since then. For instance, in 2000, Microsoft said that its .NET platform was a "bet the company" initiative. Parts of that platform are still going strong, but others - like the online services aspect - were abandoned on the way. A few years later Microsoft made a big deal about a web development platform called Silverlight that was supposed to be an answer to Adobe's Flash, and was supposed to form the basis of Microsoft's mobile development platform. That's dead now, too.
With Windows 8, Microsoft introduced yet another way of doing things: the Windows RunTime, or WinRT, which was for building touch-enabled Windows apps that could be sold through the App Store. (Confusingly, Microsoft also released a product called Windows RT that was the version of Windows for tablets running on ARM processors, which are commonly used in mobile devices.)
The idea was that developers would flock to WinRT so they could create apps for the hundreds of millions of touch-enabled Windows 8 PCs that would sell over the next couple of years. But Windows 8 didn't do very well, and a lot of developers stuck with older platforms that would let them build for traditional versions of Windows. Those apps worked fine on Windows 8 as well, so why switch?
Meanwhile the question, "why Microsoft?" is a lot harder to answer for developers today. They can develop for Android and iOS and reach more than a billion users right on the phones they carry with them everywhere. They can develop using the latest trendy web tools and tweak their web apps slightly for each browser, and reach more than a billion online users.
Windows still ships on more than 300 million devices per year. But developing for Windows is no longer necessary to make money.
So now what?
Last April at its Build developers' conference, Microsoft began laying out the path for the next generation of its development platforms. There was a lot of new information there. For instance, Microsoft began to make noises about Windows 10, which is meant to be a unified underlying platform for phones, touch screen tablets and PCs, and regular PCs. (Even if the actual versions of Windows for each device will still be slightly different.) It began talking about development for the "Internet of things" - small embedded devices. There were some new pieces that ran in Azure, Microsoft's cloud. And there was talk of a unified app development platform that would let developers build for Windows and non-Microsoft platforms at the same time.
The most important thing Microsoft can do in 2015 is to clarify and move forward with this vision.
The pieces are all there. The Microsoft development platform of the future could look something like this:
- A single set of tools...
- That will make it easy for developers to write an app with one set of basic underlying code for all platforms and device types...
- And will encourage them to use Microsoft's Azure cloud service for things like data storage and processing, authenticating users (that is, signing them in and making sure they are who they say they are), and other security-related features....
- And make it easy for their apps to interact with Microsoft's other cloud services like Bing, OneDrive (storage), Office 365, and Skype...
- And make it easy for their apps to interact with other embedded "Internet of things" devices like wristbands or refrigerators or whatever else...
- And make it easy to modify the app so it can run on different chip types (like ARM versus Intel), and display appropriately on different screen sizes (phone, tablet, PC) and input devices (touch, non-touch)...
- And make it relatively easy to modify the same app to run on iOS and open source Android, and possibly on Google's flavor of Android (which has more services baked into it).
It's a tall order, but as Steve Ballmer knew, developers are one of the most important constituencies Microsoft has. In Microsoft's heyday, they built the apps that made Windows useful.
In the new Microsoft, they'll have to build the apps that make a whole bunch of Microsoft devices and services useful together.