The In-N-Out API
I'm just back from a trip to the west coast. Willie and I spent three
days in Mountain View giving demos of FreeTTS and Sphinx-4 at
the Sun Labs open house. For a quick lunch
one day, we stopped into In-N-Out
Burger, a fast food burger joint. They don't have these on the
east coast. The In-N-Out menu is very simple, three kinds of
hamburgers, french fries, and drinks. That's it.
The place was clean, the burger was good, what more could you ask for.
This serves as a good model for API design, unlike McDs, In-N-Out has tried to keep their interface (the menu) nice and simple. And since their API is so simple (just burgers and fries, no fajitas, no apple pies, no chicken, no fish, no salads), they can do a good job. It's The Unix Philosophy applied to hamburgers: Make each program do one thing well. The advantages of a small menu are obvious. Shorter lines since customers don't spend too much time deciding on what to have, and better food (since they are just cooking burgers, they can make them to order). |
Logger.log(WARN, "Coffee is too hot");
API designers need to walk the fine line between functionality and usability. Too much functionality can limit the appeal of an API. Just give me a burger with fries please.
Posted by Wes Felter on August 02, 2004 at 03:01 PM EDT #
Posted by Paul on August 02, 2004 at 03:21 PM EDT #
Posted by Sumit on August 02, 2004 at 10:03 PM EDT #