X
Tech

Windows 8 will run Windows apps, even on ARM (kind of)

Windows has to be all things to all people, and that causes fights. The fights that the Windows 8 demos shown this week are about old versus new, thin versus rich, touch versus mouse, innovation versus legacy investment - and they're pretty much all missing the point.
Written by Simon Bisson, Contributor and  Mary Branscombe, Contributor

Windows has to be all things to all people, and that causes fights. The fights that the Windows 8 demos shown this week are about old versus new, thin versus rich, touch versus mouse, innovation versus legacy investment - and they're pretty much all missing the point. What Microsoft is doing isn't just bringing the design language of Windows Phone 7 to Windows tablets and touch screens (a design language WP7 and Zune developed from the Windows Media Center interface which drew on personal media players based on Windows CE), and it isn't just acknowledging that Web apps have become popular for developers and mainstream users and that ARM means better battery life than x86 but less powerful apps… It's a hugely ambitious attempt to marry all of these worlds and worldviews together. No wonder there are fights breaking out at the engagement party.

Web developers and mobile developers are getting the love this week from Microsoft, because that's what's completely new for Windows 8; a touch interface that has the fluidity and elegance of an interface designed for touch from the ground up, plus new power for Web apps to interact with Windows features and services - Webcams, storage, file systems and other areas that have been off-limits to the browser before.

That doesn’t mean that Windows 8 won't run all the goodness of rich Windows apps, written in .NET or C++ or C# or VB or whatever programming language you already use to get access to those features and services. It will. Will it have new features for those programming models? Probably, but as they're not competing with the iPad market they're not covered in the announcement of Microsoft's challenge to the iPad - which is about a lot more than competing with a tablet that's thinner both physically and in functionality than a PC or Mac. Windows 8 is a 'best of both worlds is better' response, so yes, there will be goodies for .NET developers. And yes, many of those will be on Windows 8 for ARM, because Office will be on Windows 8 for ARM and you need all those underpinnings for Office. You won't be able to take an existing Windows binary and run it on Windows 8 for ARM as a user - but I'm willing to bet you'll be able to take the code and compile it for ARM without completely rewriting it. If I'm wrong I'll hit myself over the head with a copy of the thickest Petzold Windows programming manual I can find (before I turn it on the Windows team).

The other question is will you want to? Is 'best of both worlds' closer to 'dog's dinner' as some reactions to seeing 'old-fashioned' current Windows apps running alongside the lean touch apps have suggested? Given that I still use rich, traditional, locally-hosted, power of the CPU and GPU at my fingertips apps every day, on a touch screen, I'm going to repeat that I'm glad to have both. I wouldn't want to throw away all the apps on my Mac and only use iPad apps for everything and I want to get the option of Windows apps on a Windows 8 tablet as well. Yes, the interfaces are busier and more cluttered, or fuller featured as we used to say. No, they're not ideal for touch. Except, there's a hugely clever feature in Windows 8 that does come directly from Windows Phone 7; fuzzy hit targeting, centroid detection or - as I think of it - automatic fat finger compensation.

If you've used Windows Phone 7 to type anything more than a phone number you already know and love this. As you type, the keyboard predicts what word you might be typing and what letters you're likely to hit next to type it and while all the keys stay the same size, the 'hit target' of touch area that matches that key gets invisibly larger. So after you hit 'lar', the G key is bigger so it's easier to hit. Imagine that applied to the menu you're trying to tap with your finger. If it's done right that will mean you select the Close window button when you mean to instead of opening the Help menu. Instead of putting up with their big old Windows interface for touch while waiting for developers to get the UI right for us, we'll be able to use it without longing for a mouse or pulling out the pen. I call that the best of both worlds, because I want a new version of Windows to give me more - not take away what I need. What it needs to take away is complexity and until we get to try a beta out we can't judge that, so could we please wait until we actually have something to form an opinion from?

What we do know; Windows 8 won't make you use a mouse or .NET or anything else you already have in Windows as a user or programmer - but it won't take them away from you either, on x86 or on ARM. Mary Branscombe

Editorial standards