In his latest entry on Coding Horror, “Windows 7: The Best Vista Service Pack Ever”, Jeff Atwood says:
I want the world to get the hell off Windows XP. A world where people regularly use 9 year old operating systems is not a healthy computing ecosystem.
I find this terribly, painfully wrong. The unintended consequence that comes from that mindset is: “Let’s make all the user’s hard-won experience and knowledge totally useless every few years.”
There are lots of reasons why I didn’t bother upgrading to Windows Vista (if you can call it an “upgrade”), but the one that’s relevant for this article is simple: I already know how to use Windows XP. I know how to use applications with menu bars. I don’t know how to use the Ribbon, and I don’t feel that I need to throw away my existing skills.
Maybe that means I’m not on the leading edge of the tech curve any more. Fine, so be it, but retraining habits and muscle-memory is an annoying, inconvenient task. There are times when the benefits are worth it.
Nobody has made a convincing case that Windows Vista’s blithe discarding of one of the four pillars of GUI design that’s been stable since the early ’80s — windows, icons, menus, and pointers — is one of those cases. In fact, the legions of people who bought computers with Vista pre-installed, and then paid more money just to use XP instead, argues pretty convincingly against such a move.
Mr. Atwood posits a world where people don’t use operating systems for more than, say 7 or 8 years. I’d like to counter with a world where the basic design of your car’s controls and interface changed every 7 years. Instead of a steering wheel, a pair of foot pedals, and a shift lever, suppose that the 2010 line of cars used a tiller lever and a single forward/back foot-slider. Or a joystick and throttle system, like a jet fighter.
Do you suppose the accident rate might spike?
I don’t know of any field besides computing where people think that it’s acceptable to completely redesign user interfaces every couple of years. In the terms of Kathy Sierra’s wonderful post, “Attenuation and the Suck Threshold”, redesigning your interface is a way of forcibly smacking all your users back down under the suck threshold. Instead of being able to continue to use your program, and gradually learn the new features, they have to drop everything they were planning on doing this week, and instead devote their time to re-learning how to use something they already learned before.
This is simply cruel. Please, don’t do it to your users.
There is a kind of fool who says, “This is old, and therefore good.” And another type of fool who says, “This is new, and therefore better!” But what kind of fool does it take to want everything to be new, or renewed, every few years?