Magic Ink: Tantilizing Ideas for Information Software Design

We’ve been thinking a lot about user experience for information-intensive applications. We ran across a passionate and insightful essay on the topic by Bret Victor entitled Magic Ink: Information Software and the Graphical Interface.

Bret notes that people can use software to learn, to create, or to communicate. His concern is with learning-oriented tools, and the misguided approaches used by software designers in creating these applications:

"Information software serves the human urge to learn. A person uses information software to construct and manipulate a model that is internal to the mind—a mental representation of information. Good information software encourages the user to ask and answer questions, make comparisons, and draw conclusions...Much current software fulfilling these needs presents mechanical metaphors and objects to manipulate, but this is deceiving. People using this software do not care about these artificial objects; they care about seeing information and understanding choices—manipulating a model in their heads...

...For example, consider calendar or datebook software. Many current designs center around manipulating a database of “appointments," but is this really what a calendar is for? To me, it is about combining, correlating, and visualizing a vast collection of information.

He arrives at the conclusion that information software design is fundamentally the same process as information graphic design.

"[Infographics] almost compel the viewer to ask and answer questions, make comparisons, and draw conclusions. It does so by exploiting the capabilities of the human eye: instantaneous and effortless movement, high bandwidth and capacity for parallel processing, intrinsic pattern recognition and correlation, a macro/micro duality that can skim a whole page or focus on the tiniest detail. Meanwhile, a graphic sidesteps human shortcomings: the one-dimensional, uncontrollable auditory system, the relatively sluggish motor system, the mind’s limited capacity to comprehend hidden mechanisms. A graphic presents no mechanisms to comprehend or manipulate—it plugs directly into the mind’s spatial reasoning centers."

This focus is in contrast with the typical approach used to design information software (I think we can safely say this applies to business intelligence software in particular):

"Many software designers feel they are designing a machine. Their foremost concern is behavior—what the software does. They start by asking: What functions must the software perform? What commands must it accept? What parameters can be adjusted? These designers start by specifying functionality, but the essence of information software is the presentation...

...The foremost concern should be appearance—what and how information is presented. The designer should ask: What is relevant information? What questions will the viewer ask? What situations will she want to compare? What decision is she trying to make? How can the data be presented most effectively? How can the visual vocabulary and techniques of graphic design be employed to direct the user’s eyes to the solution? The designer must start by considering what the software looks like, because the user is using it to learn, and she learns by looking at it."

He goes on to highlight the importance of using context to present the most relevant information at the right time. You want to consider the user—who they are and what they want to learn. Context can come from the environment (place, time, other related documents), history (last action, pattern of actions), or user interaction. The natural reaction for many software designers is to rely on user interaction. That is another underlying problem in Bret’s view:

"Information software mimics the experience of reading, not working. It is used for achieving an understanding—constructing a model within the mind. Thus, the user must listen to the software and think about what it says… but any manipulation happens mentally. The only reason to complete the full interaction cycle and speak is to explicitly provide some context that the software can’t otherwise infer—that is, to indicate a relevant subset of information. For information software, all interaction is essentially navigation around a data space."

Information software interaction itself is fraught with problems. Specifically, the user:

  • has to know what she wants
  • has to know how to ask
  • can get lost in the navigation process
  • has to physically manipulate the computer to express her need

The essay offers a number of examples from Bret’s work to demonstrate the use of context, visual information display, and judicious use of interaction. In addition, he offers thoughts on how to fix these problems. Worth a read if you want to understand why you’ve developed a tic working with your BI reporting interface.