Monday, December 28, 2009

WIMP is to GUI as OCGM (Occam) is to NUI

The Graphical User Interface has WIMP -- Windows, Icons, Menus, Pointing Devices -- as it's foundational metaphor. These four things permeate the GUI experience and serve as the base of all GUI interactions.

What is the equivalent for Natural User Interfaces? History will decide for sure, but based upon common NUI designs and applications so far and what is going on in deep-research at Microsoft and elsewhere, we might be able to figure out what it will be.

So far, the only common term is post-WIMP, used when referring to interfaces beyond GUI. That term doesn't reveal anything about what it is, only what it is not. We know that NUIs will not be based upon WIMP-y ideas.

There has been an on-going discussion of the actual definition of post-WIMP and there are several suggestions so far. There are really two things that are being discussed:
  1. What are the metaphors that replace Windows, Icons, Menus, and Pointing Devices?
  2. What is the best acronym?
The acronym seems like a minor thing but for mass acceptance it needs to be pronounceable and memorable. WIMP is both of those, even though it has a negative connotation.

I had a discussion on this with Jonathan Brill late last year. His opinion was that the term should be PATA - Places, Animations, Things, Auras. This was a good starting point, although terms were debatable and the acronym was not memorable.

I had my own ideas and modifications but wanted to check to see what people smarter than myself said.

August de los Reyes, Principal Director of User Experience for Surface Computing at Microsoft, has been giving a talk titled Predicting the Past for at least 18 months. It evolved and recently he briefly suggested TOCA - Touch, Objects, Containers, Actions, as the WIMP replacement. This can be seen in his ReMix 2009 presentation around the 19:15 mark:

[1/7/2010: Sorry, link and embedded video seems to be broken, so I removed the embedded video. Perhaps site maintenance. I will update if I find a working link.]

He only briefly mentions it and them moves on. Objects and Containers make sense, but specifying Touch seems to exclude any in-air free-form gestures like would be used in Natal or WiiMote Multi-touch style interfaces. In addition, Action could be interpreted in many ways, although I assume August intended that to refer to both gestures and manipulations.

I called up my new friend Ron George, who just left the Advanced Design Team at Microsoft to form his own NUI Design firm. It turns out that he was one of the people doing deep-research in Microsoft and has been laboring over this idea for a few months. Internally he had been playing with Manipulations, Gestures, Objects, and Containers as the post-WIMP concepts, and was actually in the process of writing a blog post on the topic when I called him. We spoke for a few hours and he suggested that Gestures and Manipulations are both important enough to be included as proper terms. The definitions of gestures and manipulations include the possibility of both touch and free-form input. All the other ideas like auras and animations become part of the behavior of an object, container, gesture, or manipulation. Ron had some genius insights based upon his experience within various Microsoft teams and he got me on board with those concepts.

Now the only remaining problem was the finding out the right order for the acronym that is pronounceable, memorable, and has a nice double meaning. I wrote out all the permutations of G, M, O, and C and found one that stood out as a beautiful, elegant acronym. Therefore; based upon several months of discussion and taking into account input from various experts in the field, we submit to the NUI community the following term as the replacement for WIMP:

Objects, Containers, Gestures, and Manipulations, or OCGM, pronounced Occam, as in Occam's Razor.

Occam's Razor is a logical principle that can be summarized as "All else being equal, the simplest answer is usually correct." This is the beautiful part, because this concept can and should be applied to interface design. Given two design choices, the simplest one would be preferred. In this case, measuring simplicity would depend upon the context and could mean the cognitive load, visual design, metaphoric layers, or other ideas.

Ron wrote a post about OCGM on his blog. He also started a thread at on this topic. In a future post I will go into more detail about what OCGM means to developers.

What are your thoughts?

[Updated phrasing and wording at 12/28/2009 3:10pm]

1 comment:

  1. Josh, I posted this on Ron George's blog:

    I posted a "PART I" response to this post on my blog- it is a bit long, because I'm in the middle of reading "Acting With Technology: Activity Theory and Interaction Design" and also thinking about concepts that relate to universal design that could be considered as we move forward in the "post-WIMP" world.

    The Post-WIMP Conversation: Some Thoughts about Conceptualizing the NUI, Part I


Note: Only a member of this blog may post a comment.