What we know about Windows 8, mostly driven by the Developer Preview but also by various comments from Microsoft, is quite polarizing. The most controversial aspects are around the move to the new Metro app model and user experience. Many Desktop/Laptop users, primarily the kind of power users who would try out the Developer Preview, feel that Microsoft is forcing them into a world that was designed specifically to fight the Tablet war with Apple’s iPad. They are wrong, and I’m going to explain why. Before I begin I’m going to state that I don’t think I’m revealing anything Microsoft hasn’t already let out of the bag or is obvious from market data. I’m doing color commentary and tieing together disparate comments made over the course of more than a decade to paint the full picture.
Nearly all the major technical decisions in Windows 8 were made before the iPad was introduced. The new app model (WinRT et al): before. The new user interface (MoSH): before. Focus on power and other fundamentals: before. Support for SoC, including ARM: before. I’m going to go through each of these and give some history and rationale, but before I do let’s have a little candid discussion about the state of the Windows PC business.
Windows Vista reached General Availability in January 2007, the last release of Windows to assume that most consumers and businesses would rapidly replace their existing PCs with newer more powerful ones. That turned out to be one of the many bad decisions made around Vista, which ran particularly poorly on the installed base of systems. PC buying patterns were changing, with customers keeping PCs for many years since there were few compelling apps requiring more powerful PCs. Later in 2007 Netbooks (and later Nettops) were introduced, initially running Linux, with the idea that most PC usage was for web browsing and thus low-cost devices with minimal memory and disk were sufficient for many scenarios. Microsoft responded by offering OEMs a lower priced edition of Windows XP, which became the most popular operating system on Netbooks. Windows 7 Starter Edition later took over this niche. Besides Netbooks, the price of traditional desktop and notebook PCs was also declining under intense competition. In response OEMs reversed the trend of increasingly packaging higher-end Windows editions and started to package lower end editions (e.g., today PCs intended for small business use tend to come with Windows Home Premium rather than the more appropriate Windows Professional). The net impact of these changes was that the Average Selling Price of Windows would decline more than could be made up by growth in unit volumes. In other words, the Windows PC business more or less peaked. Also in January of 2007 Apple announced the iPhone, launching the Consumer Smartphone business. In July of 2008 Apple launched the AppStore, turning the iPhone into a personal computing device and giving consumers yet another reason to put off replacing their old PC. By then Microsoft was busy developiong Windows 7 with an eye towards shoring up the PC market in light of Windows Vista’s failure. Windows 7 was an excellent release, but did little to expand the Windows business opportunity. If one were to let the course of events continue, then the best one could hope for was a stagnant business tied to the slowing PC replacement cycle.
Microsoft Research had done a lot of work on Natural UI, including Touch, and brought the Microsoft Surface to market in 2007. Well before 2007 OEMs had been pressuring Microsoft for more Touch support, not because they wanted to introduce Tablets but because they saw touch-enabled screens on Desktop PCs as being an attractive way to kick-up PC volumes (both as a reason for additional PCs in the home and as a way to speed up the replacement cycle). HP did a lot of custom work to bring the TouchSmart to market with Vista in January 2007. Other OEMs have waited for Microsoft to fully embrace Touch, and I know of at least one that was extremely frustrated (back in 2007!) that Microsoft didn’t make this a priority. Windows 7 improved the underlying support for Touch so that OEMs could more easily roll their own user experience and apps could incorporate multi-touch, but it did little to modernize the Windows user experience for touch-enabled devices. Windows 7 also has support for other natural UI capabilities, like speech recognition (introduced in Vista), but again the basic user experience hadn’t changed to make that capability more useful.
As Windows 7 development was wrapping up the Windows team began serious discussions about Windows 8. Steven Sinofsky talks about it as a “re-imagining”. One of those discussions was around modernizing the user interface. For a few years the corporate technical strategy had called out Natural UI as a key direction for the company, OEMs were clamoring for it, there was excitement around Microsoft’s niche Surface product, and the iPhone had proven that multi-touch was an attractive paradigm for use in a high volume general purpose product. And so many months before the iPad was announced, the Windows team was discussing a Modern Shell (MoSh) to replace the user interface whose origins dated back to Windows 95. One of the requirements for MoSh was that it had to take Natural UI, and particularly Touch, into account. I have no idea how much the Windows team was talking internally about Tablets at that point. Personally I believe they were still dismissive of them, as many external analysts were (even after the iPad launch). But the key point I’m making is that MoSh wasn’t being driven by Tablets, it was being driven by the need to modernize the Windows user experience for Desktops and Notebooks! And yes those would have keyboards and mice, and increasingly they’d also have touch screens, and microphones, and other Natural UI capabilities (e.g., there is evidence that some PCs will have built in Kinect hardware). Today we know MoSh as Windows 8’s Metro user experience. History shows that Microsoft isn’t out to sacrifice the desktop and notebook user experience to pursue the tablet market, they are trying to bring Windows user experience for desktops and notebooks into the 21st century.
Let’s step into another part of the “Windows 8 is just for tablets” controversy, the Windows Runtime (WinRT). Microsoft recognized it had a problem with the Windows application model at least as far back as the late 90s and started to look for ways to fix it. Although there were some modest fixes made (e.g., Windows XP introduced side-by-side support to reduce the DLL Hell problem) there was general recognition that you couldn’t fix the app model without completely breaking it. For Longhorn it was decided to introduce .NET as the new application model for Windows. Unfortunately .NET 1.0 hadn’t been designed with this in mind, and the attempt to prematurely make it the app model for Windows failed. This was a primary reason for the “Longhorn Reset”, which removed both .NET and anything that had depended on it (e.g., WinFS) from what became Vista. Vista did not introduce a new app model, and then Windows 7 was so focused on fixing the existing Windows product that it left introducing a new app model for the future. However, throughout Windows 7 development the Windows team continued to discuss a new app model. Late in the cycle, when the re-imagining process began, the decision on a new app model was again on the table. However much had changed since Longhorn. On one hand .NET was more mature, but on the other the single largest community of developers in the industry was programming in HTML and Javascript. Not only that, but managed code (be it .NET or Sun/Oracle Java), hadn’t completely taken over the world and native C++ usage was still high. And so Microsoft settled on a new app model that was itself fully native to the platform (rather than a layer on top of Win32, as .NET in Longhorn would have been), supported all three programming styles (.NET, HTML5/Javascript, and native mode C++), used modern packaging and install/uninstall techniques, etc. Again, this change dates back to the 90s and recognition of all the issues with Windows’ app model. When you look at the intent of the new app model it is to address problems like security and system stability in Windows overall, not a need to introduce something different for Tablets. And most of the key decisions were made before the iPad was introduced and before Microsoft itself developed a renewed interest in tablets.
What about ARM support? People will recall that Microsoft’s interest in ARM support dates back to Longhorn and a project called LongARM. ARM processors, particularly the DEC (later Intel) StrongARM had become the primary processor for Microsofts Pocket PC and Windows Mobile efforts (using the underlying Windows CE operating system). ARM clearly offered a path to lower cost higher battery life personal computers, and Intel’s failure to adequately respond likely made Microsoft feel it had to add ARM support. And of course Microsoft also had a long term strategic interest in using the mainstream Windows kernel on phones, where ARM had become the predominant processor. And so ARM support was reintroduced as part of the re-imagining of Windows. Now was this purely a Tablet play? No, recall that Netbook manufacturers were introducing ARM-based Netbooks making this a general purpose PC play. But with the complete collapse of the Netbook market ARM support now appears to be purely a Tablet/Smartphone play (at least for now).
And so the interesting thing is that all three initiatives within Windows 8 that make people think it is focused primarily on Tablets predate the introduction of the iPad, and were focused on revitalizing the traditional Desktop and Notebook PC market! Now as the Windows 8 project progressed the iPad did come on the market and prove that Tablets had a place, and a very substantial one at that, in the personal computing market. That meant they were both a threat to the Windows business and an opportunity. Fast growth of Tablet sales means that Microsoft has an opportunity to get Windows back on a decent growth path by jumping on that bandwagon. So I do think that as the Windows 8 project has progressed plans have been tweaked to focus them a bit more on making sure they nail the Tablet scenarios. But overall the goals of the new user interface, the app model, and even ARM support are to modernize Windows for the entire spectrum of PCs, hopefully driving a faster replacement cycle (particularly for consumers), as well as capturing fast growth in newer form factors such as Tablets.
Now there are scenarios for which Microsoft chose not to make changes in Windows 8. For example, the new app model does not yet offer background processing suitable for long running computations. They’ve left that to the Win32 world (on x86 processors) for now. But no doubt WinRT will add support for long-running background processing tasks in a future release. That, for example is the kind of tradeoff Microsoft made as it focused the release a bit more heavily on Tablets and other consumption-oriented PCs. But overall don’t think of the new app model as Tablet specific, it is Release 1.0 of Windows long term app model that will eventually be applicable to all scenarios Windows addresses.
How about the real controversy, the complete switch to MoSh rather than allowing desktop and notebook users to opt for a traditional cascading start menu experience? Well, we still don’t know (although it is looking unlikely) if Microsoft is actually going to allow this in some high-end Enterprise edition. I think that what has happened is that as Microsoft gained experience with MoSh it decided to go all in and move the entire community to the modern experience. This is not unlike what happened with the Ribbon in Microsoft Office 2007. And while that too caused an amazing amount of controversy, and frustration with the re-learning long-time Office users had to go through, it has proven a very beneficial move. The Office business is quite strong, somewhat of a surprise given the weakness in the underlying PC business it depends on. Yes this may slow adoption of Windows 8 in the desktop and notebook markets, particularly for enterprise use. But as I and many others have noted enterprise adoption of Windows 8 for desktops and notebooks was always likely to be tepid as a result of enterprises just now completing their deployments of Windows 7. A forced move to MoSh likely doesn’t alter that dynamic much. And it will cause consternation to those who like the classic Windows user experience and just wish Microsoft would tweak it a little. But then there are still people who aren’t fans of GUI and operate in command line mode as much as possible. You can’t please everyone, and in the end the faster Microsoft moves people to the modern experience the better your long term prospects.
So Windows 8 isn’t about Tablets, it’s about modernizing Windows and reinvigorating the Windows business overall. Most of the work in Windows 8 benefits the entire user base, independent of the new user experience, app model, or ARM support. And all three of those are meant to make and keep Windows relevant across the entire personal computing space in the years and decades to come. The way I think people should interpret Windows 8 is that the Windows business was at the precipice, about to start a prolonged decline. Microsoft decided it was time to go big or go home. They are going big. They could still fail of course, particularly if the grumbling about MoSh turns into broad rejection by customers. But at least it will be a fast fail compared to Windows likely fate if they hadn’t made the attempt. And I don’t think they are going to fail.