Page 1 of 2
Windows 8 has hit a milestone - the Release Preview - now we should be looking at a more-or-less feature complete operating system. So how does it stack up to the requirements? Is it simply genius or simply stupid?
We have looked at the inner workings and structure of Windows 8 in other articles, but what about the user experience?
After all, if it provides a simply unmissable user experience, then us programmers should shut up and get coding.
But does it?
Is the programming pain worth it or just a waste?
To understand what Windows 8 is all about you have first off to imagine that it doesn't come with WinRT or Metro.
Now consider the headlines trying to sell it:
Windows 8, slightly better than Windows 7
Without the WinRT/Metro component there would be no need for a Windows 8, just a decimal point upgrade or perhaps even just a patch that few would notice.
Another interesting thought is that if WinRT/Metro had been done as a retro fit - a "retro Metro" if you like - then we still wouldn't have needed Windows 8 because it would run under Windows 7. Put simply there are a lot of small improvements in Windows 8 outside of WinRT/Metro but nothing that makes enough of difference to make you rush to upgrade.
So we cannot simply ignore WinRT/Metro. It is what the whole deal is about.
It is clear to anyone that the purpose of WinRT/Metro is to provide a sort of operating system for touch-enabled, tablet-style machines. In other words, devices with low computational power, a touch screen and a battery to worry about.
You can see WinRT and Metro as a good attempt at creating a tablet-based operating system - except that when running on an Intel-based tablet it drags the desktop along with it. Remember, the desktop isn't really touch-enabled and it isn't designed for this environment. On ARM tablets, WinRT/Metro begins to make more sense but even here Microsoft has had to drag a cut-down version of the desktop along.
Metro is for tablets - the desktop isn't.
So on a tablet you can have a good user experience as long as you stay with Metro and don't make too many trips to the desktop. If you have tried Windows 8 out on a touch enabled portable then you will find that it sort of works as long as you are using that portable for the sort of tasks that a typical tablet is used for - a bit of web surfing, picture viewing, social interaction, and runing a few apps.
Metro tries to make the desktop look like just another Metro app -- but this is mission impossible.
As a tablet OS WinRT/Metro is OK if you can ignore the ugly desktop it drags with it as a legacy partner needed to run legacy apps.
If you now focus on the use of Windows 8 on a desktop machine then things become more ridiculous - even if the desktop machine has a touch screen. In fact at the moment it is difficult to work out which is best: a touch enabled desktop machine or a mouse, even though mouse integration is not good.
The problem is that Metro and the desktop just don't fit together - the operational model is all wrong.
Consider WinRT/Metro and the compromises it has to make to be a potential tablet operating system. First off it has to do away with real multi-tasking - it is currently too expensive.
Of course, mobile operating systems like iOS, Android and even WP7 started out with very basic multi-tasking and as the hardware improved they added background tasks and no doubt in the near future, when the hardware allows they will all add true multi-tasking. Metro is dumbing down the Windows multi-tasking just so that it fits in with the current mobile hardware.
There is an argument that says that users don't want true multi-tasking for the apps they interact with. That is, a restricted sort of multi-tasking is actually better for the mobile environment and not just a matter of the hardware being too feeble.
What users want to do is have the foreground apps they are working with and a lot of suspended apps waiting to be reactivated.
I doubt users are really aware of the difference between this sort of app life cycle and a much simpler "loaded equals running" life cycle. As far as they are concerned there is just the apps they are working with and the rest are assumed to be getting on with things - or not.
The only real reason to not support full multi-tasking is to save battery life and to make best use of underperforming hardware. It makes sense on a phone and on a tablet - but on a powerful multicore desktop machine it is a step backward we just don't have to take.
Windows 1, 2 and 3 used cooperative multi-tasking and it worked its way up to full pre-emptive multi-tasking in Windows 98. For WinRT to just give up on it for the sake of battery life, in a machine that doesn't have batteries, seems a little sad.
The same argument applies to multiple overlapping Windows. Great on a desktop, but not so good for a phone or a tablet with a limited screen size. So WinRT doesn't support overlapping windows - just a small number of tiled windows per app and a foreground/ background arrangement.
OK for a tablet, but a desktop has plenty of screen real estate and copy and pasting information from information tracked in multiple windows is a common work mode.
There are lots of jobs that multiple monitors and multiple overlapping windows make easier, but they don't correspond to the typical use of a tablet.
We have become used to a rich desktop environment, even if you can argue that it has become a little too rich of late. Some simplicity would be welcome but not the single foreground app that Metro offers.
There is a lot more to be said about the restrictions that WinRT/Metro imposes simply because of the assumption of limited hardware, but the important point is that these also affect the desktop as it is the unwilling partner in the invasion of the mobile world.
Hence the loss of the Aero glass - the expensive graphics effects that can make Windows 7 look amazing. This is a very late change and one that is difficult to believe.
The rationale is that the flat boxy desktop should look more like Metro - only it still doesn't.
You have to conclude that the style and feature changes in the desktop which are ascribed to an attempt to unify the two environments is more about dumbing down the desktop so that it doesn't demand too much hardware.