Tuesday 12 February 2008

No longer a Cyclops

Today, as I left work, I finally got round to replacing the dead headlamp on my car. As anyone who's ever done this will know, this is a fiddly task. One of the first few steps is usually to remove some kind of spring-loaded retaining clip, which is guaranteed to "ping" off into the recesses of the engine - the remaining tasks are all but one related to finding and relocating that clip.

Knowing this, I approached the task fully prepared, with torch (well, camera-phone light) in hand and one hand ready to catch the little bugger before it went "ping". Carefully, I released the clip... and the unthinkable happened...

It stayed put.

No, really... it stayed where I wanted it! Evidently, at some point in the past, the clever folks at MG thought that rather than making it a full spring, they'd hinge it on one side, thereby preventing it ever being removed (and hence lost).

This got me thinking. After all, as a computer programmer, I spend a lot of time complaining about users who just have to press the wrong button at the wrong time - or worse still, the ones that find clicking in 5 different places in the secret special order such a hardship.
Maybe, just maybe, I'd been putting myself in the same position as the car engineer who didn't get how people could possible lose the metal clip so easily - after all, the only thing you need is a big magnet and it goes nowhere...

With that in mind, it's time for a new approach. We all know the mistakes that users make - we laugh about them every day. Why not set out to make those mistakes a little less easy, and a little easier to recover from.
There's a range here. It starts at the simple - range checking on functions (why not check if the value is zero before trying to divide by it) - and ends up at the hugely complex, but typically user-ish - "Word is closing - do you want to save your files? Yes, No or cancel closing Word?"

Oh, and Microsoft - how about getting rid of that really stupid message "Excel can't have more than one file named Test.xls open at the same time."

No comments: