Tag Archives: windows

Windows8-BSOD

The Coming War

I like to think of the various technology companies as being armies on a battlefield. This is inevitably going to be a really strained metaphor, as battles as typically fought between only two armies, but let me run with it.

Each army has some advantage, home turf it wants to protect. Apple sits in a curve of a river, defended by fast-flowing water. Google has a spot on a hilltop, with a glorious view. Microsoft has a pass through the mountains. RIM is lying bleeding in a ditch. And so on.

Inevitably, the way to find the company’s turf is to identify how it makes money. Google sells ads on search, Apple sells hardware, and Microsoft sells Windows and Office. Almost every other activity these companies engage in is a flanking offensive, designed to prevent one of their enemies from breaking through and hitting them where it hurts.

That’s why Google has things like Android and Chrome OS, and Microsoft has Bing, which are all absolutely haemmoraghing money. Bing exists to stop Google entirely flanking Microsoft on the web, Android exists to prevent Apple entirely tying up mobile, etc. They’re pre-emptive strikes, to act before it’s too late.

This, incidentally, is why Apple is so furious at Google; Google started the war by striking first at Apple’s home territory. I suppose Google would have been equally furious if Apple fired the first shot into ads or search (a business Apple still isn’t in).

So to understand Windows 8, you really have to understand how the generals at Camp Microsoft think; they have a damned good mountain pass, and so it would be great if their mountain pass could exist in more places, so they could expand their mountain-pass empire. Possibly they need new sorts of passes, because mountains are easier to surmount than ever before. And to be fair, I did warn you that the metaphor was going to get strained. The trouble with their strategy is it really is as stupid as it sounds, and it’s a really good example of that old war saying: “Lions lead by donkeys.”

For those of you who haven’t kept up with the Windows 8 hoopla, it’s going to have a full-screen touch-based UI (codenamed ‘Metro’), which is what you see when you first boot up your machine, and whenever you want to launch a new program. The pre-existing Windows desktop is something you can jump into from this new UI, and the start menu is gone, replaced with jumping back to the full-screen Metro UI.

Microsoft were loathe to admit it, but Metro is clearly a response to the iPad; especially as Windows 8 will run on the power-efficient British-designed (national pride FTW) ARM processors used by the current crop of tablet devices and mobile phones, as well as the Intel-designed processors in current PCs and laptops. The poor power efficiency of the Intel chips are the primary reason that your lap gets rapidly scorched by the searing heat put out by a laptop.

The thing about the iPad is it’s like how I imagine people felt when they first used text-interface computers in the 70s and 80s; right now, they may be difficult and limited, but you know that the descendants of this thing are going to be the future. There will always be a place for the PC as we know it today, just as there’s still a place for connecting to a terminal over ssh and using emacs to edit a cron job, but tablets and similar devices are going to take over an increasingly large amount of our day-to-day needs.

And the iPad is already selling like hot cakes, so Microsoft needs to flank Apple, and they do it the only way Steve Ballmer can comprehend how: make it so something iPad-like can run Windows.

And so Windows 8; a iPad-like touch UI jammed on top of a standard Windows 8 desktop, with ARM support. For Microsoft, it’s an absolutely instinctive response. It’s the reason that Windows Phone 7 is called that, even though it a) Isn’t based on the same code as desktop Windows b) Doesn’t even have windows in the interface. They’re bound, inexorably, to the idea and brand of Windows, even when it doesn’t make sense.

What they’re relying on is their backwards compatibility advantage. Why buy a device with Windows 8 on it? Because it’ll run all your old Windows programs. Because it’ll be familiar. Because, essentially, it’s easier than switching to Mac or Linux. This is especially prevalent for gaming, which is severely underdeveloped on those two operating systems.

The trouble here is threefold: firstly, old programs written for existing Intel-based Windows machines won’t actually work on the new ARM-based devices. Theoretically, they could be reworked and recompiled to run on ARM, but it’s currently unclear if this will even be allowed. Regardless, on Day 1 of Windows 8, hardly anything is going to run on the ARM-based iPad competitor Windows 8 devices.

Secondly, backwards compatibility is a millstone. On a device like the iPad, the contract with applications is that they’re run in tightly controlled conditions; for instance the OS can kill them dead at any moment with little or no warning. The advantages of this are manifold; you’ve got massive security benefits, as well as improved battery life, etc. But you can’t impose conditions like this on applications retrospectively, at least not without enormous difficulty. Look at the kerfuffles around UAC in Vista, and that was merely enforcing what had been recommended practice for many years.

Thirdly, developers are lazy. They could write applications for the new Metro UI, or, they could write a standard desktop application that works on all versions of Windows. Microsoft are promoting a new framework for Windows development using the new Metro UI called WinRT, and it’s going to be a wonderful replacement for Win32, the old API, and it’s going to be wonderful and brilliant etc. etc.

Except that we’ve been here before. Windows codename ‘Longhorn’ was supposed to introduce a new platform for Windows development, called WinFX, which would be the foundation on which the OS rested. Longhorn eventually became Vista, most of the new framework arrived, although as a framework for applications, not actually used by the OS. Sure, some people are using it, I suppose. But it’s hardly taken over the world, and it was backported to XP so that it could be widely used. WinRT isn’t going to be backported at all, so it’ll be Windows 8 only. Incidentally, commenters, I’d be glad to hear of any WPF apps you know of; the only high-profile one I can think of is Visual Studio 2010.

Based on that history, WinRT is going to tank really, really hard. Why would you write an app using it, knowing that you’ll restrict yourself only to people running Windows 8?

Honestly, if I was in charge at Microsoft, I would spin off Metro into a serperately marketed OS. Base it on the existing Windows kernel, but totally rebuild the top layer to jettison Win32, then make Metro the best OS for touch devices it could possibly be, with no compromise to the old way.

Then make a Windows 8 that is essentially very, very dull. At this point, there’s not a lot of innovation to be wrung out of the desktop, so it’s really a polishing exercise. Microsoft mostly makes money by selling OEM copies of Windows anyway, so all it has to do to continue making versions of Windows which are good enough to stop people switching; this is a relatively easy job.

Mashing the two things together is the stupidest thing you could possibly do. You really risk angering people who really just want Windows with windows and don’t want to be using a mouse or trackpad with UI designed to be touched, and on the other side you’re going to do a half-arsed job of being a tablet.

For instance, I’m sure someone is going to try and build an Intel-based tablet, which will get hot, and have a fan, and terrible battery life. And poking desktop apps with your finger will suck, so it’ll include a stylus, which will get lost.

Maybe Microsoft’ll succeed with all this. Maybe. Honestly though, I think it’s going to be a failure. Possibly a failure larger than Vista, although they may have the sense to course-correct in time for Windows 9 so that they don’t permanently damage the dominance of Windows itself.

I think the engineers and designers have really done a remarkable job; honestly, reading about WinRT, and looking at the boldness of the Metro interface, they’ve really done themselves proud. It would have been really easy for them to do what others in the industry have done and just rip off the iPad, and that they’ve tried to reimagine the concept is commendable.

I suspect that the problem comes from the top; Steve Ballmer, the CEO of Microsoft, talks about “Windows everywhere”. It honestly doesn’t make any sense. There’s a reason that Apple didn’t put OS X on the iPhone and iPad, even though the foundation of iOS is the same. It’s a real shame that Steve Ballmer is too stupid to understand that.

And yes, I know stupid is a litte ad hom, but honestly, look at this video; you can’t get much more wrong than he turned out to be.