Monday, March 1, 2010

Blake's Definition of NUI

My friend Joshua Blake is, as noted in my last post, in the midst for writing a book on explaining how to develop multi-touch applications on Windows 7 and with Silverlight 3. Although that is the objective of the book (the cover is show on the left), his first paragraph is much more ambitious. It attempts to define Natural User Interfaces and to provide guidelines for the development of those interfaces.

As noted Josh his own blog post on the subject, I've taken a crack at the definition of NUI a few times with limited success. As is the case with so many new ways of doing things (e.g. Web 2.0, REST, Cloud Computing) defining it can prove difficult. NUI definitely falls into this category of technologies.

In Josh's new book he defines NUI as follows in his first chapter (you can read the chapter yourself here).

A natural user interface is a user interface designed to use natural human behaviors for interacting directly with content.
By itself the definition is not much clearer than others, but in his new book, Josh explains a lot about what has gone into this definition and his thoughts and writing are really very interesting. I really like the way he builds on Bill Buxton's off the cuff defintion of NUI as:

A user interface that "exploits skills that we have acquired through a lifetime of living in the world."
In particular Josh explains what Buxton may have meant by "skills" in a section titled "1.2.1 What are innate abilities and learned skills?" Here he explains that humans rely on both innate skills with which we are hard-wired as well as learned skills. For example, pushing things around with your fingers on a surface is an innate skill. Nearly all humans can do this and will be able to do it without in training. Learned skills, on the other hand, can be simple or complex. For example, using a mouse with a computer is a learned complex skill while learning the meaning of an arrow as an indicator of direction might be a simple skill. Simple skills are reusable while complex skills are not.

All that is very interesting as well as his writings about cognitive load, but what I like to focus on is innate vs learned skills and their importance to the definition of NUI. In particular I would like to see Josh change his definition of NUI slightly to read as follows:

A natural user interface is a user interface designed exploit both innate and learned skills for interacting directly with content.
In this definition I've combined Josh Blake's "behavior" definition with Buxton's "lifetime skills" definition to produce what I think is a pretty solid and clear definition. I left out "Humans" as this seems redundant - obviously we are talking about humans and not chimps or squirrels or whatever.


0 comments: