0:02
The design of your user interface, what input devices you choose,
how you lay information out on the screen, how large and
in what location the targets are, can have a big impact on user performance.
And this is one of the rare aspects of user interface design,
where we can actually measure things quantitatively.
0:24
Let's start out with a simple question.
Say we've got a mouse here, and we'd like to be able to know,
how long will it take if I have a button here, for
the mouse to hit that target?
1:31
This is the question that the industrial psychologist Paul Fitz wrestled with
in the 1950's.
This was an era of factory automation, and Fitz was interested in understanding,
say for example a machinist in a factory is grabbing parts out of different bins.
How long is that gonna take?
He distilled this down to a laboratory task and
he had people tap alternatively between two different strips of metal,
and what he did is he had people go back and forth as fast as they possibly could.
And the limit of that speed was the time that was purely a function of
the motor ability, as opposed to how long it took you to think and plan and
all of that stuff.
And what he found, this was also an era when information theory was on the rise,
is what he found is that in essence, the motor motion could be
modeled as if it were like an initial ballistic trajectory.
You start throwing your arm over towards the target, and
then you update in real time, and so in essence, you're adding bits to
the signal as you try and land in the particular location that you wanna hit.
And so, the amount of time that it takes is
a function of, so we can take our time here,
is gonna be a function of the distance is clearly involved.
The other thing that matters is the width of the target.
Fitz's initial study was in one dimension, it later got generalized to two.
So if you have a really narrow target, it's gonna take a long time.
If you have a big fat target, that's gonna go faster.
It turned out the ratio between the distance and the width matters a lot,
3:27
and in particular what Fitz found is that it's the log of these,
and if we take the log in base 2, that gives us a unitless measurement
of the index of difficulty acquiring a particular target.
That's the number of bits, in essence, so
control, that are needed to get to that target.
3:53
How long this takes is also going to depend on what your input device is.
So, some input devices are faster than others,
some muscle groups are faster than others, and that's gonna factor in here as well.
4:11
But just with our simple model, we can check that, that things make sense here.
So, D is our distance.
So this is D, how long it is from here to the center of the target here.
If the distance goes up the time's also gonna go up.
4:40
as our distance increases, the time is going to increase, but much more slowly.
So, [SOUND] we can also check our model that
as the width of the target increases.
So if we go from something that's really skinny, to something that's really fat,
as the width goes up, that's on the bottom of this fraction here.
So the time is gonna go down, and what we see,
that's really in my mind quite remarkable, is that
because of this information theoretic attribute of pointing.
5:28
That will take exactly the same amount of time, as if you have them out here and
you're trying to hit a target that's say twice as large and twice as far away.
So if this is 2x, and this distance is 2x, these will take the same time.
5:53
So let's look at the impact of input devices.
I have a bunch of different input devices here.
This is a mouse that you're probably all familiar with.
The mouse, as you can see in the picture here, was invented by
Doug Englebart at SRI in Palo Alto in the 1960's.
6:15
Engelbart and his team were creating the precursor to the modern graphical
user interface, and they wanted a way to be able to point to targets on the screen.
Notably, from the very beginning, Engelbart and team tried several
different alternative pointing devices and measured the relative performance of them.
And the mouse, that big wooden block that Englebart and his team invented,
performed better than all of the other alternatives that they tried.
Since then a bunch of other pointer devices have been created.
So here's a track ball.
Here we've got a joystick, which has a very different set of attributes.
6:57
Heck, we even have a, here's a foot mouse so, if you wanna hang out on the beach,
and be able to compute still, you can use this foot mouse here, and
7:13
Like this device here, which is intended for
Photoshop users to select commands and set parameters, and things like that, so.
We've got our general purpose input devices, like the mouse,
7:32
and then we've got some specialist devices that we'll get to later.
What we can do to measure the impact of different pointing devices,
is that we can measure, basically how many bits per second
of control a user can get out of a device.
So, with the mouse here we can measure by similar
repeated targeting task to what Fitz had.
We can measure how many bits per second come out of that device.
That's gonna modulate our Fitz law parameter, and so
we can build a new one here that's a little bit more rigorous.
So our time, is now gonna be a function of how long it takes you to get started.
+ your input device parameter.
This is your device choice or your muscle group choice.
8:45
Here you can see the number of bits per second that have been modeled for a mouse.
And in this graph, we have now several other input devices also and
what you see is a couple of things that are notable, the first one is that
the bits per second of the mouse is the greatest of any of these input devices.
9:20
as if you were tapping directly with your hands with no device intermediary.
Now that we have this information about Fitz law and how long it takes to be
able to select targets, we can use this to design better user interfaces.
So here's an example.
Again, And we've got our mouse here.
10:10
All right and I'm gonna do it eyes closed, so we want this to be an open loop.
How good is my motor system at figuring out how this is so
we don't have to close-loop involve the visual system as well.
So if I close my eyes and I start where this mouse is and,
I want to get down to select me I think I've got it.
Oh, I came up short.
11:36
Now if I'd like to be able to select the fifth element, so
maybe we'll call this one, two, three, four and a fifth one.
Ought to be able to select this eyes closed, a flick and I'm there.
12:00
The design of these menus was first published by Don Hopkins and friends.
And they were characterized, and refined, and many iterations were improved
by Bill Buxton and his students and colleagues at the University of Toronto.
And it's a really wonderful and elegant idea.
What we see here is a menu where I can do the input without having to use my eyes.
So this is gonna be a faster input system.
Also the distance to be able to select
any of these elements is effectively zero epsilon really.
12:47
Also, if I'm new to a menu, I don't know
what elements are so this might be undo,
redo, cut, copy, paste by pizza.
13:23
This style of menu has really taken off in 3D games, and in 3D modeling software,
in large part because the designers of the games and the modeling software.
We're friends and colleagues and fans of Bill Buxton's group at Toronto.
And so many of them are now at alias wave front and continuing to use ideas here.
13:50
So what have we seen so far?
We've seen that given a mouse location or a pointer location and the size and
location of a target we can model how long it will take the user to select it.
While things vary from user to user there are general
relative distances that you can see for most able-bodied users.
So that we can pretty reliably say that one input device
will be faster than another input device.
14:24
Also you can use this information to be able to say that
some target locations are preferable to other target locations.
And all things equal, you wanted to be as close to your mouse as possible and
you want it to be as big as possible.
And one design that effectively does both of these is the marking menu design for
gesture based selection and
in fact our next video is going to be about gesture based interaction.
Of course selection
tapping is not the only thing that you do with an input device.
So let's think about if you wanted to be able to beep the mouse.
What would you need to do?
So this is our mouse.
We'd like to come up with an input device that is more expressive,
that's faster than just the mouse.
As you can see in the picture here, different motor groups of the human body
have different through-puts associated with them.
The mouse, you can think of as an attachment
to our gross arm muscle motor group.
Some people wondered, well maybe it's just practice.
Maybe we got good at the mouse, and that's the way that it is.
So, for example, what if you were to put a mouse to your head?
15:38
Well, the challenge here, as one of my colleagues found out the hard way,
is that our neck muscles, at least for most of us.
We have a much smaller through put out of our neck muscles.
We have just a few bits per second and they burn out a lot more quickly.
They're designed for a different function.
They're not designed for the kinds of pointing and
grasping tasks that our hand and finger and arm muscles are.
16:06
So when one of my colleagues put on the head mouse and
tried to see if you can operate a computer with it that way,
he walked into Xerox PARC the next day at work and he was hunched over and
really tired and totally locked up and couldn't move.
It just wasn't a good place to put the input device.
16:22
But as you can see in this picture here,
the gross hand group is not the highest number of bits per second for anywhere.
You have a lot more dexterity in your finger muscles.
And so if you wanted to build an input device that beats the mouse,
you can see that you'd wanna be able to attach the input device so
to speak to your finger muscles where you get many more bits per second.
And that's why stylus and pen-based interfaces are so great for drawing tasks.
You can see in this picture here,
this is a great thing that would've been impossible to draw with a mouse.
Drawing with a mouse on the screen it's like drawing with a potato.
It just doesn't work very well.
But with a stylus you can get really nuanced information,
especially if you're talented, quite easily.
17:08
That doesn't mean that a stylus is good for pointing.
One advantage that a mouse has as a pointing device is that you have
a representation that's always on screen and you have a physical barrier in
terms of the surface that you're pushing against with the mouse, the desktop.
And that feedback and that constraint makes it easier to do small,
very careful movements.
And so selection is faster with a mouse but
once the pen is down, continuous motion is
gonna be a lot better with a stylus or a pen.
I'd like to teach you a trick for how to be able to leverage
the edges of the screen to be able to make input devices faster.
So, clearly one location on the screen that we know that's really
fast is right underneath the mouse.
18:23
As I move the mouse, say to the top here or to the side,
just like in our marking menu where we have infinite distance
here, We also have infinite distance here,
at least in a single screen setup, where I can go left, left, left, left, left.
And when I hit the edge, I can keep going and the mouse will pause here.
And so again, we have an infinite length target in this size.
So if you put a target right here, it's much easier to hit,
let's say you have a small button like that.
If it's on the edge of the screen, where you have that constraint,
that's gonna be a lot easier to hit than if you have the same button right here,
19:09
even though this one is closer.
And so here our distance, Is gonna be smaller,
but the effective width of this target is going to be a lot larger.
And so consequently,
the edges of the screen are your friend when designing user interfaces.
19:34
And that wraps up our discussion of the basics of human input.
You can see how these resources are helpful in designing
different interaction techniques, and now you can make your own too.
They can help you figure out where information should go on the screen.
We know that when things are bigger, they're easier to hit.
We know that when things are closer they're easier to hit.
We can also start to think about the design of different input devices.
So for example, what can we do to be able to beat the mouse or
to come up with something that's more natural or intuitive?