Design for the Novice, Configure for the Pro

Posted on Nov 22, 2010 | 61 comments


I recently wrote about my philosophy of minimalism that “less is more” with the mantra “when in doubt, leave it out.”

I’ve had a long-standing rule of thumb in product design, which I call “design for the novice, configure for the pro.”  I started saying this back in 2001/02, long before the era of Web 2.0, lean startups or even the advent of AJAX.

My philosophy emanated from my days of programming and later designing corporate software in the early 1990’s.  We were smart kids straight out of college and were designing the systems that we’d want to use.  We were young, computer literate and interested in learning about or playing with new technologies.

I watched us build systems for large corporations whose employees were in their 40’s / 50’s and who were primarily concerned with completing their business functions rapidly and with limited errors.  In designing GUI interfaces for people coming from the green-screen world we built applications that would be great for desktop publishing, not customer service reps.  We built in too many clicks, too many features, too many distractions.  We were confident we had improved things until we got to usability testing and watched with horror.

Fast forward a decade and now I had a startup filled with smart web developers.  I was 31 and they were in their 20’s.  Invariably they would build in too much functionality and assume that users were both familiar with and interested in having tons of choice.  My mantra back then was “what would your mom be able to use?”  Simplify, simplify, simplify.

Of course the debates raged about not wanting to make the system less powerful.  My view – power users always look at all of the menu options to figure out how to juice up the system.  You can always hide complexity into configuration screens rather than the out-of-the-box features.

Even in 2010 I think most companies err too much on the side of complexity.  They try to strike the right balance between making the base product “useful enough” for the “average” user.  I think the novice needs to be able to walk right in the door and be able to start playing around with your product – without a manual.  More difficult still, you need to be able to accomodate the “light” user who comes by once / month and barely remembers the application when the log in.

Obviously this doesn’t hold true for every application but it does for many.  And as much as we’d like to think otherwise, most people don’t really care about our company or our product – most people come by infrequently.  And if you can make life easier for these people then more of them will convert to become more frequent users.

I think one of the products that does this best in my mind is Gmail.  They do an incredible job of hiding most of their functionality yet allowing power users to soup things up if they want to.

I’ll tell you, it has been a while since I’ve actually done wireframes and designs but you never really lose the feel for what the right balance is to create a good UX.  It’s why when I used Quora I instantly felt like it was the most innovative UX I had seen in years.  It is beautiful in its simplicity (although I think I could give them a few tips to improve usability if they ever asked ;-).

So when some of the younger guys at startups I’ve funded start teasing me about my gray hair and that they’re now designing products for me (as opposed to their moms!) I say, “bring it on.”  I recently argued with a team for 6 months that they were intellectualizing their product too much and that the masses would want a simpler version.  They fought me for months and later admitted they needed to reduce the complexity of their product.  It’s not that I’m smarter – it’s just that I’ve been through 10 more years of watching users play with products (and across many different tech stacks and form factors).

In summary, 2 quick rules:

  • Do usability testing.  Watch people use your product with little or no instructions.  Give them tasks to complete without instructions of how to complete the tasks.  Film them.  Learn from them.  Many companies do this these days – not all do.  You MUST.  It is so instructive.  It will blow your mind away how people use products differently than you’d intend them to.  You’ll pull your hair out.  And in the end I’m quite sure that you’ll simplify things – not add things.
  • Design for the novice.  Configure fo the pro.  The pro will always find the advanced options.  This is easier said than done.  It’s always harder to build simple, yet usable products.  You become more defined as much by what you left out or simplified as by what you put in.

Tomorrow I’ll offer up design tip number 2: paying attention to iterative processes.

Image courtesy of creative commons license

  • Josh Webb

    You touched on (or at least near) another interesting point here. Companies use software tools to improve their operational productivity… Excel, Outlook (email), Outlook (calendar), maybe a CRM of some form, maybe a wiki or other collaborative tool like google docs, document control software, maybe a bug tracking software, maybe something like SAP, the list goes on.

    Super users (specialists mostly), normally spend most of their time with a tiny subset of that software bundle. They use their tools at least everyday; most of what they do and how they use the tool seems obvious to them. The infrequent user can barely remember their login! I think we have all been on both side of that table… “what do you mean you don't know how to split and freeze a spreadsheet” or “goddamnit, I have no idea how to login to my godforsaken health insurance website, do I use my SSN or my account number or my email address?”

    I think it can be a challenge to create software/websites/products that are appealing/useful/usable to such a disparate user base. You touched on it here: http://www.bothsidesofthetable.com/2009/09/16/most-startups-should-be-deer-hunters/ (sub in “user type” for customer size/type). Sometimes a company needs to have discipline and create their business/product for a niche and do it well (the unix philosophy) instead of executing on a compromise and leaving everyone underwhelmed.

    Signal vs. Noise blog (http://37signals.com/svn/) has an interesting and novel approaches to exactly this type of discussion and the decisions that result.

  • http://twitter.com/RianVDM Rian Van Der Merwe

    Great post – thanks Mark. As you point out as well, this should just be how we design products in 2010, it shouldn't be an issue any more, but for some reason it remains a big problem.

    I always go back to Nielsen's 10 usability heuristics, which was written in 1990 (revised 1994). This issue features as one of the 10:

    “Flexibility and efficiency of use –> Accelerators — unseen by the novice user — may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.”

  • None

    cool article

  • http://naamanetworks.com/ David Bloom

    Not sure if anyone monitors these comments so long after the original blog post, but I have an update to share. My CTO and I finally did in-person user testing at a Starbucks. Three interviews, lots of good feedback, several helpful insights…and one blockbuster problem. A showstopper for a certain kind of transaction. Saying that issue is now a major priority is an understatement. And all is cost me was $45 in gift cards.

    That same day a real customer found a technical glitch involving time stamps and time zones. Hugely esoteric problem but led to a major headache. Going to market with a minimally viable product makes a lot of sense for many reasons. But this episode made me wish I'd done more testing on going. Might have found that problem before it cost me half of my wife's birthday dinner. Ouch.

  • http://twitter.com/mattlangan Matt Langan

    Love that you hit on progressive disclosure and the graduation from novice to power-user. However, it seems that this post is all about features, pixels, and clicks. I think that the most important aspect to UX, however, is psychology, and I use the features, pixels, and clicks to facilitate the most desirable mental state. For first-time users this state is Trust. They need to trust that A) Their interactions will yield the expected result, and, if they’re still in the exploration phase, then B) Their interactions won’t mess anything up. To achieve A it’s important to present a *familiar* experience. If you’re designing on iOS, make the thing look and feel like a standard iOS app. If you’re designing on Facebook, respect the conditioning the user has already gone through to use the site – buttons are blue with white text and on the right side, hyperlinks are blue without text decoration, etc… To achieve B it’s important to provide timely feedback (like tooltips on hover states), or confirmation dialogs for any form behaviors (which can be disabled once users graduate).

    Some web apps (especially these days) are necessarily feature-rich, so much so that even a UX designer like me has a tough time getting acclimated. For these kinds of experiences I try to advocate the use of a linear wizard – a guided introduction to the software which presents all of the features in their respective contexts, but without the choice paralysis created by throwing them onto a cluttered dashboard after their first login.

  • Anonymous

    Hmmm In retrospect, there was one thing that came to mind. Chime.in!!!!!!

    There’s just too much stuff going on for such a basic task. And people wonder why Apple products are so successful. The people over at UberMedia need to read this.

  • http://freshfugu.com Martin Wawrusch

    So true. Right now it feels like the 2011 version of MySpace :). 

  • http://gastropub.org Joshua

    Test. Test again. and Never stop. “Design for the Novice, Configure for the Pro!”  Epic quote.   

  • http://twitter.com/kluoma Kristian Luoma

    It feels great, at least after! :) But. Be-aware of the dragons: “Asking if you like this”  is the ultimate way to trick yourself in to believing you’ve got it right. Nobody wants to disappoint a person. Instead, just let them run with your product. If they crawl, you know you’ve got it wrong.

  • Bhaidinger

    Great post as always. I have not had the great opportunity to meet you in person (yet) but you are a huge inspiration. I would argue with your comment on Gmail though. Thanks again for sharing your experience with us!

  • http://twitter.com/skasibhat Subramanyam

    David, We (www.Get2Galaxy.com) would be offering this as a service in the near future. If you are interested email me at TheLauncher@Get2Galaxy.com and I will update you on the details. We will offer you a clean set of folks to play around your app’s and allow the entire process to be video recorded. Share it to you via torrents or ftp. We would be charging you not more than 20$ for half-day exercise per person.