8.28.2008

It's Been Too Long Since the Last Starbucks Post

I had occasion to go through a Starbucks drive-through earlier this week, and of course it raised some interesting design points. Starbucks always does, right?

First, the drive-through line itself was interestingly placed. If you were standing in the road, looking at the building, the drive-through window was on the right side. This means that cars don't have a ton of room to line up -- my commuting partner said that she's even seen the cars backed out into the road before. The design solution is pretty simple; just put the window on the other side of the building, so the cars can wrap all the way around the building.

Next came the ordering itself. My traveling companion ordered a breakfast sandwich with just egg and cheese, but the cashier read back the order as a "sausage with no sausage." In interaction design, we always preach that the designer shouldn't let the implementation model take over for the user's mental model, and this is a prime example of that phenomenon. The implementation model is how the Starbucks employee thinks of the sandwich: she refers to the sandwich in its entirety as "a sausage" and then qualifies it as "no sausage," but the user described it by listing the ingredients remaining after the sausage was removed. In this case, it's best to just go with the user's mental model -- but that's not how Starbucks rolls!

This reminds me of some problems I had with a Taco Bell back in my high school days in St. Louis. I'd want to order items sans beans, but I'd always describe them by listing the ingredients I did want... and of course, I'd always get a messed-up order. One day, I looked at the receipt and realized the cashiers didn't enter in the items by what did go on them (my mental model) -- rather, they keyed in what was removed from the default recipe. Once I figured this out, I started ordering "backwards," and I started getting correct tacos (apparently I was quite the junior interaction designer, haha).

Going back to Starbucks, there is one possible defense for their rewording of the order. It could be that they're encouraging patrons to learn the Starbucks-specific jargon that allows membership into its coffee elite. I've always been a bit impressed by the way Starbucks has leveraged design methods to create an "in-crowd" atmosphere among its expert users (even if it does come at the cost of learnability), so perhaps this is a subtle aid for newer customers to help learn the language.

In interaction design, we talk about something called a "pedagogic vector." This sounds complicated, but all it really means is that when designers have some function they want the user to learn, they attach it to a simpler function they know the user will perform. This forces an association between the two functions and helps the user expand their mental model of how the system works. A good computer example of this is keyboard shortcuts in menus: When a user sees "Save" enough times and sees the "Ctrl + S" across from it, he starts making an association, and it once he tries it out and discovers the shortcut, he learns what the underlined letter means.

In Starbucks' case, it's possible that restating the order pairs the "correct" phrasing with the novice user's naive phrasing to create a pedagogic vector that helps the user learn the jargon. Of course, it's also possible that the Starbucks cashiers are just snotty. I guess it depends on what kind of motives you want to ascribe to them. :)

8.20.2008

My Dad's Cell Phone (I'm Back!)

Wow, I really haven't posted here in a while. Vast apologies to you, dear imaginary readers! It's been a hectic couple weeks for me: I got a job, scheduled a spur-of-the-moment trip back to St. Louis to visit my folks before the job started, then came back to Chicago and immediately started working and apartment hunting. Most of that has quieted down now -- I'm back in town and settling in at the new gig, although I am still looking for a new place -- so hopefully I'll be back to frequent updates soon. Anyway, on to the content!

While I was at home, I was trying to help my dad turn his Sony Ericsson flip phone (a pretty badly designed phone, which he hates passionately) on vibrate. The first thing I tried, because it's how I'd do it on my Motorola L2, is clicking the volume down button on the left hand side of the phone. Well, that brought up a "phone status" window. Awesome. We eventually found the setting buried in, I kid you not, like a fourth-level menu. Now, there was a button (I think it was pound sign) that had a little musical note above it, and I bet that mght have helped us out... if we could've figured out how to activate it.

This phone was also the subject of a humorous debate a bit back, between myself and an extremely intelligent friend of mine who has a master's degree in computer science. I was looking at his Ericsson, which, like my dad's, has a button labeled "C" on it, and I said I suspected labeling a button "C" was bad interface design. He responded that "C" obviously stood for cancel, and no further explanation was needed. About a month later, my dad complained to me that the phone tried to delete his contacts when he hit the "Call" button...! Just for fun, try to think of some phone-related verbs that start with the letter C. Off the top of my head, I've got: cancel, call, clear, complete, close.

Anyway, the purpose of that anecdote isn't to denigrate comp scis, just to show how a designer has to think differently than most people, and even differently than very smart people. However, if a comp sci and an HCI grad fought a katana deathmatch inside the rusted shell of an abandoned nuclear submarine, my money's on the HCI grad.

8.06.2008

Elevators and Description Errors

I was about to take the elevator down to the lobby today, but when the doors opened on my floor, a curious incident gave me pause. A girl walked briskly out of the elevator, looked around, said "Wait a minute...", realized she was on the fifth floor, and walked back into the elevator to accompany me downstairs. This probably isn't too unusual -- I think a lot of people have gotten off elevators on the wrong floor before (I know I have). But, haven't you ever wondered why that happens?

The elevator-wrong-floor mistake falls into a category of slips called "description errors" (at least, that's what they're called in Norman's excellent primer "The Design of Everyday Things"). What's actually happening here is that the elevator user is matching characteristics of their environment to their mental description of how the situation should appear. So, the elevator rider is looking to step into the elevator, ride it for some period of time, then exit when the door opens on the desired floor. In my example, all these things were happening normally to the girl in the elevator, except that the elevator opened on 5 instead of the lobby. Since the environment matched her mental model pretty well, she performed what she thought was the appropriate action: exiting the elevator.

Although it might sound like I'm hanging this unknown girl out to dry, I'm really not. Description errors can happen to anyone, in a variety of circumstances -- have you ever thrown a dirty shirt in the trash instead of the laundry? picked up a toothbrush instead of a razor? or pressed "power" on the wrong remote? In all these situations, the right action is happening, it's just being performed on the wrong object.

An important note here is that description errors, like all mental slips, are more likely to occur under cognitive load. It's important to realize, though, that this doesn't mean solving calculus problems in your head while whistling a tune -- cognitive load can be as simple as thinking about what you'll be doing later in the day.

Finally, to relate this to design, it's tough to make a system follow useful conventions while still making it immune to description errors. I think it's doable, though, by identifying key decision points (like when the elevator opens) and including salient notifications to help the users keep track of what they're doing. For example, a voice could quietly say the number of the current floor when the door opens. Would this stop all description errors? Definitely not, but I'm sure it would help cut down on the number of embarrassing elevator situations.