Keeping The Menu Simple

In-N-Out Burger is a fast food institution here in California. Part of their appeal, I think, is their radically simplified menu.


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2007/09/keeping-the-menu-simple.html

Not sure if you have the right screenshot as an example. The product is Notetab Pro, which is meant for web developers who want to write HTML source code - yes, the hard way! It is a very powerful application at a very low cost ($30). The rest of the interface is pretty good too - it operates as a great text editor with programmable macros to do useful tasks. Generally, I would agree that an interface like that sucks, but many of the tabs are seldom used, practically speaking. Try using it - you will see what I mean.

I was going to mention the options dialogs in office (word, outlook etc.)… Modal dialog, invoking modal dialog, invoking…

I suspect, though, this is a function of the development process. Developer A is in charge of the COM Add-in Manager. Dev B is in charge of the Archive email settings… Dev Z in charge of somehow invoking these (erm… buttons on a form), without knowing how they will look.

Winamp does a good job of organising the options tree, though it’s still intimidating for novices.

In’N’Out Burger is successful, but I don’t think they’ve set the standard for how to run a restaurant, which makes me less inclined to translate their practices into software.

Just because some options aren’t visible from the menu, doesn’t mean they don’t exist… try asking for a neapolitan shake sometime or some of the other modifications…

http://www.in-n-out.com/secretmenu.asp

I loved asking for three-by-meats and well done fries while I lived in Westwood, right by a joint. And I was always found it funny that the car line outside was usually longer than the line inside. :slight_smile:

Azureus has an interesting option menu. Although I don’t particularly favor the rest of the interface (it has its moments), the option menu is easily customizable between Simple, Intermediate and Advanced, quickly hiding what users don’t need to see. It still warns you there’s more available, though, and even provides an in-options search feature. Cool.

Cheers

I don’t think an application designer should go to either extreme. The reason most people avoid the middle ground is that it is the most difficult to get right. You actually have to understand what your customers want, and what their priorities are.

If you make it too complex, you’ve given up, and you’re effectively saying you have no idea what the customers want. You’re leaving everything undecided.

If you make it too simple, you’re cutting out a lot of your potential customers who won’t see what they’re looking for. In the In N Out menu example, vegetarians might think they are limited to french fries and sodas, but the secret menu reveals grilled cheese options.

The trick is finding the middle ground. If you were purchasing a car, which of these choices would you find most suitable?

A) Color of car (choose one): gray.

B) Color of hood (choose one): gray, black, white, red, blue, green, gold. Color of left door (choose one): gray, black white, red, blue green, gold. Color of roof (choose one): …

C) Color of car (choose one): gray, black, white, red, blue, green, gold.

The trick is to identify what is important to your customer, and make that as simple as possible.

I’ve been using Super NoteTab Light for years now (I prefer the free one) it is just awesome… except for of course that menu system :slight_smile: There are only two settings in that entire array of tabs I care about and I always have to spend a minute or two finding those settings.

I have to say that usually my work and others I have known is to keep things simple (interacting with the end users hearing their gripes over a few years I think did it for me), but find the business (primarily the managers over the users) pushing more and more for more features in a short amount of time.

Path of least resistance is to slack on proper UI improvements and just get the features in place and available. Proper time spent would allow us to actually study the issue and the users’ needs to figure out better interface choices.

I thought I had heard about an In-n-Out somewhere around us in Virginia, but apparently not. Another highly simplified menu that is hugely popular - Chipotle!! Hmm - you think someone would figure out simplified * might be a good idea, wouldn’t you?

Many option dialogs are probably complicated so that the “show tray icon”, “launch at startup”, “frequent nag messages” and other such options can be well hidden. My experience is that certain marketing types never want anything done that would reduce the constant, nagging exposure of the user to the software; its branding, its optional features, the deluxe version for lots of cash, etc. Hard-to-disable tray icons, notification pop-ups and splash screens are just spam that many users are stupid enough to honor with attention and money.

Part of the problem is that we, as developers, seem to feel that somehow not offering a million degrees of flexibility and customisation is a reflection on our personal abilities. I’ve always worked with developers who feel that if you can make something an option, or configurable, then you should.

I’m not sure this is always right.

I’ve started to have more confidence in my ability to judge what is sensible. I understand the business market that I’m writing the software for, I understand the needs of my users, I can make a judgement call without endlessly agonising over it - or giving in entirely and making it an option. Many things that could be optional are simply cases where we don’t take the trouble, or have the courage, to pick the most appropriate (or suitable) solution. That’s we as developers, we as designers, we as team leaders, we as peers of each other. Often it’s just easier to make something ‘an option’ than to make a hard decision.

Jeff’s example dialog above is a classic - do you /need/ to put an option in there for removing the toolbar? Or changing the application icon? If the toolbar might be something that gets in the way of your users, then either it’s not really neccessary anyway (or it’s been badly thought-out) and you should remove it entirely, or it’s something that you could have a right-click ‘remove’ option for - advanced users will right-click on it almost immediately if they really want to try and remove it. Either way - make that decision, have one less checkbox on that dialog and move on. You’ve just done your users a favour.

And changing the icon - why? I bet less than one user in a thousand actually bothers to use that option - so it ought to be removed. It only subtracts from the application (people will see the option and immediately view your existing icon with a far more critical eye).

It’s easy to confuse ‘adding configuration options’ with ‘adding useful features’. But do all those additional features really add value to your program? Do they really empower your users? Make things easier, faster, more straightfoward for your users? Or do they add layers of complexity (and even potential points of failure) to your application?

To me, this is often the distinction between very good ‘professional’ software and ‘hobbyist’ software - in a commercial/professionally-developed product, every checkbox and option has a real cost to implement (in terms of QA and documentation, even if not in terms of actual software engineering); it’s easier to make hard decisions when money is involved.

You wouldn’t expect to see a dialog like Jeff’s example in something commercial (without wishing to open up discussions about F/OSS vs Closed-Source etc), but you’d not be terribly surprised to see it in a shareware tool developed by an enthusiast.

That kind of stuff has it’s place, I’m sure, but as a user of software, I often wish developers would just pick one single, well-thought-out method of operation instead of surrendering to the indecision of offering a multitude of (sometimes less-well-engineered, often obscure) features.

I’m from the midwest. Do they call it In’N’Out burger because they are fast with your order or because it goes in you mouth and straight out your rear?

I don’t see anything wrong with all those tabs and check boxes for the configuration options. It’s just a front end for some config file. It really doesn’t make sense to compare it to a traditional “File, Edit, View, Tools, etc” menu. Or, maybe I don’t get your analogy.

In-N-Out Burger is awesome - discovered them while on a project in CA for 3 months. We have 'em in Phoenix, now, too, and seen 'em in Vegas as well.

When I was in college at Florida State, we had Guthrie’s chicken. The menu had three items: The chicken finger sandwich, the chicken finger box, and drinks. I think you could order the fries separately if you wanted - although I don’t know if was listed on the menu. Looks like they’ve added the bucket option, too.

http://www.guthrieschicken.com/menu.html

It’s refreshing to see that I’m not the only one who thinks that menus have gotten out of hand. There’s actually a book called “The Paradox of Choice” by Barry Schwartz that argues too many choices actually makes us unhappy. Interesting idea.

In’N’Out Burger is successful, but I don’t think they’ve set the standard for how to run a restaurant

You’re right. They’re very different business models. McDonalds and In-N-Out both started in the 1940’s in California; McDonalds is now a worldwide brand which posted $40.6 billion in sales in 2001. In-N-Out is only known in a few US states, and is estimated to have sold about $160 million in 2001.

On the other hand, In-N-Out is the only fast food chain to receive a positive mention in the book “Fast Food Nation”.

Good post Jeff, InnOut is one of my favourite things about San Francisco :slight_smile:

Speaking of keeping product offerings simple, you might find my latest
work post interesting…
http://iqcontent.com/blog/2007/08/give-your-products-names-not-numbers

In-N-0ut isn’t worldwide because they’re a completely family-owned chain (as far as I know, and if I remember correctly they all say as much on their literature and in the buildings). So, if someone in the family lives in your area, you might get an In-N-Out restaurant… but really, how much do you think it takes to get someone that could make a good amount of money in California to leave for some other part of the country? Hence most of them are in western states and, for the most part, in big cities when they are outside of California.

The only real problem with the comparison, though, is that most of the options available at an In-N-Out are just modifications of the original theme: cheeseburger, fries, and a drink. If you can put as many patties as you want, as many slices of cheese as you want, they’ve simply recognized that zero is as good an option as 5. The Animal is the only option that’s really a bit different, and it’s not that much different.

When software works that way we may not need so many software developers…

I agree :). Many softwares and sites really love to have a weird menu with a lot of stuffs. It’s horrible, I think if they have that much, they should have “Advance” button to hide them out. Anyway, make anything simple, i like to click and check out, not thinking much about that ^^!
nXqd

I agree with the first comment… advanced settings and customizability can be a great boon.

However, Jeff is right that the KISS approach is most user friendly. Having two “layers” of settings is a good solution.

quote
Just because some options aren’t visible from the menu, doesn’t mean they don’t exist… try asking for a neapolitan shake sometime or some of the other modifications…

http://www.in-n-out.com/secretmenu.asp
/quote

Did you even read Jeff’s article? He mentions this…it floors me how some people just don’t even read the article before commenting.

By what criteria do you determine whether an option should be easily accessible, in a buried “advanced” menu, or even included in the software?

What the hell are you talking about? That burger menu was confusing as all hell. I had to stare at it for ages to figure out what was going on and even then I couldn’t get it. And you want software to be designed in the same way? What are you - a web developer?