1
00:00:01,936 --> 00:00:05,600
In this video, we are going to talk about mental models,
2
00:00:05,600 --> 00:00:09,017
and the questions that we are going to tackle here are:
3
00:00:09,017 --> 00:00:15,186
“What makes an interface learnable?“ and “What leads to errors that people make in user interfaces?”
4
00:00:15,186 --> 00:00:19,997
And to do that, I’d again like to start with an example from the physical world.
5
00:00:19,997 --> 00:00:23,582
Here we are outside the Computer Science building at Stanford.
6
00:00:23,582 --> 00:00:28,010
And what I’d like to show you is an example of a user interface error.
7
00:00:28,010 --> 00:00:34,131
It’s really simple one: Our department and its front door has two doors.
8
00:00:37,085 --> 00:00:44,965
It both have exactly the same handle on them. However, the door on the right never actually opens.
9
00:00:44,965 --> 00:00:53,890
So, if I go to use this door right here, 24-hours-a-day 7-days-a-week it never works — it’s locked!
10
00:00:53,890 --> 00:00:58,633
So why does it have the same handle as the other that does open?
11
00:00:58,633 --> 00:01:03,573
And you can see right here that a whole lot of people have tried using this handle.
12
00:01:03,573 --> 00:01:06,353
In fact, faculty who have been around for years
13
00:01:06,353 --> 00:01:11,425
still often make the mistake of grabbing the wrong door.
14
00:01:11,425 --> 00:01:14,998
This would be a whole lot better if this door had no handle here.
15
00:01:14,998 --> 00:01:17,913
You could still exit — you can see this part right here —
16
00:01:17,913 --> 00:01:23,255
but if want to enter, you would know where to grab and which door to use.
17
00:01:24,578 --> 00:01:26,454
Let’s say you’ve got a refrigerator,
18
00:01:26,454 --> 00:01:31,312
and the problem is that he freezer is too cold, but the fridge is all just right.
19
00:01:31,312 --> 00:01:35,586
This refrigerator has two dials: One of them is labelled A through E,
20
00:01:35,586 --> 00:01:39,082
the other is labelled with numbers, 3 through 7.
21
00:01:39,082 --> 00:01:41,009
and there’s an instruction manual
22
00:01:41,009 --> 00:01:45,620
that lists combinations of letters and numbers for different settings of food.
23
00:01:45,620 --> 00:01:52,802
So what do we do to have the refrigerator stay the same, but the freezer to be less cold?
24
00:01:54,833 --> 00:01:59,543
Well, the action is going to depend on the mental model that you have of the system:
25
00:01:59,543 --> 00:02:03,222
One reasonable model that you could have is that there are two cooling units,
26
00:02:03,222 --> 00:02:06,082
and there’s one dial that controls each of the units.
27
00:02:06,082 --> 00:02:08,417
And, in that case, what you would want to do
28
00:02:08,417 --> 00:02:13,469
is [to] figure out which of those is connected to the freezer and tweak that dial.
29
00:02:13,469 --> 00:02:18,480
[It] turns out that’s not actually how it works: That there’s only one cooling unit in this refrigerator,
30
00:02:18,480 --> 00:02:22,323
and then it has a splitter which controls the proportion of cold air
31
00:02:22,323 --> 00:02:26,308
that goes into either the refrigerator or the freezer.
32
00:02:26,308 --> 00:02:29,348
And so, if you’d like to be abe to change only one of the two chambers —
33
00:02:29,348 --> 00:02:32,090
in this case: make our freezer less cold —
34
00:02:32,090 --> 00:02:34,828
what you have to do is [to] move both of the dials —
35
00:02:34,828 --> 00:02:38,228
dial back the total amount of coldness going into the refrigerator,
36
00:02:38,228 --> 00:02:40,647
and then change the fraction
37
00:02:40,647 --> 00:02:45,763
so that the fridge still gets the cold air that it needs but the freezer is getting less.
38
00:02:45,763 --> 00:02:50,878
If a lot of users misunderstand the functions of these two dials and get them wrong,
39
00:02:50,878 --> 00:02:55,251
then I think it’s fair to say that this is a poor user interface.
40
00:02:56,512 --> 00:02:59,283
There’s a lot of ways that you could fix this.
41
00:02:59,283 --> 00:03:08,733
Pause the video and think of a few of how you might make this refrigerator interface better.
42
00:03:08,733 --> 00:03:11,157
Here’s a couple that I came up with:
43
00:03:11,157 --> 00:03:17,315
One is if the user believes that one dial controls the fridge and the other dial controls the freezer,
44
00:03:17,315 --> 00:03:20,163
you could have the functionality of the system work that way —
45
00:03:20,163 --> 00:03:24,111
that you’d have two blowers, one for each.
46
00:03:24,111 --> 00:03:29,122
You could also simulate two blowers, by having computation in the middle
47
00:03:29,122 --> 00:03:33,704
and still have the dials connected one for each of the two.
48
00:03:33,704 --> 00:03:36,619
Alternatively, if you really felt like it was essential
49
00:03:36,619 --> 00:03:43,142
to have the “total cold plus changing the fraction” model,
50
00:03:43,142 --> 00:03:48,102
which is probably not as good a user interface but might be needed for cost reasons,
51
00:03:48,102 --> 00:03:50,828
in that way you could think of a way to have
52
00:03:50,828 --> 00:03:58,465
a diagram or other kind of cue that would explain better what was going on rather than cryptic text.
53
00:03:58,465 --> 00:04:04,390
In all of those cases, the goal is for the user interface to beacon to the user
54
00:04:04,390 --> 00:04:10,171
what the mental model that they should think about the system with is.
55
00:04:10,171 --> 00:04:15,978
And, of course, as you interact with the system more, your model becomes more sophisticated.
56
00:04:15,978 --> 00:04:19,294
But there’s a big pitfall and a danger of being a designer:
57
00:04:19,294 --> 00:04:24,074
You’ve spent so much time with the system that you know it works under the hood
58
00:04:24,074 --> 00:04:26,987
and you how you imagine other people will think about it.
59
00:04:26,987 --> 00:04:32,559
But your expertise can be crippling: The mental model that you expect users to have —
60
00:04:32,559 --> 00:04:36,867
you expect it to be the same as yours — just often doesn’t pan out in practice.
61
00:04:36,867 --> 00:04:41,313
And that’s one of the reasons why it’s really important to get real people who are not the designers
62
00:04:41,313 --> 00:04:43,973
in front of interfaces as soon as possible —
63
00:04:43,973 --> 00:04:49,372
to help you discover those differences between your mental model and theirs.
64
00:04:49,372 --> 00:04:53,856
And the benefits of aligning the user and designer mental models are obvious:
65
00:04:53,856 --> 00:04:57,746
Because when you have this mismatch, that can often lead to slow performance,
66
00:04:57,746 --> 00:05:02,086
or errors, and frustration on the part of the user.
67
00:05:02,086 --> 00:05:06,091
Where do these mental models come from? Well, that’s a fascinating question,
68
00:05:06,091 --> 00:05:11,063
and one that deserves a longer answer than I can offer in this short video.
69
00:05:11,063 --> 00:05:14,352
But I can say a few things to get you started:
70
00:05:14,352 --> 00:05:17,821
The first is that people reason about new interfaces
71
00:05:17,821 --> 00:05:21,644
by analogy to old interfaces that they’re more familiar with.
72
00:05:21,644 --> 00:05:26,209
And when can leverage that — when you can figure out what people are familiar with —
73
00:05:26,209 --> 00:05:29,967
and use those metaphors intentionally in the construction of new interfaces,
74
00:05:29,967 --> 00:05:32,199
you’ll often be really successful.
75
00:05:32,199 --> 00:05:36,826
So, for example, if you can say that a word processor is like a typewriter,
76
00:05:36,826 --> 00:05:43,650
then people will transfer their believes and skills with the typewriter over to the new word processor.
77
00:05:43,650 --> 00:05:49,013
The models that we build that guide our action: We have about our behaviour, of other people’s,
78
00:05:49,013 --> 00:05:54,171
of objects, of software — really anything and anybody that we interact with.
79
00:05:54,171 --> 00:05:57,511
But that’s not to say that everything is tidy and organized upstairs:
80
00:05:57,511 --> 00:06:02,542
Our mental models are incomplete; they’re inconsistent; they change over time;
81
00:06:02,542 --> 00:06:05,605
and they’re often rife with superstition.
82
00:06:05,605 --> 00:06:07,861
The second thing that I’d like to talk about today
83
00:06:07,861 --> 00:06:13,173
is two important different kinds of errors that are based on the user’s mental model.
84
00:06:13,958 --> 00:06:19,159
The second thing that I’d like to do today is to distinguish two important categories of errors
85
00:06:19,159 --> 00:06:25,899
that are based on differences in what the user’s mental model is about what they believe.
86
00:06:25,899 --> 00:06:28,491
The first category is a slip.
87
00:06:28,491 --> 00:06:37,431
With a slip, you have the right model of how a system works, but you just accidentally do the wrong thing.
88
00:06:37,431 --> 00:06:47,445
So, if I go to reach for one button and press another — just by a motor error — that would be a slip..
89
00:06:47,445 --> 00:06:52,819
On the other hand, a mistake is when I do what I intend to do,
90
00:06:52,819 --> 00:06:57,290
but I have the wrong model of what I ought to do.
91
00:06:57,290 --> 00:07:02,894
So, if I’m driving, and I think that I ought to take this highway exit to get [to] where I need to go,
92
00:07:02,894 --> 00:07:09,177
and I take it exactly as I intend to, but I was wrong in my belief, that would be a mistake.
93
00:07:09,177 --> 00:07:16,109
And, as a designer, you’ll correct these two kinds of errors — or prevent them — in your design differently.
94
00:07:16,109 --> 00:07:20,982
Slips you’ll most often try to prevent by improving the ergonomics
95
00:07:20,982 --> 00:07:23,673
or visual design of the user interface —
96
00:07:23,673 --> 00:07:26,819
spread things out so it’s less likely that you’ll hit the wrong thing;
97
00:07:26,819 --> 00:07:29,020
make targets bigger.
98
00:07:29,020 --> 00:07:33,503
With mistakes, on the other hand, what you’ll need to do is [to] provide better feedback,
99
00:07:33,503 --> 00:07:36,039
or make clear what the options are.
100
00:07:36,039 --> 00:07:38,440
So, limit the number of mistakes that you [could] make.
101
00:07:38,440 --> 00:07:43,853
You’ll want to improve the user’s ability to perceive the affordances of your software:
102
00:07:43,853 --> 00:07:47,819
Make it clear to them what is possible to do.
103
00:07:47,819 --> 00:07:51,143
Here we have an interface that led to a lot of user errors.
104
00:07:51,143 --> 00:07:57,321
This is a ballot from Palm Beach County, Florida during the 2000 presidential election in the US.
105
00:07:57,321 --> 00:07:59,728
There were two major party candidates —
106
00:07:59,728 --> 00:08:04,729
the Republican candidate George Bush and the Democratic candidate Al Gore.
107
00:08:04,729 --> 00:08:08,460
Across the nation they were, overall, running neck-in-neck.
108
00:08:08,460 --> 00:08:14,224
There were also eight other candidates, to each gathered a smaller fraction of the vote.
109
00:08:14,224 --> 00:08:20,925
A user’s vote was recorded by a hole being punched out along the centreline of the ballot.
110
00:08:20,925 --> 00:08:23,805
It appears that, due to bad user interface design,
111
00:08:23,805 --> 00:08:27,340
people who intended to vote for one of the candidates, Al Gore,
112
00:08:27,340 --> 00:08:36,353
instead, accidentally pressed the hole corresponding to a different candidate, Pat Buchanan.
113
00:08:36,353 --> 00:08:41,519
While we’ll never know for sure, the data suggested that this is probably the case.
114
00:08:41,519 --> 00:08:47,067
So, the people who vvoted in Palm Beach County using this ballot style,
115
00:08:47,067 --> 00:08:52,522
about 0.85% of the votes were for Pat Buchanan.
116
00:08:52,522 --> 00:08:56,806
However, people who voted absentee, using a different style of ballot,
117
00:08:56,806 --> 00:09:00,287
had a much lower rate of votes for Pat Buchanan,
118
00:09:00,287 --> 00:09:07,502
and the reason appears to be that this hole in the middle right here was ambiguous —
119
00:09:07,502 --> 00:09:13,131
Yes, there’s an arrow pointing to it from the right, but it kind of lines up to the spot on the left.
120
00:09:13,131 --> 00:09:15,667
So, it appears that for about 0.6% of voters,
121
00:09:15,667 --> 00:09:21,845
they thought that that second hole corresponded to Al Gore rather than Pat Buchanan.
122
00:09:21,845 --> 00:09:27,089
And the question for you is: Is this a slip? or is this a mistake?
123
00:09:27,089 --> 00:09:30,201
These erroneous votes are the result of a mistake,
124
00:09:30,201 --> 00:09:34,966
because voters performed the manual operation that they intended to perform —
125
00:09:34,966 --> 00:09:37,479
punching that second hole —
126
00:09:37,479 --> 00:09:43,474
however, they had the wrong mental model about what punching that second hole meant.
127
00:09:43,474 --> 00:09:47,208
WIth better user interface design, it could have been clear
128
00:09:47,208 --> 00:09:54,340
which of these was the hole that corresponded to a Democratic candidate versus the Reform candidate.
129
00:09:54,340 --> 00:09:59,857
Another important lesson to learn from the butterfly ballot problem is that of consistency:
130
00:09:59,857 --> 00:10:07,310
Whenever we reuse designs that are already successful, we are less likely to make accidental mistakes.
131
00:10:07,310 --> 00:10:11,119
By contrast, as happens with a lot of voting systems,
132
00:10:11,119 --> 00:10:14,020
when every county makes their own voting system
133
00:10:14,020 --> 00:10:18,027
— or at least there’s broad diversity in the voting systems used —
134
00:10:18,027 --> 00:10:22,390
it’s much more likely that usability bugs will crop up.
135
00:10:22,390 --> 00:10:27,881
And so one way that we could fix this would be to have a nationwide standard voting system
136
00:10:27,881 --> 00:10:31,355
where everybody votes using the same user interface.
137
00:10:31,355 --> 00:10:38,234
One appealing option for a nationwide voting system would be to use electronic voting.
138
00:10:38,234 --> 00:10:43,021
If we were to build a better user interface for voting, what would it be?
139
00:10:43,021 --> 00:10:45,967
Well, given that we’re in a computer science class,
140
00:10:45,967 --> 00:10:51,360
one natural suggestion to offer up would be electronic voting.
141
00:10:51,360 --> 00:10:55,168
And electronic voting certainly has some very clear appeals:
142
00:10:55,171 --> 00:11:00,344
For example, it is much easier to internationalize to many different languages;
143
00:11:00,344 --> 00:11:03,578
You can have pictures of candidates to make things clear;
144
00:11:03,578 --> 00:11:07,051
You can have a touch screen so that you have direct manipulation.
145
00:11:07,051 --> 00:11:11,878
All of these are important and good advantages to electronic voting.
146
00:11:11,878 --> 00:11:15,771
However, as David Dill in the Verified Voting Foundation point[s] out,
147
00:11:15,771 --> 00:11:18,554
there’s one major problem with electronic voting:
148
00:11:18,554 --> 00:11:23,526
How do you know that the machine recorded the vote that you intended?
149
00:11:23,526 --> 00:11:28,316
And their proposed solution to this user interface problem is really clever:
150
00:11:28,316 --> 00:11:36,591
What they proposed is that the machine print out a paper receipt of the vote that you cast;
151
00:11:36,591 --> 00:11:41,925
however, you don’t get to take the receipt with you, because that would run the risk of vote-buying.
152
00:11:41,925 --> 00:11:47,309
Instead, that receipt falls behind a glass or plastic clear pane,
153
00:11:47,309 --> 00:11:52,641
and so you can see it being printed out, and you can see it go into a bin,
154
00:11:52,641 --> 00:11:55,936
and it’s stored there for the purposes of recount.
155
00:11:55,936 --> 00:12:00,986
That way, you can always manually verify the computer-generated tally.
156
00:12:00,986 --> 00:12:06,502
The butterfly ballot costs problems because the representation was really confusing —
157
00:12:06,502 --> 00:12:10,601
What lined up with what was hard to figure out.
158
00:12:10,601 --> 00:12:13,490
Here’s an example that’s much better:
159
00:12:13,490 --> 00:12:18,671
This is a seat user interface for an automobile that employs a “world in miniature” strategy.
160
00:12:18,671 --> 00:12:22,271
It offers controls for manipulating parts of the seat,
161
00:12:22,271 --> 00:12:26,125
and the interface for doing that is a miniature seat itself.
162
00:12:26,125 --> 00:12:33,229
So, if you’d like to move the headrest back, you can move the miniature headrest back.
163
00:12:33,229 --> 00:12:38,927
By having this clear mapping, users are much less likely to make errors.
164
00:12:38,927 --> 00:12:44,049
So far, we’ve seen how direct manipulation enables users to behave with much more expertise
165
00:12:44,049 --> 00:12:47,681
by leveraging familiar real-world metaphors.
166
00:12:47,681 --> 00:12:53,293
This “directness in real-world” metaphor — like “to move a slider you move a slider” —
167
00:12:53,293 --> 00:12:59,458
helps give users a good idea of how each object works and how to control it.
168
00:12:59,458 --> 00:13:05,391
And also, the interface’s physical form discloses what functionality it provides.
169
00:13:05,391 --> 00:13:08,939
So this is all great, right? Well, here’s the challenge:
170
00:13:08,939 --> 00:13:14,932
The reason that we have technology and software as opposed to the real world that we used to have
171
00:13:14,932 --> 00:13:17,728
is that we want to be able to do something new!
172
00:13:17,728 --> 00:13:21,754
So, the reason that have a digital slider as opposed to a physical slider
173
00:13:21,754 --> 00:13:27,413
is that, at least somewhere in the system, there’s some kind of new functionality being offered.
174
00:13:27,428 --> 00:13:29,592
And so, as Jonathan Grudin points out,
175
00:13:29,592 --> 00:13:33,733
if technology is providing an advantage — if there is this new functionality —
176
00:13:33,733 --> 00:13:38,509
at some point, the correspondance to the real world has to break down.
177
00:13:39,094 --> 00:13:46,222
So this gap between the new technology and the current practice is necessarily going to be there.
178
00:13:46,222 --> 00:13:51,521
But your goal, as a designer, is to minimize this distance as much as possible.
179
00:13:51,844 --> 00:13:54,333
One of my favourite examples of a user interface
180
00:13:54,333 --> 00:14:00,888
that has this property of offering new functionality but minimizing the distance to current practice
181
00:14:00,888 --> 00:14:04,101
is the system for DJ’s called “Final Scratch.”
182
00:14:04,101 --> 00:14:06,675
This is a photograph that [inaudible] Hartman took,
183
00:14:06,675 --> 00:14:11,860
and what you see here is that the DJ is operating two turntables,
184
00:14:11,860 --> 00:14:15,222
much as one would do with normal vinyl.
185
00:14:15,222 --> 00:14:21,066
The difference is that this is special vinyl: It has a code on the record,
186
00:14:21,066 --> 00:14:28,472
and that code is being used to control a Linux system that you see on the laptop off on the left.
187
00:14:28,472 --> 00:14:33,071
And so, as opposed to the record playing music that’s piped out to the speakers,
188
00:14:33,071 --> 00:14:38,553
the record plays a code to the computer, and the computer plays the music to the speakers.
189
00:14:39,553 --> 00:14:43,499
So why is this a good idea? Well, there’s a couple of reasons:
190
00:14:43,499 --> 00:14:48,479
One, it means you can play anything, not just something that’s been produced into vinyl.
191
00:14:48,479 --> 00:14:52,408
Another one is that you only have to carry two record[s], not 200.
192
00:14:52,408 --> 00:14:55,490
And, more generally, it gives you all of the benefits of digital music
193
00:14:55,490 --> 00:14:58,852
like, you can produce it in the morning and play it that evening —
194
00:14:58,852 --> 00:15:02,444
you don’t have to wait several months for production to happen.
195
00:15:02,444 --> 00:15:04,778
When used well, physical interfaces
196
00:15:04,778 --> 00:15:10,275
that leverage people’s dexterity, manual abilities, and intuitions about the physical world
197
00:15:10,275 --> 00:15:12,955
can be incredibly powerful.
198
00:15:12,955 --> 00:15:16,550
These physical interfaces can also yield an experience that’s more fun to watch,
199
00:15:16,550 --> 00:15:19,972
which, if you’re a DJ, is really important.
200
00:15:19,972 --> 00:15:22,001
And, finally, here’s some resources
201
00:15:22,001 --> 00:15:29,372
if you’d like to learn about mental models, errors, and butterfly ballots.