Friday, October 26, 2012

Windows 8 and the Surface

I don't have a Surface yet :-( - apparently U.K. customers are only getting them shipped today, while North American customers were getting theirs dispatched to arrive today. However, I've have been playing with Windows 8 for a while now, and have set it up on a VM so I can do development for the Surface. I initially disliked Windows 8, which going by on-line comments seems to have been most people's reaction, however I'm beginning to appreciate it now. The key thing to realise when using Windows 8 on a standard PC is thet you need to use the keyboard more and the mouse less - and that is great for productivity. I can't quite see the point of Window Store apps on a desktop (or decent laptop) computer - I'd rather have an option at install time to have a Desktop or tablet orientated default interface, however the new tile start page is actually a big improvement on the start menu when using the keyboard. Of course, having Windows Store application support does mean that the Surface Pro can use an identical OS to desktop and laptop computers, which makes a lot of sense.

The main criticism of the Surface and Windows RT so far seems to be the lack of apps, however these critics are rather missing the point. Of course there are very few RT applications when most developers couldn't get their hands on an RT machine for testing before today! However, creating applications for MetroWindow Store and Windows RT should be relatively painless. The previous ARM version of Windows (WinCE) which I used on a couple of HP Jornadas required major rewriting of not only the user interface, but also C++ libraries to port an application from the desktop. With Windows RT standard C++, C# and VB libraries will all work unmodified, and only the user interface aspects of an application need changed. If your code base is well designed, with nice orthogonal modules and well defined tiers then creating an RT version of an application should be fairly straight forward. Although the Windows Store is fairly empty at the moment, just like the Android and iOS ones were when they started, I expect it will fill much more quickly, and more importantly, and the quality of the initial offerings from the ISVs who're just getting their hands on test machines today (or on Monday for those of us in the U.K.) are likely to be serious quality applications because they can build on existing code.

Anyway, I might blog about how good or bad the Surface and Windows RT really are next week, when I (hopefully) will actually have one...