Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Did you read the headline for this post and thing "well, duh!" I know that's what I thought. The headline comes from a Reuters article I read recently. In the old days programmers and users were pretty much one and the same. We didn't let ordinary people in the same air-conditioned, raised floor, fire system protected room as a computer. Only computer experts got to touch a computer. Since the user and the programmer were one and the same or at least the same type creating a program with the right user interface was easy. "If I like it than it's fine."
Well it appears those days are gone for good. One of the first things I learned in my first programming job was that the end users didn't think the way I did. In fact they often didn't think the way their boss (who was paying the bills) thought or the way he thought they thought. Lose you yet?
Getting the user interface right is difficult. Often programmers assume that what works for them works for everyone. They verify their ideas by asking other people who think the same way they do. Then they are surprised when people complain about software being hard to use. This is not an easy problem to solve. Sure it seems like it would be easy - just ask people what they want. The problem is that they don't always know what they want.
Software companies learn a lot by watching users. Companies like Microsoft have usability labs where all they do is watch people use software to try to understand what works what makes things easier and what makes things harder. Progress gets made but seldom is it enough. The problem though is not just the users and the programmers speaking different languages. One problem that is growing is the problem of people who write malicious software (viruses, Trojans and the like). Lots of checks are being added to make sure that they user has control over what is going on so that things are not installed that should not be installed. But if the user doesn't understand the question, which is often the case, this just makes things worse. It becomes a vicious circle with programmers trying to make the user safer and the program easier to use and others trying to take advantage of ease of use in bad ways.
Ultimately programmers have to learn to understand end users better. End users have to have a bit more of an education about what the computer and its software are trying to do. We can't, I don't think, put all the blame on the programmers. Most of it sure - just not all of it. People have to take some responsibility for their own education. We also need to involve more people in the middle. By that I mean people who understand people (psychologists, sociologists, others who study how people work, think and act) and understand software who can help the programmers create software that real people can use.
There is a whole field of study that seems to be undeserved. Anyone know a good multidisciplinary college program in software usability? I'm sure they are out there. I'm also sure we need more of them. What do you think?
Technorati tags: HCI, CHI, human-computer interaction, usability, programming, education