Thu

May 17
2007

Tim O'Reilly

Tim O'Reilly

The Uncanny Valley of User Interface Design

Bill Higgins has penned a thoughtful meditation on web design entitled The Uncanny Valley of User Interface Design. (For those who don't know it, the uncanny valley is a concept from robotics that posits that there is a point where increasing imitation of human behavior actually makes a robot seem less human. Pretending to be what you're not at some point becomes creepy.) Bill writes about "the uncanny value of emulated software interfaces":

There’s a lesson here for software designers, and one that I’ve talked about recently - we must ensure that we design our applications to remain consistent with the environment in which our software runs.... Obvious, you say? I’d agree that software designers and developers generally observe this rule except in the midst of a technological paradigm shift. During periods of rapid innovation and exploration, it’s tempting and more acceptable to violate the expectations of a particular environment....

Bill reminds us of the failure of Microsoft's Active Desktop and of Java applets, and points out that he sees the same error happening today with Ajax apps:

Just like Windows/Mac/Linux apps have a native look and feel, so too do browser-based applications. The native widgets of the web are the standard HTML elements - hyperlinks, tables, buttons, text inputs, select boxes, and colored spans and divs.... Like the web and Java before it, the availability of Ajax technology is causing some developers to diverge from the native look and feel of the web in favor of a user interface style I call “desktop app in a web browser”....

Bill contrasts Zimbra and Gmail:

To me, Zimbra doesn’t in any way resemble my mental model of a web application; it resembles Microsoft Outlook. On the other hand Gmail, which is also an Ajax-based email application, almost exactly matches my mental model of how a web application should look and feel. Do I prefer the Gmail look and feel over the Zimbra look and feel? Yes. Why? Because over the past twelve years, my mind has developed a very specific model of how a web application should look and feel, and because Gmail aligns to this model, I can immediately use it and it feels natural to me.

I think Bill is onto something. Read his full essay, study the examples he links to, and let us know whether you agree.


tags: web 2.0  | comments: 17   | Sphere It
submit:

 
Previous  |  Next

0 TrackBacks

TrackBack URL for this entry: http://blogs.oreilly.com/cgi-bin/mt/mt-t.cgi/5499

Comments: 17

  Andrew [05.17.07 05:36 PM]

Not just "on to something" but I think completely right. It's not so much that Zimbra looks so much like Outlook that I'm confused, but that Zimbra does not behave identically to Outlook, which makes it feel, well, like a broken version of Outlook. The differences are magnified into huge defects, while the similarities don't end up buying all that much.

  John [05.17.07 07:30 PM]

A sense of familiarity is important in making software intuitive however I feel the majority of users don't care if an app looks like it's browser based or a desktop...they just want it to help them get stuff done (as easily & quickly as possible).

  Antonio [05.17.07 08:36 PM]

I think this is not the whole story. I think that if we aim for 0 learning curve, as it might be appropriate for casual users of a web site, consistency is important. But if the user is more committed, if not expert, if not a power user, then I strongly recommend UI innovation and experimentation. Doinq away with folders is a great idea that has nothing do deal with web apps or desktop apps. It's equally great in Opera/M2 and gmail. If the opera folks thought they were on the desktop, hence the had to look like outllook, they would have been like outlook. No pain no gain.

  Anonymous [05.17.07 10:28 PM]

I think there is something to the idea that apps should behave as you expect them to do in the environment/OS you use. However, the new design ideas for UIs and the experimentation that has gone on with web page UIs are more likely to generate something that works better than the traditional app. Companies from MS, Apple and Sun have published design guidelines and while their boring conformity has made complex apps more consistent and easier to learn, that conformity has hampered new ideas. Just look at the kudos Apple has had for app design from its i- S/W products to the iPOD and the iPhone for better approaches to UIs.

  Alex Tolley [05.17.07 10:29 PM]

I think there is something to the idea that apps should behave as you expect them to do in the environment/OS you use. However, the new design ideas for UIs and the experimentation that has gone on with web page UIs are more likely to generate something that works better than the traditional app. Companies from MS, Apple and Sun have published design guidelines and while their boring conformity has made complex apps more consistent and easier to learn, that conformity has hampered new ideas. Just look at the kudos Apple has had for app design from its i- S/W products to the iPOD and the iPhone for better approaches to UIs.

  Patrick Mueller [05.17.07 11:26 PM]

The 'uncanny valley' effect is certainly obvious, to me, when I'm dealing with UI libraries that 'emulate' some other known interface; Swing and VisualWorks Smalltalk being the examples I'm most familiar, and frustrated with.

But the web is a different beast. There are far less standards on the web, than there are on desktop UIs.

I think the GMail to Zimbra comparison is a question of degree. GMail is less window-y; more document-y. On the other hand, Zimbra would appear to have a lot more function than GMail. The question is, where do you draw the line in adding function to keep your app document-y enough for familiarity? Are we talking about dumbing down our apps?

  Paul Cooper [05.18.07 02:47 AM]

I think the problem is that we always tend to filter these type of discussions through our own tastes. Personally I love Zimbra - at first I wasn't sure I would but now I do. I also use Gmail and I like it but I'm glad it's not my main mail client, however I know some people pipe all their mail into Gmail because they love it.

I also think that non IT savvy users don't have such a clearly constructed mental model of how web apps work - by far the most popular email apps are hotmail and yahoo mail both of which are moving to or already at a similar approach to zimbra except with ever increasing addition of adverts and other annoying cruft.

I see a paradox - I've seen the uncanny valley in action; in general folks switching from Win -> Mac or Win -> Linux are happier with the best native interfaces, rather then trying to switch to some fake windows interface which isn't quite right. I.e. switching from desktop to desktop has UV in action.

However my experience with people adopting web apps is that they sometimes struggle with the native web UI paradigm and often prefer things that include desktop UI style ajax stuff. So desktop to web UI seems to sometimes have an anti-UV barrier effect - I would guess that things that were first desktop apps (e.g. email) have a higher barrier than things that sprang from the web (blogs, wikis, google). This would need more thought.

  John Kuo [05.18.07 12:15 PM]

This is an interesting quandary for Web App designers. On one hand, there are web standards, largely created for simple form and hyperlinked documents, which emphasize simplicity, portability, and performance. On the other hand, there are incredibly rich AJAX and Flex-based apps that offer interaction paradigms as rich or richer than desktop client apps like MS Office.

So, which way to err? I've found that once you begin offering client-style interactions, like drag, right-click, etc., the entire expectation of the user is 'converted' from a web-experience to a desktop app experience. So, it's like an unstable '3D saddle model' slippery slope--you either go all out RIA, or adhere to traditional web standards. Which way Web 3.0 goes will be interesting to follow...

  Andre Behrens [05.18.07 01:00 PM]

My problem with Zimbra was not that it looked uncannily like a desktop app, but that it looked bad. I have no problem with a web app that looks like a regular app.

The other problem was that it was slow. That was the big problem. Painfully, painfully slow.

So for me, less the uncanny vally of interface design, and more the very old fashioned too-slow and too-ugly vally. It's relative resemblence to an existing application is beside the point in my view.

Note, this was a few months ago. Perhaps both have improved since?

  Denis [05.18.07 03:20 PM]

Zimbra slow? Better check the server setup, it's actually impressively quick when you throw a huge amount of mails at it. Try searching all your mail in Outlook when you have 3GB of mails.. The search works a lot better than Gmails search aswell, Google insists on stripping a lot of vital characters from their indexes, which works with websearch but not email search.

The UI responsiveness is also very good compared to other similar apps. Comparing Zimbra to Gmail might initially be interesting, but Gmail isn't really a drop in replacement for a desktop email client. Zimbra actually works like one, in every sense now.

  Joseph [05.18.07 04:04 PM]

I couldn't agree more. People are trying to re-create desktop environments on the web. WHo said that's what the user wants? THe user wants SPEED. Cut the crap. WHy did Google every achieve market share? It all started with speed, cutting the crap. ANd now with stuff like Gmail which is full of javascript that has to be downloaded, the speed has gone out of the Google. It's only a matter of time before the search pages themselves crawl to a halt.

Add the cycle starts again.

  Daniel [05.19.07 07:01 PM]

He's definately onto something. Zimbra still looks weird to me in a way that it is visually somewhere in between the classic Windows look-and-feel and a "website".

But I assume this thinking will vanish as soon as web apps and frameworks become more popular AND visually pleasing. For example, it's already pretty hard to develope a web app based on ExtJS and produce something bad-looking.

  Yong Su Kim [05.20.07 11:18 PM]

I agree with the general observation but I think there's value in cross pollination of UI concepts between web applications and desktop applications. The trick is going to be in figuring out which UI concepts to take and incorporate into your application.

  WilliamChen [05.21.07 12:34 AM]

Hey, guys, I don't agree with his Uncanny Valley theory. This is a completely wrong anology to user interface designing.
Back to Uncanny Valley theory, why do we feel odd to an almost-but-not-quite-human robot? Because we know beforehand this object is a robot, not a human, although it is very much like a human. Therefore, no matter how closely it looks like a human, you will feel more and more uneasy with it. This is a sychological phenomenon. I believe if somebody leads a real human in front of you and tell you he is a robot, you will also feel more and more uneasy with this guy. No matter how much he looks like a normal human and he in fact IS a human.
For the same reason, if a swing application is running using Windows Look And Feel using java 6, and if you tell the end users that the application is developed with C++ on MFC, or simply don’t tell him anything about your technology, he is surely not aware it is swing application.
Most of the end users don’t know what is Swing application and what is SWT application. They simply uses these application. Only java developers are aware of this distinction. Even with java developers, if you dont’ tell him it is a Swing application, he is probably not aware the so-called “Uncanny Valley” in it.
In another direction, aren’t native widegts emulated? Of course they are drawn in C/C++ or ASM. But they are not “native” as you think.
In a word, human beings are very likely to be influenced by the beforehand message, no matter it is in fact inaccurate.

  Mike Shaffer [05.21.07 10:01 AM]

Great line of debate and conversation...

My shop has spent years turning "intranet" applications into full fledged Desktop applications. Except we're still using the browser as the application container and what we've accomplished is (in our mind) outstanding. Controls that look like trees, a huge infrastructure to prevent the back button, etc... So from our point of view, they're brilliant. But from the user's point of view; they're close, but not quite there. All the glorious AJAX and Javascript Libraries and cleverness has gotten us a B+ from the users. Close, but no cigar. And that's the problem with browser based apps that try to be desktop apps. I've yet to see one that is "just as good" as it's desktop twin. The truly successful web apps (IMHO) are the ones that embrace the browser, like GMail and at (it's simple but it works) Amazon and every other shopping app like it. The new Yahoo email is a horrible mutation between the two...not a good web app nor a well done desktop app wanna be. But that's another story...

  Pauric [05.21.07 10:18 AM]

I'm in agreement. I've noted the phenomenon pop up in a couple of areas of ui design. Widgets and os interactions, inc web 'platform'.

1) I've designed a 'mimic' widget which is a virtual representation of a a real world device. The mimic started out as a very literal representation, but then evolved in to something more simplistic. Two reasons. a) the literal representation fell in to the valley. Pulling the design back down the graph allowed for more functionality in the widget.

2)The uncanny valley of machine interaction. I've seen a number of people note they dont anthropomorphise their machines. Again I believe OS (inc web) is somewhere at the start of the decline in the valley. Heading towards personal agents re-enabling anthropomorphism with machines.

  Gregory Raiz [05.26.07 09:34 PM]

The uncanny valley of GUI doesn't exist. There are only good designs and bad designs.

The reason Zimbra has the ‘uncanny’ feeling is because it’s borrowing a bunch of desktop interactions that are known to be difficult. They are also tossing out a bunch of good things from the web experience....


-G

Post A Comment:

 (please be patient, comments may take awhile to post)






Type the characters you see in the picture above.

RECOMMENDED FOR YOU

RECENT COMMENTS