Saturday 24 January 2009

Lego Big Truck

Lego produce some fabulous vehicles in their "City" range. I've spent the last 6 months building one that has working steering - part of the fun of having an articulated lorry is learning how to reverse it properly. So here's the latest version. As you can see, the driver is indeed reversing a flatbed trailer across my floor.  
This is another view of the same thing, showing the front detail. You can't see the steering so well in this one, and the driver has folded the wing-mirror against the side of the vehicle for some reason. Maybe he didn't like having his picture taken.

Thursday 22 January 2009

Daft Dialog Box

As if to highlight how difficult computers are to use, my computer recently presented me with this message. 

I opened a zipfile that I'd downloaded, and dragged the files within the zipfile to my desktop. Then this message showed up.

What on earth does it mean? I want to answer "Copy", not Yes or No.  

I have no idea what zone I'm in.  Timezone? Congestion-charging zone? Twilight Zone? Wikipedia has 40 different pages for the word "Zone", none of which are relevant either. 

I don't use Internet Explorer, so maybe the message has nothing to do with me trying to copy files out of a zipfile. What else was I doing, or was my computer doing (actually, nothing).

And what on earth has the lock icon got to do with me copying files, me (not) using Internet Explorer,  or me not knowing how to answer "Move or Copy" by saying no?

It's this sort of "re-usable standard dialog box" that makes people hate computers. The text makes no sense, the options make no sense, and it's got nothing to do with what I was doing. No wonder so many people have learned just to click "yes" to every dialog box that appears on their screen - even the one that says "You are about to install a dangerous piece of malware that will murder your dog and cause your house to subside". 

Maybe it's not a dialog box, it's a monolog box... or a disinformation box.  Whatever it is, it's bad design. If computer-savvy people like me struggle with things like this, we shouldn't be surprised when our non-geek friends tell us that computers are difficult. 

Friday 9 January 2009

There are two kinds of people...

In my experience, it seems that people approach computers in one of two ways. This is a generalisation of course, it's probably more like a sliding scale.  The two extremes of that scale are as follows:
  • there are those whose approach to computers matches the Microsoft Paradigm. They understand intuitively where things are on a computer, how to find things, how multiple-windowing works, how menus are organised, and have no problem that there are actually eight different ways of achieving the same goal. 
  • And there are those who don't "get it". They need to learn how to open Excel. They follow set ways of getting at the things they need. They write down the instructions for copying pictures off the camera ... they write down the instructions for playing a DVD through the Set-top box on the telly. If anything goes wrong they request help.
Most of the former (who are probably the main audience of blogs like this) will laugh at the latter. After all, Microsoft did thousands of hours of user testing to make sure their interface was as intuitive as possible. But I wonder if their user testing was restricted to the population of Redmond, who by-and-large fall into the first category.  Most of the former will also believe (mistakenly) that the latter just need to spend more time with their computer to understand it better. After all, this is how software is designed, written and shipped. 

Sorry, Group 1, you're wrong. The second category is actually the majority. People don't like computers. People find computers ARE hard to use. Even among software developers, I've come across people in Group 2. They might be fantastic at maths and at C++, and understand pointers at a level you only dream of. But they can't use a mouse, and they have a little Post-It note attached to the monitor that tells them how to start VC++.  Or they're a guru at their particular language, but struggle with the concept of migrating to a new language because it's not what they've spent the last 20 years learning.

It's time for the computer industry to radically rethink how software is written.  It's time for the Open Source Community to rewrite the whole concept of the Graphical User Interface: first of all to meet Engelbart's goals (see theRegister) and second to make computers actually easy to use. The vast majority of the population would thank you if we made computers easy to use - by which I mean there's one simple way of opening your word-processor, by which I mean that pictures automatically copy to your photo album when you plug the camera in, by which I mean that you can recall an email message up to five minutes after you've sent it (because the system hasn't actually sent it !)

There's a long way to go. But we're getting there. Simple things like entering a date. On every travel site I've ever been on (for a train, a plane or a hotel) you have to enter the date in the format that the system expects. Sorry, but that's just plain laziness. Have a play with RememberTheMilk: you can type in a date in almost any form : "Next Tuesday", "20-jan.2009", "October" (even some mis-spellings like "friiday" will work). It's not perfect: it doesn't recognise "middle of March" or "my birthday", but that'll come. And if you get it wrong, you don't get an error message ! I am actually amazed at the friendliness of this bit of code - which speaks volumes about the unfriendliness of the rest of them.

The great thing about people in the second group is that they tend to be good at interacting with other people. Therefore this group can teach those of us in the first group how to do computer interation. I fear that over the last ten years we've had the wrong crowd leading the development of the computer interface. It's time to change.