Design Principles

I believe that we must be pragmatic in our design. Things that are too revolutionary usually don't succeed. Extending the familiar and building on what's already there seem to be better options.

"Embrace and Extend" Windows 95

In spite of our opposition to Microsoft's domination of the computer world, we must give the devil his due in acknowledging that Windows 95 has the simplest, most consistent and relatively most intuitive interface available. More importantly, the overwhelming majority of computer users today are familiar with the Windows 95 interface. To gain their acceptance, our new interface must appear similar to Windows 95 with some easily-learned extensions.

Our windows must look like Win 95 windows, with the minimise, maximise and close buttons in their expected places. Mouse behaviour must be similarly consistent. The semantics of a click, a right-click and a double-click should remain the same. Shortcut keys should be provided for all menus and buttons.

Don't throw away the command line

There are many in the Unix world who oppose the GUI way of doing things. To be fair to them, many things that are possible on the command line simply aren't possible using any existing Unix GUI. While trying to provide those features through our new GUI, we should also allow command-liners to stick to their familiar interface. Our interface should have both GUI and CLI components, and it should be possible to move back and forth between them seamlessly.

Incorporate the Web style of navigation

Hyperlinks have suddenly become household items, with everyone surfing the net. We should use this familiar and intuitive technique wherever relevant in our interface. 'Help' is an obvious candidate, but there are other candidate areas as well...

Make things configurable...

... but don't make a fetish of configurability. Users appreciate structure as well as flexibility. Configurability at its worst means that nothing looks familiar when you work on someone else's computer.

Supporting Free Software

This page hosted by Get your own Free Home Page
1