Re: cool UIs



Gomes wrote:
> you wont have to, it should be intuitive.

Hmmm. As it happens, I'm working on a "GUI Standard" for my team this very
weekend, and one of the top level rules address the "intuitiveness". I've
formulated it as follows (criticism is welcome!):

Rule GUI-0110
Title: Intuitiveness

Description:
A User Interface SHOULD be intuitive, i.e. it must:
- be easy to understand and learn, given a proper level of operator domain
knowledge
- react in an unsurprising manner to user input
- behave the way the user expects (!)
- main functions/tasks should be easy to complete correctly

Rationale:
A steep learning curve leads to lots of user errors and frustration, and
non-standard UI concepts lead to excessive User documentation requirements
(explaining the functionality in great detail).
Unexpected behaviour significantly reduces the confidence of the user, if he
cannot understand or accept the 'mental model' or the workflow enforced by
the system. To put it in Joel Spolsky's words, "the program model should
conform to the user model".

Exceptions: None

Notes: The developer must restrain his natural tendency to seek new and
creative solutions to common UI problems. The user is generally more
appreciative of commonality than of originality, even if this means a more
"boring" or sub-optimal workflow (in the developer's opinion). In
particular, "coolness" is invariably associated with un-intuitiveness.

> there are media apps which require something
> nicer than just windows. and there is a Hollywood
> type of users who require this fancy stuff.

Is there? I sometimes really *do* wonder. Some of the incarnations (skins)
that WMP slips into (when I'm bored and play the "how weird can I make Media
Player look today?" game) are completely unusable, buttons become almost
unfindable pinpoints in a storm of raving graphical lunacy. And that's just
Microsoft - now for some of the really exotic stuff out there I daren't even
imagine, they are trying to 'outcool' WMP by orders of magnitude...

BTW, I also have the following "sanity" requirement in Chapter 1 of my GUI
standard:

Rule: GUI-0122
Title: Functionality vs. Form
Description: A User Interface design SHOULD emphasize functionality over
form ("eye candy") in all aspects.
This includes the developer's schedule prioritization, not just the end
product!

Example:
Examples of unwanted "eye (UI) candy":
- Superfluous (i.e. potentially misleading, counter-intuitive or
distracting) graphics, even if (or, more to the point, particularly when
you think) it "looks great"
- Flat "ambushing" controls and other coolness that needs to be "discovered"
by scanning the app surface with the mouse
- "Cute" animations and sounds

Rationale:
A User Interface (for professional use) is not a suitable arena for artsy
fartsy design.
This has two aspects, from a customer and internal company point of view:
(1) The customers generally do not appreciate it and will not pay for it;
The end user's interests should always take priority over the programmer's
artistic ego.
(2) The project development budget (schedule, money) generally doesn't
afford it;
Excessive indulgence in UI schmalzification shall be considered as
inappropriate
diversion of project resources.
In summary: A programmer's ambitions in graphical artistry should never be
allowed to interfere with the interests of the customer (functionality-wise)
or those of the company (resource/schedule-wise).

Exceptions:
This rule shall not be used as an excuse to violate any other rule in this
standard.
Furthermore, in very specific cases, Management may approve additional
visual/stylistic (non-functional) efforts to be expended for non-technical
(e.g. marketing) purposes.

--
Kristofer


.