Sometimes computing is difficult
I rarely rant on this board, and I try not to rant whenever I can stop myself. With that in mind I am going to try to phrase this rant as a question and see if people agree with me or not. Note that for the remainder of this post I am going to be speaking in broad generalities and I know that there will be notable exceptions. Ok here goes.
This started while responding to a post from awncorp, but it really isn’t the same topic. I want to know, is the focus on “user-friendly” or “ease of use” or “one-click” hurting users in the end? Not even from a teaching standpoint, but actually in their day-to-day computing? My assertion is that some things in computing are inherently difficult, and that they should be, and people might to well to embrace that.
For example, my mother was telling me how a neighbor took a desktop computer to a store and they fixed it by reinstalling the OS and charged her $70. When I told her that that task is rather easy if you take the time to try, my mom became quite mad at the store for ripping off her friend. I told her to rethink this. Changing your brakes is easy but most people pay to have an expert do it, either for the fear of messing with a safety device or the hassle.
I don’t want my mom’s friend to be charged $70 to get her OS reinstalled, but I do want her to learn enough about computers to know that she needs to do a little routine maintenance or else. Also she should be glad that they didn’t tell her it was too old and convince her to buy a new one!
Sometimes in order to make computing easier or more interesting, additional security holes are opened. ActiveX controls still worry me. Who thought that putting a JS engine in a PDF reader was a good idea? Now the rise of cloud computing and social networks has people believing that they are safe throwing their personal data around the web, when even that is difficult, as security breaches often show.
Computers make hard things easier and that’s good. However when they get so easy that you take them for granted, you forget that the task they do IS really hard. Why do so many people use Windows when few people seem to actively like it and most people know that it has security problems? Because it comes pre-installed and they already know how to use it. Is this a good reason to risk viruses, trojans, bot-nets, and all manner of other problems? I don’t think so.
I cannot say that I want computing to be harder, but also I wish people would learn that when you take a complicated system for granted, you are likely to get whats coming to you. Perhaps what I wish is that people who use their computers, or worse, make computing decisions for others (this is a Windows shop!) would take the time to learn the factors involved.
I don’t know what I want from this post. I guess I just had to say that. I am interested in people’s feelings on the matter.
Oh and to all those people who were irate over the last twitter outage (nobody who would read this blog I’m sure), stop reading the news on the latest celebrity divorce and learn something about webapps!
I think that computers should automate (read make simple) the monotonous and facilitate the difficult. By that I mean, the difficult should remain difficult, just move from “insurmountable” to “possible”. I think the value of leaving the difficult as difficult provides the needed flexibility for innovation and maximum power in a given system. The trick is in determining what is just monotonous and what should remain flexible. This may be a core reason why user interfaces can be so controversial.
IMHO informed decision making is the only way to make a good choice regarding simplification vs flexibility. Meaning that often people think an interface is “good” because the developer has removed their requirement to understand the system. Not because the interface itself automates their tasks in the best way. It may even be that users of a “bad” system are forced into practices that are wasteful or risky to comply with an available interface rather than invest the time in learning how to do it better. With user interfaces I think it can be argued that the more about code and data that you know the less simplification you need. By that I mean that with true coding power you could automate only your personal tasks that you want automated and the remainder is a future with limitless possibilities.
Where does that leave my Mom who will never write a “Hello World” program in her lifetime? She has a pretty good life without computers, but she will continually run the risk of paying too much to solve simple problems because they are too complex for her. I find myself somewhat farther along the continuum of coding knowledge but still far short of true coding power and therefor still rely on others to provide interfaces that I don’t (yet) have the knowledge to understand.