Microsoft’s future has become even less clear than usual since Steve Ballmer announced his resignation as CEO last year. The search for a replacement turned out to be protracted, most likely because Ballmer and his old pal Bill Gates still sit threateningly on the board. As Jean-Louis Gassée remarked, “any candidate willing to accept this road to failure is automatically disqualified as being too weak.” Consequently, Ford’s Mulally has already dropped out of the running. So we can look forward to many more months of corporate drama, quite likely churning through some ineffectual CEOs from internal recruiting as the company struggles to find its new long-term strategy.
Meanwhile, let’s take a look at more tangible things, namely the status and probable future of the WinRT API which underlies Windows RT and Modern/Metro mode in Windows 8. The status is quickly summarized: it’s a zombie. One by one, OEMs dropped Windows RT tablets from their product lineup, citing total absence of demand. A year after the launch of Windows 8, touchscreens remain an optional rarity among laptops. Apple ridiculed the concept of hybrid devices during its iPad Air reveal – and went on to enjoy some more excellent sales of its traditional product lines.
Stack Overflow questions demonstrate less interest in Windows Store than even in Windows Phone. The developers of the one prominent indie game on Windows Store, Skulls of the Shogun, discovered that Windows 8 exclusivity is a quick road to near-bankruptcy. And this weekend, HP proclaimed “Windows 7 is back by popular demand”, i.e. once again the default for all desktop systems. Having suffered through Windows 8 and 8.1 on a desktop, I can only approve. Noted Windows fan Paul Thurrott bluntly said that “Windows 8 is tanking harder than Microsoft is comfortable discussing in public.”
Windows 9 “Threshold”
Thurrott also reported some rumors about the next Windows version, codenamed “Threshold.” It’s going to be called Windows 9 and probably released in 2015, after another Windows 8.1 service pack in 2014. Apparently the long-awaited return of a (sort of) Start menu and the ability to run Metro apps in desktop windows arrive in Windows 9, rather than the speculated intermediate Windows 8.2 release. That’s interesting because it’s clearly a marketing decision – neither feature is difficult to implement, as demonstrated by small third-party utilities that have provided them for a while. Consequently, Thurrott sees the Windows 9 branding as a move to “distance itself from the Windows 8 debacle,” much like the fixed Windows Vista was released as Windows 7 to keep people from boycotting it on name alone.
Another long-expected move is the merger of the Windows Phone and WinRT APIs which should never have been incompatible in the first place. Microsoft’s Julie Larson-Green declared last November that the triple split in Windows Phone, Windows RT, and full Windows wasn’t going to last. The exact nature of the merger is as yet unclear, but I would expect WinRT to move towards Windows Phone which is by far the more popular platform (even though that’s not saying much). Here are two major benefits these changes should bring:
- Removal of jarring context switches between desktop and Metro apps. In particular, desktop users will remain in control of their desktop no matter what they’re doing.
- Unification of all mobile apps under one single API, from phones to tablets to mobile apps running in desktop windows. Only the legacy Win32 API remains separate.
These are certainly improvements but they come years too late, after the ill-conceived Windows 8 and the incompatible mess of WP7/WP8/WinRT. It’s also far less than I had hoped for when I had first heard about Surface and WinRT. The idea of one unified API serving hybrid devices is dead. With Win32 continuing to exist separately from WinRT, all desktop applications will simply continue to use Win32 and ignore WinRT. This means those applications will continue to work poorly on touch screens, and not at all on mobile devices which don’t support Win32. Conversely, since Win32 continues to monopolize Windows productivity software, WinRT will become the “Nokia API” for simple phone apps, as there’s no point trying to compete with superior Win32 software in productivity space.
From a developer perspective, I think the only way Microsoft could yet make hybrid Windows work is to add the required downscaling functionality to Win32. Make it mostly automatic, backward compatible, and easy to use, then hope for the best. Creating yet another dedicated API is probably a non-starter since developers have learned the hard way to distrust new Microsoft APIs, as David Sobeski argues in Trust, Users and the Developer Division:
The 2000s were all about breaking the platform every year. Developers got fatigue and would give up. It was the decade that changed the trust model for that every developer had with Microsoft. Eventually developers just gave up. […] At the end of the day, developers walked away from Microsoft not because they missed a platform paradigm shift. They left because they lost all trust. You wanted to go somewhere to have your code investments work and continue to work.
Silly old Visual Basic is not a language I miss, but Microsoft happily abandons even its best and most popular frameworks – see Nathan Fouts’ Reflections on XNA, or the comprehensive overview Microsoft versus Developers. For business applications, Jonathan Allen observed that “we have more options than ever before, and they are all dismal.” Abandoned .NET APIs or inadequate WinRT: take your pick! Unsurprisingly, developers prefer the safety of Win32 – or cross-platform solutions not controlled by Microsoft.
Speaking of which, Microsoft’s own applications are busy moving to cross-platform HTML5. This includes the well-established Office 365 but also – wait for it – Erich Gamma’s Visual Studio Online. Clearly even Microsoft doesn’t want to bet its future on WinRT. As a logical conclusion, the rumored Nokia “Normandy” handset puts a Metro look and Microsoft services on top of a custom Android installation. If profits are coming from device sales and service subscriptions anyway, the operating system becomes irrelevant.
Devices & Services
Microsoft does need a “devices & services” strategy to stay relevant with consumers. You cannot sell $100 (or whatever) Windows licenses to people who are used to free Apple and Android OS updates. Windows needs to be free, and that in turn requires profits coming from elsewhere – hardware, app store fees, service subscriptions. If Microsoft cannot get that business model to work then they will have to leave the consumer business entirely and only sell systems with service contracts attached, meaning almost exclusively to enterprises.
The devices part of this strategy is going to be difficult. The company is far too late in the game, as Android has already thoroughly commoditized mobile hardware. Apple hogs the luxury niche with gold-plating, superior mobile software, and a uniquely dedicated customer base. Microsoft might emulate the first but cannot hope to compete with the rest.
A profitable computing device by Microsoft would have to be a high-quality traditional laptop, with excellent build quality and no preinstalled crapware. That would leverage Microsoft’s own strength, namely the vast selection of existing desktop software. Touch input and digitizer pen would be quite welcome, too – imagine precision drawing and photo editing, comfortable web and e-reader navigation, or perhaps entering moves in strategy games. I’m still hoping Microsoft will get a clue and eventually make one of those.
However, any device focused on traditional desktop software needs a screen size well above 10″ and a good built-in physical keyboard. The true hybrid device represented by the Surface is an attractive idea, but only if and when there’s true hybrid software ready to go with it. Microsoft’s duct-taping of a phone OS with no software to an unchanged desktop did absolutely nothing to accomplish that. If I need separate apps – even web browsers! – for touch and desktop mode, I might as well use an iPad side-by-side with a Windows 7 laptop. At least I’ll enjoy Apple’s superior app store.
For true hybrid functionality, Microsoft would have to tackle the substantial challenge of adapting and enhancing Win32 for mobile devices, as noted above. I’m not sure if this is even possible, but the failure of Windows 8 has demonstrated that it’s pointless to introduce another new mobile-focused API. The competitors are too well established, including HTML5 as the emerging standard for new cross-device and cross-platform applications.
Instead, hybrid devices are more likely to emerge from the existing mobile duopoly. Despite its jokes about the Surface, Apple is supposedly preparing a bigger iPad Pro, and several PC manufacturers are building Android desktops with added window managers. Scaling up software that originated on phones and small tablets is certainly going to present its own challenges, but both platforms already offer a broad selection of productivity software that should readily benefit from bigger screens. I think it’s by no means unlikely that Android will be the “new Windows” – perhaps a bit clunky and ugly, but scaling quite happily from phones to desktops… and finally suited for hybrid devices.