One of the many bug-bears I’ve developed working in the software industry is about bad user interfaces. When I was at university I did a course on human-computer interaction, and though I didn’t think it at the time, I realise now just how valuable it was. I firmly believe, now I’ve seen the fruits of so many bad user interface designs, that the course should not only be compulsory, but it should be repeated several times throughout the degree, just to drive the point home.
The particular bit of software that has inspired this rant is the software for this:
my new phone, the O2 Ice. Hardware wise I can’t fault it – sleek, light, good build quality. Software wise, it’s awful. More than awful, its so bad I find myself shaking it in the air and cursing, trying to resit the urge to bash it off the table in frustration. Almost everything in the user interface runs contrary to even basic usability principles. Buttons change function radically as you move between screens, resulting in a single extra accidental button press (of a button that you need to press), will wipe out a laboriously crafted message, without saving it anywhere, or more crucially prompting if you are sure. Conversely, when you are sure about an operation, for example deleting messages, it prompts you, then, just to make you grind your teeth, prompts you to press okay on a screen that says only ‘deleted successfully’. Why do I need to click okay on a message telling me that you’ve done what I asked you (twice) to do. Sure, tell me if it fails, but don’t tell me if it succeeds. I assume it will succeed!
Worst of all though is the behaviour when a new message comes in – I pull the phone from my pocket and see the message prompt displayed on the screen. Great, all good. But because its not a clamshell design, I habitually lock the keypad before putting it into my pocket. And the act of unlocking the phone causes the message prompt to disappear, and I have to go search through three levels of menus to go find the message that’s arrived. And that’s only for SMS messages, if a multi-media message comes in, pressing any key just freezes the display on the animated message icon – no feedback, nothing. Eventually I found out that holding the power key will free things up again, but that was one of the “don’t throw it across the room, it’s the only phone you have” moments.
Fact is, user interface problems aren’t generally hard to solve. Some of them are tricky because you have design constraints (say only being able to use a one button mouse, or limited feedback options. But in general bad user interfaces are down to bad designers, and there is no excuse for it. The end-user does not care, in the slightest, about how good your software is underneath; if it feels like crap to use, then they will hate it, and you have failed.
Games are normally a bit better in this regard, partly because the limited control mechanisms force us to spend more time thinking about input mechanics, but also because a game that doesn’t feel easy to control will drive players away in droves. Even still, it still makes me curse in frustration every time I use a tool that was chucked out of the door with a sub-standard UI, and everyone is stuck with it just because there are no alternatives on the market. (Rational Rose I’m looking at you…)