Monday, May 11, 2009
User friendly, or friendly users ?
UI development has been a source for discussion. Books have been written, entire blogs are dedicated to it and when you start reading and digging deeper you'll just get to a point where you will become completely stuck. You'll think weeks about every single menu item, background colour gradient angle and button placement.
Yet I've written an application that has a UI that would not even pass the basic test for usability and I never had a single complaint about the interface! The menu structure is not really logical nor standard, dialog boxes for similar functions vary widely in appearance and their buttons are placed almost at random. And when you click 'Help' it just opens a .pdf document that contains only the very basic instructions.
All this happened because it started as an 'internal use only' application and grew by demand through the years. Functionality was added on the fly if someone required it to get a specific job done and often I just 'plugged in' a windows form from a different app just because that already contained most of the functionality of what I needed at that time.
And then suddenly the application was 'promoted' to end user software and supplied with an expensive piece of hardware and used by a slowly expanding group of people around the world. So on regular intervals I get feedback and requests for change but it's always about the functionality. A calculation is found incorrect, export functions should export more values, graphs should show more details and so forth. Never ever did somebody complain about the arcane data editing function, the strange menu structure or the crippled help.
The users are certainly not computer specialists. They are people whose main job is just to do measurements. They just need that software as an additional tool in a similar way they need a four wheel drive, rubber boots and ropes. And it seems they don't really care how it works, as long as it gets the work done.
"So I have to press the left mouse button three times while holding control, shift and F4 to get a printout ? Al right. I'll write it down."
And they will always do it like that. And if they have to instruct their new colleague it will give them a good feeling that they know this awkward combination by heart. My feeling is that they treat it like any other professional tool. You have to learn how to master it and it becomes part of your professional skills. I suppose that is the reason why Linux adepts stay enthusiastic about their operating system, even though they have to get to the command line and type their cryptic commands for anything but the most trivial tasks.
"So you can operate the LHC ? Big deal, I know how to get connected to my bluetooth phone from my Linux powered laptop !"
(Don't mail me about this last remark. I have no idea..;-)