Read the original post at:
http://blog.wolfire.com/2009/08/libertarian-paternalism-and-tool-design/
Working as a game developer, I often find myself thinking about everything in the terminology of games and programming. Sometimes, to change things up, I like to find a piece of jargon from a completely separate field and try applying it to my job. Politics is a gold mine for jargon. Maybe we can apply political concepts to game development. For example, what would it mean to make a Communist path finding algorithm? Would subprime lending be dangerous for a vertex shader? Okay, sometimes it’s a bit silly. But sometimes it strikes a chord:
http://cdn.wolfire.com/blog/Libertarian%20paternalism%20and%20tool%20design/fly_urinal.jpg
To combat messy restrooms, Schiphol International Airport painted flies on their urinals, thus encouraging better aim. Spillage decreased 80%. (Image source).
Libertarian paternalism is the political philosophy that the state should nudge citizens toward socially beneficial behaviors (paternalism), but only in ways that do not constrict the citizens’ freedom to choose otherwise (libertarianism). In practice, this might mean setting up smart defaults. A company’s employees might, for example, be automatically enrolled in a retirement savings plan. Rather than having to opt in to the plan, they would have to opt out. Since people tend to stick with the defaults they are offered, choosing these defaults wisely is an important and unavoidable responsibility.
Paternalistic design
How do we apply this political philosophy to the problem at hand: tool design for Overgrowth. First, let’s look at what we can learn from paternalism alone. This is the philosophy that an authority figure should make wise decisions on behalf of others. Certainly, this is part of a tool designer’s mandate. New users usually want a helping hand.
How can we help them? There’s an oft-repeated maxim that 80% of an application’s users will use just 20% of the applications features, or, similarly, users spend 80% of their time using 20% of an applications features. This suggests a way to organize our toolset. Instead of laying everything out at once, we should guide the user first and foremost to that 20% they will most often be using. And why not just cut out the 80% bloat?
…with a libertarian twist
Unfortunately, the paternalistic approach alone has some pitfalls. As Joel Spolsky points out on his blog, the most important 20% is different for each user. So, lightweight applications, which preserve only ‘essential’ features, often don’t satisfy since everyone has one or two esoteric bits of bloat they cannot live without.
In addition, overly paternalistic guidance can be irritating and disruptive. When you master under-the-hood tuning, you don’t want the program to fight against you and reset everything back to what it thinks you really wanted.
This is where the libertarian part comes in. Each user should have the freedom to find their own quirky ‘bloat’ features and run with them. And, expert users should not be held back by any tutorials, warnings, and railings that are in place for novices.
Read the next part for the rest of the post.