Thursday, August 16, 2007

Simple is Hard

For the past few days, I've been working on developing a web application with a partner of mine. Our goal is to offer an application that is intuitive to use and contains just enough features to make the application extremely useful. A small software company called 37Signals has long professed this philosophy.

Being an old time I.T. guy, my DNA drives me to design feature rich applications, where every conceivable need is addressed. Too often, the result is an application that is so complicated, that no one uses it. The kind where you need to provide an hour's training for a 5 minute process.

For our latest project, we began by brainstorming all the possible features we'd "need".

And then we spent three days eliminating most of them.

Just when we thought the application couldn't get any simpler, I invited a friend over, who happens to be a subject matter expert (and a potential customer). I can always count on him to give me the unvarnished truth.

Three hours (and four beers) later, our application had lost another 30% of it's features, and 50% of the copywriting had to be changed.

I've learned a few things from this experience.

It's very difficult to get outside one's own head - to really see the project from the customer's perspective. To eliminate your biases. To expose your assumptions. To fight against the compulsion to complicate.

Simple is hard.