Monday, January 21, 2008

It's Not You, It's The Computer

The Problem

Have you ever been told this, when a computer technician crosses your path on the road to PC recovery? How many times have little things about a computer system left you totally lost? For example, you boot your computer one day and instead of your Desktop you are met with the infamous Blue Screen of Death (BSOD):


The first thing a technician will probably ask you is, "What did you do to your computer last?" Unfortunately, more and more this line of questioning is pointless. Users don't need to do anything to their computers in order to be faced with cryptic messages with unintuitive solutions. Thanks to malware and poor software design, this kind of message can occur almost randomly, and can be costly to fix if you can't figure out what the message is trying to tell you.

Even something as simple as moving your files to a new computer can create issues. One would expect, for instance, that the Microsoft Files and Settings Transfer (FAST) Wizard might copy all of your files and settings from your old computer to you new computer. Unfortunately, this is not always the case; recently, while transferring files from one computer to the next, a client of mine couldn't figure out where the Outlook 2003 settings and address book had gone. It seems FAST decided to only copy over settings from Outlook Express, not Outlook 2003.

Another lady I ran into thought she had lost some of her files. She had just copied some PDFs that a friend had made for her into her My Documents. Ever since, she couldn't find some of her Word files when opening that folder. When she opened Word first, they were there, but she just couldn't find them by opening the folder. Telling the folder to change the view and sort by name suddenly made all of her files reappear (the new files had overlapped the older files).

Windows isn't the only platform to behave badly, mind you. Using OS X, one user I ran into had a problem with disk space constantly disappearing. No warning of what was happening, no obvious tell-tale signs. Just an expired .Mac account with an iDisk that kept trying to back up whatever was stored online, but not enough drive space to do it with. Macs are great, but sometimes they try too hard to be user friendly.

For the Linux users out there, obviously problems occur sometimes, too. Not able to drag and drop when you might expect, spell-checking that doesn't work in the language you set, unexplained glitches in the boot process that leave you at a command prompt without explanation. Yes, with the help of the community-oriented model, these kinds of problems get fixed (probably) faster than on the commercial OSes, but the problems do exist, no matter how temporary.

The Solution

I think every programmer out there should be forced to sit with a real user for just one day. Okay, that may be a bit excessive, but for any programmer to try design something for use by an "ordinary" person, they need to try change perspectives. Maybe even stop thinking logically for just a bit, and try to intuit the next step. Does anyone read a manual before picking up a pencil? Yes, you need to learn to draw circles and other shapes before you write, but using the pencil still works even if you scribble.

Interfaces should be so simple a child can use them, without being trained for years. Using the interface incorrectly shouldn't cause major headaches for users. And it shouldn't break the interface. More thought needs to go into what makes good applications and good interfaces. There are many sites that echo this thought, and I won't go over all of their findings here. The simple fact remains: what we have now isn't bad, but it's a far cry from making computing as universal as the lowly pencil. Heck, most of us are still using keyboards designed to slow you down so you don't break the machine.

The Future

As we move into the very real possibility of interacting with computers in a three dimensional world (Wii, anyone?), we need to begin rethinking how we interact with computers, and make the interface more in tune with the way we think.

How will the current paradigms shift in a world where we can virtually grasp objects and manipulate them exactly the way we do any other tool in our world? If things don't change, we may never see this reality. Instead, it may be blotted out with a guru meditation or kernel panic message. Or worse: the Blue Screen of (Virtual) Death?