Saturday, August 30, 2008

Adaptable software interfaces for all

This post is proud to have been syndicated to the Ponoko blog.

A bendy straw

A common customisable interface. But we all know what it is and how to use it. Right?

The Guardian newspaper's always-interesting Technology supplement carried an article this week on research into adaptable interfaces.

Washington University academic Krzysztof Gajos has developed:

"a set of software algorithms that automatically generates a user interface based on four basic user-defined parameters. First, it selects the optimal functional elements like buttons, pull-downs, lists etc. Second, it decides how to lay out those functional elements in a window.

Third, it decides how to divide the space into a single window or as separate tabs. And fourth, it selects the size of a button to be used. The genius of the Supple system is its ability to predict how often a user will use a certain element, how much time is saved by using certain elements and the overall impact to performance."

It sounds like a progression of such dubious developments as Windows' 'personalized menus' (those that learn which options you use the most and display those items first), and predictive text. I have previously noted the trend towards customisable interfaces and the prospect of an interface that optimises itself for you personally is certainly alluring. But it always comes at a cost to standardisation - if we all have interfaces specific to us, how can we transfer to using someone else's computer, or even teach or communicate about a program without any common ground?

This is a problem that is as prevalant in open sourced hardware as well as software - there is a critical mass of deevelopers below which, you're going to be on your own as the only user of that system, and as such don't have any support or collaboration. If we all have slightly different versions of, say, a lamp cut by Ponoko, its great for us individually as we all have our perfect lamp, but it makes it very difficult, or labour intensive, to a) incorporate each other's new developments, and b) use each other's lamps (say if we have different modes of operation, assembly or light distribution). Not a world-ending issue I know, but it could become a problem.

The existing solution seems to be to always offer the option of reverting back to a standard design - you can turn of your predictive text, or expand a Windows menu to display all options again. And this is exactly what I do when I'm using someone else's computer or telephone. I am intrigued to learn how Gajos' solution will address standardisation of a software interface's visual language.

No comments: