Thursday, August 2, 2012

The Many Problems of Windows 8

When I first heard about Microsoft's intention to move ahead on Windows 8 in 2012, I was more than a little bit surprised. Windows 7 had only come out in 2009 and given the ubiquity of Windows XP, it didn't really become the dominant OS until 2010-2011. Sure Apple can get away with pushing out a new OS every year, but that's because it's essentially the same OS with new features. Windows is never that simple. Each OS upgrade requires a certain amount of commitment, and it seemed foolish to ask consumers to move on just as they finally embraced Windows 7.

I can understand WHY Microsoft wants Windows 8 to be the new focus. Their mobile OS, while nice, lacks developer support both in terms of hardware and software. By shifting their primary OS to focus on touch interfaces and requiring a specific standard for Metro-style apps, they're hoping to bolster their mobile OS and finally seriously compete with Apple and Google.

On paper, this is a good idea. Windows is the quintessential desktop OS. It has the best developer support of any OS. Ideally, moving Windows into a position where the same OS was used for both mobile and desktop hardware would be a good thing. The massive developer support that Windows has would finally be carried over to the mobile scene and perhaps turn mobile OS into a viable primary OS for everyone.

Here's why I think Windows 8 is doomed to fail.

Microsoft's plan for the future only works if everyone is on board. Their massive developer support has to also support Windows 8. Metro UI has to be well-received and commonly used. Consumers will have to want to upgrade and they'll have to want their apps to work in a Metro UI environment. If any one of these things falls out of place, then Windows 8 cannot succeed. And in my opinion, each one of those things has a large probability of failure.

Mandatory Metro UI

In case you don't know, Metro UI is the name for the touch-based interface of Windows 8. It bears an aesthetic similarity to Windows Phone 7 with a bunch of panels representing specific apps. It's pretty cool and is basically the biggest change in Windows 8 when compared to Windows 7. It is a great UI for a tablet or perhaps even a phone.

Here's the problem, though.

Ideally, Metro UI would be a feature that would only appear if you actually had a touch interface. If you don't have a touch interface, it is cumbersome and inefficient since it takes up the entire screen and makes finding and switching between programs a hassle, so it would make sense that it would default back to the Windows 7 interface if you didn't have a touch screen.

However, Microsoft doesn't want that. Remember, their goal is to bridge the gap between desktop and mobile OS. If the majority of the users aren't using the Metro UI, then developers will be less inclined to make their apps work in that environment, and if new apps aren't designed to work in the Metro UI, then they won't work in the mobile version of Windows 8, which basically leaves the mobile version of Windows 8 in the same position Windows Phone 7 is in.

This is the problem that Microsoft has faced with Kinect on the Xbox. As cool as it is, game developers don't want to develop for it because not everyone who owns an Xbox has it. They would reach a larger market if they didn't include it.

Microsoft's solution to this problem was to force all users of Windows 8 to use Metro UI. Sure, you can switch to the familiar desktop mode for non-Metro applications, but the Start Menu is completely gone. People who use Windows 8 without a touchscreen will effectively be punished for doing so.

I can understand why Microsoft is doing this. They need their entire user-base to use Metro UI or developers won't want to develop for it. They want all of their users to transition to Metro UI and stop using the desktop.

Whether or not I understand their reasoning, it doesn't change the fact that users who pick up a shiny new laptop with Windows 8 pre-installed are going to get a nasty surprise when they click the familiar Start Button. They'll be lost, confused, and annoyed. This is pretty much the same thing we saw with Windows Vista, and what was the result of that? People downgraded their computers to Windows XP.

I think we're going to see an initial surge in Windows 8, followed swiftly by a public backlash, followed by a massive exodus back to Windows 7.

The reason Windows 7 was more successful than Windows Vista was that it actually worked better than Windows XP. It was faster, prettier, more efficient, and less buggy. Windows Vista was slower, uglier, less efficient, and really buggy.

Windows 8 may be faster and prettier, but Metro UI is a huge pill to swallow for the mouse-dependent.

ARM and the Dreaded App Store

One of the big new things in Windows 8 is the App Store. It's pretty much exactly what it sounds like. It will feature apps specifically designed to work in the Metro UI environment. Obviously, in the standard versions of Windows you won't HAVE to use the App Store, much like you don't HAVE to use the App Store for Apple's OS X.

HOWEVER, the same can't be said for Windows 8 computers running ARM processors.

Basically, if you want your app to run on the Windows 8 edition for ARM processors (also known as Windows RT), first it has to be specifically designed for the Metro UI, second it has to be specifically designed within Microsoft's specifications for the ARM architecture, and finally, it has to be made available exclusively through Microsoft's App Store.

In other words, if you want your new Windows 8 app to work on a device using an ARM processor, you have to bow to Microsoft's whims.

Obviously, you could just NOT develop apps for Windows RT, but the flagship Microsoft Surface, the first tablet with the Metro UI, is using Windows RT and therefore running ARM processors, so if you want your new app to work in the mobile Windows 8 environment, you kind of HAVE to play by these rules.

This completely goes against Windows' greatest advantage. Previously, if you wanted to develop for Windows, you just COULD. Write a program, release it, people download it and install it. Apple was the one with the walled garden. Why on earth would developers want to go play in Microsoft's new walled garden instead? What advantages does it offer? 

My guess is that Windows RT will be a massive failure. It will simply have next to no real app support, just like Windows Phone 7, and so it won't have the major advantage of the Windows OS, which is the only reasons consumers would buy a Windows tablet in the first place.

Developing for the Metro UI

So developers probably won't develop for Windows RT, but that doesn't mean they won't develop for Windows 8. However, the only reason to make an application for Windows 8 instead of Windows 7 is to take advantage of Metro UI.

Assuming that consumers aren't immediately turned off by Metro UI, they will still need a reason to stay in that interface. If they spend more time in the desktop interface, then Metro UI is just an inconvenience. In order for them to stay in the Metro UI, developers will need to give them a reason.

The issue is, not all applications are meant to be used in capacitive touchscreen interface. Sure, browsers and Microsoft Office are pretty functional in that environment, but what about Photoshop? Can you really imagine using Photoshop with your fingertips? Maybe a stylus, but Metro UI is not designed with a stylus in mind. The tiles are big, the letters are big, and everything takes up the entire screen. A lot of developers aren't really sure if their apps can translate into the Metro UI aesthetic, and that's a big problem. Most developers will just keep on developing their apps with the desktop interface in mind.

If users are treating Metro UI as something they need to ignore or work around, then developers will do the same.

A Perfect Storm

So if all of these things that can go wrong do go wrong, what exactly will happen? Well, initially Windows 8 will probably have huge sales. Early adopters will embrace it and talk about how the new Metro UI is "not that bad" or "very promising". By Christmas, most new PCs on the market will include Windows 8. People who buy them will be pissed that "the Start menu doesn't work anymore."

The Microsoft Surface (which runs Windows RT) will have a lukewarm reception in October and garner next to no substantial app support. By Christmas, it will be out-sold by the iPad and the Nexus 7. A few other Windows RT tablets might trickle out, but they will all either suck or be over-priced.

The Microsoft Surface Pro (the one running Windows 8 Professional), which won't come out until AFTER Christmas, will have middling-to-poor sales due to its probably large price and the negative reception from early adopters of Windows 8 and the original Microsoft Surface, as well as the limited 3rd-party support of Metro UI. 

PC manufacturers will start offering Windows 7 downgrades for their new computers and Microsoft will start pretending that Windows 8 never happened.

Of course, I might be wrong.

Maybe people will love the new Metro UI. Maybe the Microsoft Surface will sell better than the iPad and give developers a reason to pay attention to the ARM tablet and therefore Metro UI as well. I'm sure this is what Microsoft is hoping will happen.

What Microsoft Should Do Next Time

Microsoft, like Star Trek, has kind of a tradition of screwing up every other entry in their series. There are exceptions of course, but generally they have to mess up before they can release something good. It seems likely that Windows 8 will be a failure, so how can Microsoft make Windows 9 succeed in the same way Windows 7 made up for Windows Vista?

Well, for starters, they have to ditch the idea of an App Store as the only method of apps for ARM tablets. Developers aren't excited enough by touch interface that they will bend over backwards and give them more money for the privilege of having an app available in Metro UI. They should look at Android's approach. Yes, Android has an app store, but they are also capable of running apps downloaded through other means. Not everything has to be approved by Google. They also made the OS and the SDK widely available. Despite Android's other shortcomings (fragmentation is a big one), it has the second-biggest mobile app store currently available and that has allowed it to compete with Apple's iOS devices. If Microsoft took this approach, more developers would probably be interested in developing for ARM devices.

Second, they have to make it so that you can turn Metro UI off. They can have it so that Metro UI is on by default, much like UAC in Windows 7, but you should be able to turn it off if you so choose. I know it pretty much means turning off the only aspect of Windows 8 that's substantially different, but remember how Windows 7 included XP Mode? Remember how that gave skeptical new users a safety net? They knew that if Windows 7 didn't work out, they could fall back on what they were comfortable with. And as it turned out, most people didn't even end up using XP Mode. But it didn't matter because it made people FEEL safe. It eased the transition. Likewise, if you give people the option to turn off Metro UI, they'll probably be more keen on getting Windows 9. Then slowly as app support improves for Metro UI and they start having to use it for the newer apps, they'll start using it more and more and start to become more comfortable with it until they find themselves primarily working with it.

Finally, Metro UI probably shouldn't take up the whole screen. This makes sense for phones and some tablets where there's just not a lot of room, but on a monitor it makes no sense. Multitasking is a pain in the ass and it's impossible to know what else you have running just by glancing at the screen. If Metro UI were more of a component of the desktop interface, it would both make the transition for new users easier and it would allow for the improved multitasking that PC users are familiar with. The taskbar in Windows 7 is GREAT. Why ditch it completely in Metro UI?

These are just a few ideas, but ultimately, Microsoft has an uphill battle. It won't be easy to provide the full Windows experience for a mobile device, and when they actually succeed, it will be excellent I'm sure, but I don't think Windows 8 is the solution they're hoping for.


  1. You nailed it on the head. The only real problem with Win 8 is forcing metro and nerfing the desktop. They fix those two things and all will be well. I guarantee the default option when you go to order a new pc online (at least ones intended for businesses) will be Windows 8 with Windows 7 downgrade. They all ready pissed of the oem's so this is how they will get theirs back.