Feature Article
Interface Design & Reading Minds

May 1, 2001
By Scott Lewis

I have been doing a lot of thinking lately on interface design and usability. I was wondering what a good design would be. Unfortunately I don't think my idea of a good design will be possible within the next few decades. However I am still naive enough to think it is possible in my lifetime.

In The Beginning

Let's take a step back and look at recent interface designs. Personally I think every computer interface sucks. That may be harsh, but when you really think about how much time has been spent in this area we really have not done that good of a job.

Even the most simple of computer tasks have flaws. Take clicking vs. double-clicking. When do you use them? People that have spent a long time with computers know, but what about people without experience. More important, what about people with moderate experience. I still find it amazing when I see "computer literate" people double-click on hyperlinks and single click on icons. I believe that clicking and double-clicking is a flawed interface element. It takes training to know when to do one vs. the other. Such simple tasks that will be used constantly should be intuitive, but they are not.

This is even true for the beloved Mac. The Mac is considered by many to be the holy grail of a good user interface. So why only one button on the mouse. Right-clicking is much easier to learn then double-clicking. Just ask my mother and grandmother. Not that right-clicking is any better implemented than double-clicking. It is just easier for people with limited dexterity to pick between two buttons and click one than to choose between single & double clicking one button.

Our beloved Mac gave us the trash can icon. Icons are supposed to be graphical representations of real world objects that almost everyone would know what to do with without training. So Macs claim a great deal of pride with the trash can. A simple metaphor for an office trash can. You drag a file from the desktop of the computer screen to the trash can and the file is deleted. Makes sense, yes? But the item is not really deleted. That night when you go home the trash can is not emptied like the office trash can. Also, what happens when you drag a floppy to the trash can? If we look at the trash can as a means to delete files, it would follow that dragging the floppy to the trash can would delete the files on it. Is that what happens? No, dragging the floppy to the trash ejects the floppy. Oops!

I will admit that I don't use Macs. This has not really been a matter of choice. PCs have been thrust upon me for a long time. So I am no expert on the Mac, or what is wrong with it. But I have spent a little time with them, and can recall times when it was completely unintuitive as how the Mac worked.

For example, my wife has a software program in her classroom (she is a first grade teacher) and she could never figure out how to run it. When she inserted the disc a folder would pop-up. This folder had a number of icons in it. But the only one she could use with any success was the icon to install the program. The install routine would offer to run the program when it was complete, so she installed it every time she needed to run it. Ugh!

The problem turned out to be with the Mac itself. The folder that pop-up was created the first time the program was installed. However, the icons in that folder were in no logical order and seriously scattered. As it turned out you had to scroll the folder 3 or 4 "screens" down to find the icon that ran the program. Selecting the "arrange icons" options lined up the icons with their original position. There was no way to get that icon to display at the top of the folder to make it easy to access. The solution I came up with was to create a new folder and create an "alias" to the program in the new folder. It took me a while, but it worked. My wife could just open the folder I created on the desktop and there was an icon that would run the program. While there I also created an alias to the word processor on the machine.

If there is a better, or easier, way to place or create and icon to run a program I could not think of it. That comes from having a Windows background and not a Mac background. But should it matter. Why was it so difficult for someone with my level of experience with computers to make it easier for someone with less experience to become productive.

I am not picking on Macs. In fact, I keep thinking about getting one for my next computer, or for my kids, or in-laws. They are supposed to be much easier to learn. But they aren't. Not really. My mother and grandmother would be just as confused by a Mac as they would a Windows computer. I have not yet seen the new Mac OS X with my own eyes to see if it actually improved on some of the most basic of tasks that a beginner has to learn. How do you get back a "window" you accidentally dragged off the screen?

Windows is no prize either. Don't even get me started with having to teach my mother-in-law that she must turn on the computer by pressing a button on the box itself, but she must turn it off by initially clicking on a Start button on the screen. Talk about counterintuitive.

The Present

So here I am, a very experienced computer user that can move from computer to computer with ease, and from platform to platform with relative ease. I can be reasonably productive on a Mac even though I have no training. I can run a Windows machine better than the Microsoft demo guys. But I still feel that computers and their interfaces suck. That's really bad since I design programs and web sites with interfaces for a living.

As an example, I am trying to write a program for my wife. She would like a grocery list program that will allow her to run down a list and select the items she needs. This program would then print out her shopping list. Seams simple enough. But I want the program to work the way she does, not the other way around. Currently she has a single sheet that lists almost all the items she regularly buys. It is in a desktop publishing application. She built it so that the items on the list are categorized the way the store we shop has its isles arranged. She simply prints the list each week and fills in check marks next to the items she needs.

But it is more than that. There are blank lines in each category to allow her to write in items that are not present on the list. Then there is a section where she writes in the dinners for the week. This helps her pick the items she needs to prepare each meal.

I want the program to work that way. It should have categories that she picks, items in those categories as she wants them. They have re-arranged the grocery store since she created the original printed list, so I want the items and the categories to be configurable when the store rearranges its isles. Also, I would like to keep a list of the common meals so she can select them from a list and the ingredients will automatically be checked for her.

Every time I come up with a possible solution to any of these tasks, I find it impossible to make it intuitive to use. The screen is way too cluttered. Creating extra screens to allow editing of categories, items and recipes seems completely impossible. I will keep trying, but I am reluctant to show anything to my wife half built because it won't stand up to scrutiny.

The Future

Let's recap for a moment. We have interfaces that have been around for a long time and they are not intuitive to use, regardless of what Mac advocates believe. I am also having a difficult time translating normal tasks into a computer program partly due to these interface problems (I can only work within the framework of these existing interfaces; i.e., Windows & Visual Basic for the grocery program).

This has lead me to start thinking about what we really need in a computer interface. I have given this a lot of thought. Here are a few items that I feel need to be in the next "big thing" in interface design:

  • It must be intuitive to use. This means that the majority of the interface should work as people expect it to without any training.
  • The interface must extend people's natural desire to get the computer to perform tasks for them with minimal direction from the user.
  • The computer should be able to anticipate users needs and perform tasks that are expected. This would provide a significant boost in productivity if the computer was performing tasks before being asked. It is imperative that this prediction of work be accurate so the computer is not wasting precious resources performing tasks that are not needed, or worse performing tasks that reduce productivity.

Even with the limited number of generalizations above I think we are very far away from building such an interface. Obviously it will require processing capabilities at least a couple of magnitudes greater than is available today.

As part of my job I need to be able to translate business needs into technical requirements for building applications. In doing this aspect of my job I have many times told people that some requirements will never be met until we can hook up the computer to their brain directly and let the computer read their minds.

I have now come to the conclusion that this is what we will eventually have. Further, I think it will also be the catalyst that will enable people to read each other's minds.

Follow me on this. We already have people working on technology that enables computers to get direction by reading brainwaves. At a consumer level this is being experimented with games. A player would put on a helmet that has connectors that read brain activity and allow the player to control a game by thinking.

When computers, connectors, etc. become more sophisticated it should be possible to connect a small lead to your temple (or somewhere) and the computer will be able to "read your mind" and perform the tasks you want. Take this a step further and the device that connects your thoughts gets so small that we can implant it under the skin of your temple. The connector will eventually contain the intelligence to read your thoughts, translate them into a format that can be understood by computers, and transmit that information. A little further down the road and the implant will be able to translate computer information directly to your brain so you can understand the computer without a physical interface. The computer becomes a natural extension of your thoughts, and can predict what you want before you consciously think of it based on your previous thought patterns.

The perfect user interface!

As an added benefit these implants that read, translate and transmit your thoughts can do so to other implants. We read each other's thoughts because we all have implants. The only key is restricting what the implant can and can't do. Obviously we don't want our every thought transmitted for all to read. But I think this would be a small obstacle once the technology to develop such a device is here. Since such an implant would require a significant ability to control one's thinking, I think eventually some people will evolve to being able to work without the implant. Then speech will not be necessary to communicate. People will eventually learn to communicate without implants or speech... they will read minds.

Will this happen in my lifetime? I doubt it, but I believe we will be close. I think it is quite possible that we will be able to directly interface with computers by thought in my lifetime. Whether that will ever be used to allow people to read each others minds... that is a question for people smarter than me.

What do you think? Close your eyes and think real hard and let me know... or just use that archaic mouse & keyboard to send me an old fashioned e-mail.