Yesterday Microsoft released a video showcasing the user experience of the next version of Windows, codenamed “Windows 8” . For more information, check out the accompanying press release or this article by Paul Thurrott with a run-down of the most important facts.
This new UI is obviously not meant to be used on your boring, old office PC, but instead on “a new generation of touch-centric hardware”, presumably tablet-style devices, regular PCs with touch enabled displays and maybe even things like the Surface. It looks really cool, as it based on the Metro Design Language that has been used for Media Center, Zune and most recently Windows Phone 7.
I am a big fan of Metro and feel its tile-based UI has a lot of advantages over other competitor’s grid of icons approach. I’ve talked before about how I feel that a grid of icons no longer cuts it, and that using desktop gadgets or now live tiles is the preferable way to make the desktop more useful. Check out this demo to see what cool things the British Airways app does with the new and improved live tile technology in the upcoming Mango release of Windows Phone. I’m really excited to see these kinds of things come to the desktop in Windows 8.
But some questions remain
Even though the UI looks great, there are a couple of things that have me concerned. For one, the gestures used to switch between applications and the like shown in the video to me don’t seem very discoverable or intuitive for that matter. This, I think, is the most serious problem with touch-based UIs, as there are but a handful of gestures that are really natural: tap (obviously), pinch to zoom, swipe to scroll, double-tap as a replacement of double click and maybe tap-and-hold for a context menu, although that last one is already pushing it. Any other functionality exposed via gestures would probably be better exposed via a menu or other kind of on-screen control.
Using web technologies on the PC seems even more strange considering there are other (in my mind superior) options already available to developers today, namely Silverlight and Windows Presentation Foundation (WPF). WPF, in my mind, should be the premier technology for writing any kind of Windows client application, because its powerful and allows developers and designers to write really engaging applications that can look just like those shown in the Windows 8 demo.
I’ll write up another article about the limitations of Silverlight that I have found trying to write my first Windows Phone app, but it still is a very nice piece of technology. Even though there have been rumors that Microsoft is going to phase out Silverlight in favor of HTML 5, which they deny. If you asked me, I wouldn’t mind seeing Silverlight replaced by HTML 5 on the web side and WPF on the rich client side. Silverlight to me occupies a weird middle spot: HTML 5 is clearly the way to go for web applications that should run on a variety of platforms and not require a plugin (as Silverlight does). And even though Silverlight supports so called “out of browser” applications, I think one should rather write “real” applications that use the full power of WPF and have those update themselves in the background sort of like Chrome does (which seems already possible today though it’s not as widely used as it should be).
Dreaming of: one computer in multiple roles
Considering that this new UI in Windows 8 is not going to replace the traditional desktop for certain scenarios, here is what I would like to see: Imagine an ARM-based, Windows 8 powered tablet that was light and small enough so you could it carry around most of the time (maybe a form factor like that of the Amazon Kindle). Such a computer would be perfect on the road for some light email, web-surfing and the like, but for serious work™, one would obviously want a full-sized keyboard, mouse and monitor(s).
How cool would it be if there was some kind of a dock or connector one could plug their tablet into, attach all the devices to and use that setup in lieu of a regular computer. It would be sort of like the laptop dock for Motorola’s Atrix phone. Maybe one could even integrate a co-processor or some “power boost” into these workstations (sort of like one can today off-load some calculations to the graphics card if one is available). This way, the device could have a low-power, high-efficiency processor for on the go and one still had more computing power available when needed for work. And when docked the touch screen of the tablet could be used either as a giant track pad with multi-touch and gesture support or as a means to take notes with a pen (like on the Courier), giving the user a choice to use whatever kind of input was most suitable for a given situation.
Imagine the possibilities if these connectors were standardized and everybody could bring in their tablet or other little handheld device and connect it to whatever display happens to be available. And given that Windows 8 supports these different user experiences, one could then pick what ever mode of operation was best for the given situation: the tile-based touch interface on the go, a traditional desktop at work and maybe the media center interface at home in the living room.
An now combine that with the cloud
One could go even farther and combine that with the cloud. Maybe one doesn’t want to carry around all their data, so that could be up in the cloud. I could even imagine applications that I have purchased stored in the cloud and then downloaded on demand when I need them. This way I could have a core set of applications on my device; just the stuff I need on the go or when internet connectivity may be limited. And when I am at work and I need some specialized application, that could be streamed to my workstation either from the public could or from the company’s private cloud (something like Microsoft’s RemoteApp feature in Terminal Services). These apps could be keep running in the background and when I disconnect and later reconnect they could be there again in the same state as they were when I left them. No longer would I need to spend half an hour every morning starting up all the applications I need for the day.
I am aware that a lot of the stuff in this article is wishful thinking. But considering the different pieces of technology that are already available today, powerful portable devices, docks that expand their functionality, cloud storage, remote desktop et cetera, I don’t think what I have ben describing is that far fetched. And given that Microsoft is a player in one way or another in all of these fields (mobile devices, PCs and servers), I think they are uniquely positioned to make this a reality. I sure hope they or someone else does…