InterfaceDesignGuidelines

Summary

It is not only mere technical functionality but always a symbiosis between under-the-hood functionality and its interfaces which makes things work well, or "just work". The interface & interaction design of GNU/Linux on the desktop still severely lacks clarity, coherence, style, simplicity etc. in short: professionality/professional knowledge. While the last years have brought many improvements in that area, the free desktop's user interface is still justifiably perceived as inferior to proprietary systems, especially by less technically-inclined users. This serves as an obstacle to migration.

Ubuntu as a distribution which seeks to address those issues should provide contributors like application developers and creators of graphical content with sensible general guidelines that help to overcome those obstacles. These guidelines should be thought of as a reliable visual and behavioural pattern language framework that provides the required domain knowledge to vastly improve both user-friendliness and visual appearance. The underlying rationale strives for simplicity in the way of "As simple, as possible, but no simpler." (Einstein), coherent communication of application behaviour, and a warm and friendly appearance.

Consequently, the popular paradigm of regarding GUI elements as "eye candy" is challenged as being dangerous to good interface design. Some of the concepts of a user-centric interaction design are offered as parts of a better solution.

The general goal is to assist in leveraging the user experience on the free desktop up to par with current proprietary desktop sytems like Mac OS X or Windows.

Rationale

Use cases

Scope

Design

Implementation

Code

Data preservation and migration

Outstanding issues

  • Integration of or co-operation with other projects like Tango which already address parts of the issues at hand but don't offer a general solution framework.

BoF agenda and discussion


CategorySpec

InterfaceDesignGuidelines (last edited 2008-08-06 16:19:04 by localhost)