Convention over configuration is a productive way to design anything

Convention over configuration, is a productive paradigm about design from the world of computer science. According to this way of thinking, system designers (e.g. engineers) ought to standardize certain components in their systems and reuse them again and again. By using as many standardized components as possible, you save a great deal of time which you would have otherwise wasted building bespoke solutions in places where really it doesn’t matter very much. This saved time can then be applied to customizing and designing the really unique and important parts of the system, where an in depth weighting of different factors and trade offs is important.

Let’s take an example everyone knows: where to place kitchen cutlery

Can you guess where the teaspoons are kept?

Inside the top drawer: an application of convention over configuration

Convention over configuration reduces the number of decisions a designer must make.

Imagine a new house owner trying to figure out where to put everything in her new kitchen. When the house owner must decide where the cutlery goes, she doesn’t pause to think “Well…..it could go on this shelve… or maybe I could find a place in this cupboard here….or maybe….”. Instead, the house owner just puts the cutlery in the top drawer without even thinking. Only with decisions about other kitchen items must she pause to think and weight up her options.

By starting with the conventions, such as “cutlery goes in the top drawer”, the house owner reduces the complexity of the design task (i.e. where to put everything in the kitchen). This happens because each convention used leaves one less factor to balance in figuring out where everything must go.

Convention over configuration makes life easier for users of the system.

A house guest walks into the kitchen looking for a tea spoon. Instead of rooting through every drawer and cupboard he checks the top drawer first, because he knows (consciously or unconsciously), that cutlery in usually kept in top drawers of kitchens. The system, in this case the kitchen, becomes easier to use due to convention being adopted instead of excessive configuration (e.g. placing the cutlery in the bottom drawer, or a cupboard).

Convention over configuration can be applied across a variety of fields:

  • Email – Use the same greetings and signatures every time, focusing your energies on the actual content
  • Company documents – Use the same fonts, spacing, headings and templates every time
  • Websites – Put the home button in the top left, navigation across the top, have a standard log in system and password verification, use a standardized deployment system

Now, ask yourself, where can you adopt convention over configuration?

Credit to David Heinemeir Hansson for exposing me to the idea in his Ruby on Rails framework.

Related posts

Like this? Then submit to a social bookmarking site

Digg Stumbleupon Stumble Delicious Delicious

Everything you ever wanted to know about social bookmarking



Email this to a friend who would find it useful Email this to a friend who would find it useful
blog comments powered by Disqus
Get Adobe Flash playerPlugin by wpburn.com wordpress themes