FREE Subscription to Dr. Dobb’s Digest: Same Great Content, New Digital Edition
Site Archive (Complete)
C++ Blog: An observation about user interfaces
C++
void main(void)

Calls, Returns and In-Between.

by Kevin Carlson
SELECTIVE IGNORANCE

Finding the Signal in the Noise

by Andrew Koenig
May 02, 2007

An observation about user interfaces

My computer lost its disk yesterday.

Fortunately, I had anticipated just such an eventuality when I bought the machine in the first place, and paid extra for a RAID controller.

For those who don't know what a RAID controller is, it's a piece of hardware with embedded software that makes two disks act like a single disk by copying all the data onto both disks every time the machine tries to write onto one of the disks. If one of the disks fails, you replace the failing disk and the hardware automatically copies the data back onto it from the good disk.

The machine was still covered under the manufacturer's warranty, so I called them, explained that one of the disks on my RAID controller had failed, and asked them to send me a new disk. The tech-support guy walked me through the more or less expected procedure--asked me to reboot the machine a few times and tell him that it was once again telling me that I needed to replace the failed disk--and then asked me to get the CDs they had sent me with the machine and reinstall the operating system from scratch.

I was both flabbergasted and furious. I pointed out that I had paid extra for the RAID feature on the machine for the specific purpose of avoiding the need to restore data from scratch in the event of a failure. He was adamant that there was nothing he could do for me unless I reinstalled the operating system. So I said the magic words:

    May I speak to your supervisor, please?

After a few minutes of back-and-forth, he put his supervisor on the line, and I explained the situation to him. His response: "Of course we'll send you a new disk immediately. Do you want us to send someone to install it for you?" I said I'd rather do it myself, and he said fine.

Here's the interesting part. When I asked why the first-line guy wanted me to reinstall the operating system, he explained that most users are so clueless about what's going on that they will only make things worse by trying to fix it; so they have found that they have a greater success rate by telling users to blow away their entire installation and start again from scratch.

The new disk arrived this morning. It took me less than 15 minutes to install it, using instructions from the RAID controller's help file to make it easier for me to locate which disk to replace. The only tool I needed was a Phillips-head screwdriver. When I powered up the machine, the controller detected that a new disk had been installed and immediately began copying data to it from the old disk. A few hours later--during which time the machine was completely useable, though slightly sluggish--the controller reported that all was well again.

So here we have a sad situation: A hardware manufacturer offers an elegantly simple solution to a common problem. It is hard to imagine how this solution could be made much simpler. Nevertheless, the manufacturer has found that so many users are unable to figure out how to use this solution that they are better off teling users to ignore it. And this is true even though the users in question must have known that the option existed in the first place, as it doesn't come with a machine unless you order it and pay extra for it.

Doesn't this situation tell you something about the state of abstractions in our industry?

Posted by Andrew Koenig at 02:29 PM  Permalink




 
INFO-LINK