Open Source Strategies

A blog about open source software and business models, enterprise software, and the opentaps Open Source ERP + CRM Suite.

Thursday, March 15, 2007

The Future of User Interfaces

No, not another post about AJAX.

Instead, I'm thinking about A Digital Life by Gordon Bell in this month's Scientific American. The author is talking about the ability to set up computers and sensors to record all the experiences of a person during his or her lifetime. While I really don't want that for myself, I do think this is the future of user interface. Namely, the end of the concept of "user interface."

One day, it will seem strange that there was once a concept such as user interface. Instead, devices of all stripes will follow us around, record what we're doing, and then coordinate with each other to make our lives easier. The computer will become simultaneously ubiquitous and invisible. A terminal screen with a keyboard would be as quaint as an RCA Victorola.

If this sounds futuristic to you, then perhaps you've spent too long struggling with poorly designed user interfaces to remember how computers should work. Computers should help make our lives better. Instead, they've become the ultimate idiot-savants that require constant instructions from us: click on this screen, then that tab, locate this sub-button, and change this flag. Even the best user interfaces just make the experience more sugar-coated ("A spoon-full of sugar makes the medicine go down?") All too often, though, we have nothing better than
static screens that present data and allow us to update them. This is no more sophisticated than the software that our grandparents probably used in the 1960's.

But let's not despair: the future will be better. All we have to do is follow this basic rule: How can we help our users do what they want with the fewest clicks possible? This implies doing the following:
  1. Build interfaces to what our users need to do, not what our programs can do.
  2. Speak to users in natural languages.
  3. Automate as much as possible.
  4. Remember each user's preferences and deliver a real custom experience for them.
  5. Integrate with outside devices.

Bookmark and Share