How many things would you classify yourself as "expert" at? I drive to and from work every day, but I hardly consider myself an expert driver. I brush my teeth at least twice every day, and I'm no expert on oral care; just ask my dentist. I use Visual SourceSafe all the time, but I rarely use the more esoteric branching, pinning, and rollback features. I have to look through the help files when I do those things. I am a perpetual intermediate at a vast array of tasks, and expert at only a very, very tiny number of tasks. In The Inmates are Running the Asylum, Alan Cooper makes a similar case for users as perpetual intermediates:
The experience of people using interactive systems -- as in most things -- tends to follow the classic bell curve of statistical distribution. For any silicon-based product, if we graph the number of users against their particular skill level, there wiill be a few beginners on the left side, a few experts on the right, and a preponderance of intermediate users in the center.But statistics don't tell the whole story. This is a snapshot frozen in time, and while most people -- the intermediates -- tend to stay in that category for a long time, the people on the extreme ends of the curve -- the beginners and experts -- are always changing. The difficulty of maintaining a high level of expertise means that experts come and go rapidly. Beginners, on the left side of the curve, change even more rapidly.
Although everybody spends some minimum time as a beginner, nobody remains in that state for long. That's because nobody likes to be a beginner, and it is never a goal. People don't like to be incompetent, and beginners -- by definition -- are incompetent. Conversely, learning and improving is natural, rewarding, and lots of fun, so beginners become intermediates very quickly. For example, it's fun to learn tennis, but those first few hours or days, when you can't return shots and are hitting balls over the fence are frustrating. After you have learned basic racket control, and aren't spending all of your time chasing lost balls, you really move forward. That state of beginnerhood is plainly not fun to be in, and everybody quickly passes through it to some semblance of intermediate adequacy. If, after a few days, you still find yourself whacking balls around the tennis court at random, you will abandon tennis and take up fly-fishing or stamp collecting.
The occupants of the beginner end of the curve will either migrate into the center bulge of intermediates, or they will drop off of the graph altogether and find some activity in which they can migrate into intermediacy. However, the population of the graph's center is very stable. When people achieve an adequate level of experience and ability, they generally stay there forever. Particularly with high cognitive friction products, users take no joy in learning about them. So they learn just the minimum and then stop. Only Homo Logicus finds learning about complex systems to be fun.
Cooper goes on to decry the way software development is traditionally driven by opposite ends of the spectrum-- developers as advocates for expert users, and marketing as advocates for beginners (which is typically their audience). Who speaks for the intermediate users?
I'll take this a bit further: I think intermediate users are the only users that matter. The huge body of intermediate users is so dominant that you can and should ignore both beginner and expert users. Developing software to accommodate the small beginner and expert groups consumes too much time and ultimately makes your application worse at the expense of your core user base-- the intermediates. Beginners should either become intermediates or, in a manner of speaking, die trying. As for software targetting expert users exclusively (aka, developers), that's a tiny niche deserving of an entirely different design approach.
In my opinion, one of the most powerful tools we have for targetting intermediate users is the Inductive User Interface. IUI, as a concept, is actually quite simple: take the best design elements of the web..
The IUI model was developed during the creation of Microsoft Money 2000, an application for managing personal finances. Money 2000 is the product's eighth major release. Money 2000 is a large Microsoft Windows program with well over one million lines of code. Money 2000 is a Web-style application. It is not a Web site, but shares many attributes with Web sites. Its user interface consists of full-screen pages shown in a shared frame, with tools for moving back and forward through a navigational stack. On this foundation, Money 2000 adds a set of new user interface conventions that create a more structured user experience.
The Inductive User Interface design is nothing more than good programming in practice: never write what you can steal. And stealing the wildly successful web UI metaphors is such an utter no-brainer. The only question I have is why it's taking so long.
We have bits and pieces of IUI in Windows XP (try Control Panel, User Accounts), and there's a lot of evidence that Microsoft plans to utilize IUI much more heavily in Longhorn. But we don't have to wait for Longhorn; as responsible .NET developers, we should be building IUI interfaces today-- as in this MSDN Windows Forms sample.
To continue the discussion we started on my site here: http://drazen.dotlic.name/weblog/archive/2004/10/06/193.aspx ...
Take a look at "Crossing the Chasm" by Geoffrey A. Moore. Author argues that the market is split into groups in a way similar to Alan Cooper, but his premise (vastly simplified) is that in order to reach more conservative users, you first have to win less conservative ones (and you have to start with visionars/tinkerers, which are what you would call expert users, they are even more hard-core than early adopters).
The only group this author suggest it's safe to ignore is what he calles "laggards" or hard-core traditionalists, which will never change anything anyway.
It is a very interesting book, if not even eye opening, and I highly recommend it.
The only observation I have, is that the true "expert" users are developers, who may think they are users, but they really aren't. For example, it is very rare for me to work on a project that has me as an intended user. Usually I'm developing software for people whose work is nothing like mine, people who really don't care about computers other than as tools to get their work done.
I cover this in more detail here
http://www.codinghorror.com/blog/archives/000091.html
I am definitely an "expert" user of software, so I see things differently than these users do. I think these are the kinds of expert users Cooper was thinking of-- inappropriate users. Real users would never achieve this level of expertise with software, because they have other things to do!
Jeff Atwood on October 20, 2004 4:23 AMThe link to the Windows Forms example didn't work for me. This one does: a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnforms/html/winforms07202004.asp?frame=truehidetoc=true"http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnforms/html/winforms07202004.asp?frame=truehidetoc=true/a
Andrs on November 27, 2005 3:32 AMWith the Web 2.0 initiative, IUI will not necessary be the only solution available though the concept is still best for the novice to intermediate users.
jobrien on April 12, 2007 6:17 AMUpdated link for IUI: http://msdn.microsoft.com/en-us/library/ms997506.aspx
Mark Bernard on May 2, 2008 6:05 AMWhen I wish to view software from the perspective of intermediate users, I simply remove my eyeglasses and use the mouse with my left hand.
One step further would be to write a tool that will randomly replace a valid click with a double/triple/left/right-click or move the mouse X pixels immediately after a click to simulate a selection/drag.
This imaginary tool combined my self-imposed handicap would effectively simulate my grandfather using a computer.
...much love to my grandfather.
Astrochicken on July 24, 2008 10:32 AMThe comments to this entry are closed.
|
|
Traffic Stats |