As any IT admin will tell you users aren’t really the best at coping with change. It’s understandable though, for many people the PC that they use in their everyday work is simply a tool with which to accomplish their required tasks, nothing more. Fundamentally changing the way that tool works means that they also have to change the way they work and often this is met with staunch resistance. As such it’s rather difficult for new paradigms to find their feet, often requiring at least one failed or mediocre product to be released in order for the initial groundwork to be done and then the next generation can enjoy the success that its predecessor was doomed to never achieve.
We don’t have to look that far into the past to see an example of this happening. Windows Vista was something of a failure commercially which can be traced to 2 very distinct issues. The first, and arguably the most important, was the lack of driver support from vendors leaving many users with hardware that simply couldn’t run Vista even if it was technically capable of doing so. The second was the major shift in the user experience with the start menu being completely redesigned and many other parts of the operating system being revamped. These 2 items were the 1-2 knock-out punch that put Vista in the graveyard and gave Windows 7 one hell of an up hill battle.
Windows 8, whilst not suffering from the driver disaster that plagued Vista, revamps the user experience yet again. This time however it’s more than just a simple splash of eye candy with a rearranging of menu items, it’s a full on shift in how Windows PCs will be used. Chief amongst these changes is the Metro UI which after being field tested on Windows Phone 7 handsets has found its way onto the desktop and any Windows powered device. Microsoft has made it clear that this will be the way they’ll be doing everything in the future and that the desktop as we know it will soon be fading away in favour of a Metro interface.
This has drawn the ire of IT professionals and it’s easy to see why. Metro is at its heart designed for users, taking cues from the success that Apple has achieved with its iOS range of products. However whilst Apple is happy to slowly transform OS X into another branch of their iOS line Microsoft has taken the opposite approach, unifying all their ecosystems under the one banner of Metro (or more aptly WinRT). This is a bold move from Microsoft essentially betting that the near future of PC usage won’t be in the desktop sense, the place where the company has established itself as the dominant player in the market.
And for what it’s worth they’re making the right decision. Apple’s success proves that users are quite capable (and willing) to adapt to new systems if the interfaces to them are intuitive, minimalistic and user focused. Microsoft has noticed this and it is looking to take advantage of it by providing a unified platform across all devices. Apple is already close to providing such an experience but Microsoft has the desktop dominance, something that will help them drive adoption of their other platforms. However whilst the users might be ready, willing and able to make the switch I don’t think Windows 8 will be the one to do it. It’s far more likely to be Windows 9.
The reasoning behind this is simple, the world is only just coming to grips with Windows 7 after being dragged kicking and screaming away from Windows XP. Most enterprises are only just starting to roll out the new operating system now and those who have already rolled out don’t have deployments that are over a year old. Switching over to Windows 8 then is going to be something that happens a long way down the line, long enough that many users will simply skip upgrading Windows 8 in favour of the next iteration. If Microsoft sticks to their current 3 year release schedule then organizations looking to upgrade after Windows 7 won’t be looking at Windows 8, it’s far more likely to be Windows 9.
I’m sure Microsoft has anticipated this and has decided to play the long game instead of delaying fundamental change that could put them seriously behind their competition. It’s a radical new strategy, one that could pay them some serious dividends should everything turn out the way they hope it will. The next couple years are going to be an interesting time as the market comes to grips with the new Metro face of the iconic Windows desktop, something which resisted change for decades prior.
Last week saw the much talked about Microsoft BUILD conference take place, the one for which all us developers tentatively held our breath wondering what the future of the Microsoft platform would be. Since then there’s been a veritable war chest of information that’s come from the conference and I unfortunately didn’t get the time to cover it last week (thanks mostly to my jet setting ways). Still not writing about it right away has given me some time to digest the flood of information and speculation that this conference has brought us and I personally believe that Windows 8 is nothing but good news for developers, even those who thought it would lead to the death of their ecosystem.
For starters the project codenamed Jupiter has an official name of Windows Run Time (WinRT) and looks to be an outright replacement for the Win32 API that’s been around since 1993. The big shift here is that whilst Win32 was designed for a world of C programmers WinRT will instead be far more object-oriented, aimed more directly at the C++ world. WinRT applications will also use the XAML framework for their user interfaces and will compile to native x86 code rather than to .NET bytecode like they currently do. WinRT applications also do away with the idea of dialog boxes, removing the notion of modal applications completely (at least, in the native API). This coupled with the fact that any API that takes longer than 50ms to respond being asynchronous means that Metro apps are inherently more responsive, something that current x86 desktop apps can’t guarantee. Additionally should an app be designed for the Metro styled interface it must only use the WinRT libraries for the interface, you can’t have mixed Metro/Classic applications.
If you’re after an in-depth breakdown of what WinRT means for developers Miguel de Icaza (of Mono fame) has a great breakdown here.
WinRT will also not be a universal platform on which will provide backwards compatibility for all current Windows applications. It’s long been known that Windows 8 will be able to run on ARM processors but what wasn’t clear was whether or not current applications would be compatible with the flavour of Windows running on said architecture. As it turns out x86 applications won’t work on the ARM version of Windows however applications written on the WinRT framework will run on every platform with only minor code changes (we’re talking single digit lines here). Those legacy applications will still run perfectly well in the Desktop mode that Windows 8 offers and they’ll be far from second class citizens as Microsoft recognizes how things like their Office suite don’t translate well to the tablet environment.
Taking this all into consideration it seems like there will be a line in the sand between what I’ll call “Full” Windows 8 users and “Metro” based users. Whilst initially I thought that Jupiter would mean any application (not just those developed on WinRT) would be able to run anywhere it seems that only WinRT apps have that benefit, with current x86 apps relegated to desktop mode. That leads me to the conclusion that the full Windows 8 experience, including the Desktop app, won’t be available to all users. In fact those running on ARM architecture more than likely won’t have access to the desktop at all instead being relegated to just the Metro UI. This isn’t a bad thing at all since tablets, phones et. al. have very different use cases than those of the desktop but, on the surface at least, it would appear to be a step away from their Three Screens vision.
From what I can tell though Microsoft believes the future is Metro styled apps for both desktop and tablet users a like. John Gruber said it best when he said “it’s going to be as if Mac OS X could run iPad apps, but iPads could still only run iPad apps. Metro everywhere, not Windows everywhere.” which I believe is an apt analogy. I believe Microsoft will push WinRT/Metro as the API to rule them all and with them demoing Xbox Live on Windows 8 it would seem that at least on some level WinRT will be making it’s way to the Xbox, thereby realizing Microsoft’s Three Screens idea. Whether the integration between those 3 platforms works as well as advertised remains to be seen but the demo’s shown at BUILD are definitely promising.