Archive for April, 2010

#3 Flow

The Lens of Flow

Running Out (by zetson)

The mental state in which a person becomes fully immersed in what he or she is doing is called flow. It creates a heightened state of mental focus.

It is important to minimized disruption to flow.

To ensure that you are not unnecessarily breaking the user’s flow ask yourself these questions:

  • If there are screen or page transitions are they natural to the flow?
  • Is every dialog/overlay/communication absolutely necessary?
  • Can the experience be contained in a single page/screen or context?
  • Is there a way to create persistent contexts that travel with the user?
  • Are there minimal ways to communicate state change without switching user context?
  • Does your interface employ inferences to amplify the user’s efforts?

The next to the last question above asks if there are “minimal ways to communicate state change without switching user context”. Yahoo! Photos ran into this problem when dragging photos to an album. After dropping photos onto an album a dialog pops up to confirm this is the action the user intended. Then a second dialog pops up confirming that the photos indeed were added to the album.

From Yahoo! Photos; Idiot boxes break the user’s flow.

Both of these dialogs interrupt the user’s flow (the user was busy organizing) and first asks a stupid question and then confirms obvious results. This is yet another Anti-Pattern I call Idiot Boxes. The idea of the Idiot Box is based on Alan Cooper’s principle: Don’t stop the proceedings with idiocy. If the next to the last lens question had been answered it could have prevented this problem. There are more subtle ways to communicate that the photos were added to the album. For instance, the album could have highlighted on mouse hover. And an indicator next to the album could indicate how many photos are inside, incrementing after the drop. Additional subtle interactions like these would eliminate the need to break flow to state the obvious. By answering the lens question, and taking care of nuance first would prevent the experience from breaking the user’s flow.

Sites that simplify the process of checking out can keep the user in the flow and along the way improve conversions, purchases, etc. An example of this is Whitestone Cheese. The experience is kept to a single page. Users can add cheese to the cart which is visible on the right side. The experience is not interrupted with unnecessary page transitions (note: there are times when page transitions are needed).

Whitestone Cheese Single Page Checkout (by Designing Web Interfaces)

From Whitestone Cheese; Single page checkout maintains flow.

Leave a Comment

#2 Physical Approximation

The Lens of Physical Approximation

Universality of cartoon imagery

When it makes sense, creating physicality in the interface is a good thing. However, physicality must be tempered with some abstractness in order for the interface to be easy to use.

To strike the right balance and approximate reality ask yourself these questions:

  • What objects are part of the user’s mental model for this experience?
  • Are any of these “objects” visible in the interface?
  • Do the objects interact with one another in a natural way?
  • Are there aspects of the physicality of the objects that result in more work for the user?
  • Can I add new abilities or characteristics to the object to simplify the interaction?

The Art of Game Design has a similar lens, Lens #54, The Lens of the Physical Interface.

In the field of software, object-oriented programming provides a way to model conceptual objects as well as real world objects. For a while there was a popular movement called Naked Objects that sought to automatically generate easy to use interfaces by identifying the core objects in an experience, model those in software, and render them as directly manipulatible elements. Of course there are several problems with this approach — one being that a good experience requires a balance between functional tasks and physical objects. But more on point it is not enough to just make the objects visible and interactive. Some level of abstraction and nuance is needed to get the right level of physicality.

Apple’s Human Interface Guidelines for the iPad nails this balance:

As you work on adding realistic touches to your application, don’t feel that you must strive for scrupulous accuracy. Often, an amplified or enhanced portrayal of something can seem more real, and convey more meaning, than a faithful likeness. As you design objects and scenes, think of them as opportunities to communicate with your users and to express the essence of your application.

A great example of this physicality is with the web site A Story Before Bed. You can record yourself reading a children’s book aloud for later sharing. The book is reproduced faithfully with the video & audio synced with the pages. Page flips look natural. And the physicality makes the experience work. My grand-daughter in Alaska has been delighted that her grandfather in California is virtually there reading to her.

From astorybeforebed.com; an example of physical realism.

While the book can be “played” from start to finish, the child may flip pages back and forth at will and the reading starts from the new point. This abstraction bends reality to put the child in control to create a better story listening experience.

In the book Universal Principles of Design, the principle Das Sing fur uns (things as we know them) uses map interfaces to describe the underlying principle for this lens.

A map is not the territory. It is the representation of the territory. Being more abstract increases its usefulness.
Streetview Guy (by Designing Web Interfaces)

From Google Maps; an example abstracting the concept of a map.

Just as a map is not a territory but a representation of a territory, so Google Maps is not just a physical map of a territory. For example, how do you indicate where you want to see a street view from? You do it by dragging around the little ‘street view guy’.

Sometimes physicality can can be taken too far. In the example below the user rates movies by dragging and dropping the movie into the loved it, haven’t seen it or loathed it buckets. While this interface has a real world physical metaphor (sorting into buckets) it lacks a simplifying abstraction. And because of that it lacks simplicity in use.

Flex application for rating DVDs with drag and drop.

This anti-pattern, Artificial Visual Construct, creates an artificial physical structure to support an interaction instead of just using a more abstract type of interaction — a simple star rating widget. Use the Lens of Physical Approximation to balance between physicality and some level of abstraction.

Comments (1)