The blog of Rahoul Baruah from 3hv Ltd

What's going on?

My name is Rahoul Baruah (aka Baz) and I'm a software developer in Leeds (England).

This is a log of things I've discovered while writing software in Ruby on Rails. In other words, geek stuff.

However, I've decided to put this blog on ice - I would ask you to check out my business blog here (or subscribe here).

13 December, 2006

Simplicity and the 80/20 rule

A few people have been talking about Simplicity recently. How it is overrated. How it makes your product rubbish.


Simplicity is not about how few features you have. It's about feature selection.

Basecamp's first feature was the "Messages" page. Do you think it would work as project management software - paid for project management software if that was it's only feature. No. What it does is the bare minimum to manage a project. Deadlines. Tasks. Communication. Nothing more. Nothing less.

As His Steveness says, the heart of the problem is that every feature has a cost. Not just the cost of developing the feature.

But a cost in the design - it affects other features.

A cost in complexity - every single option increases the testing you need to perform.

A cost in user-interface - every feature needs some form of input and some form of output.

But the biggest cost, the one that most people never factor in, is the cost of eternity.

Once you add a feature it is very very hard to remove it.

Even if a tenth of a percent of your user-base uses that feature, as soon as it goes they will scream blue murder. And anguished customers make a billion times more noise than satisfied ones.

This is a lesson I have learnt the hard way. I have spent years working with people who deliver training courses. Whether in-house training, outdoor education, activity centres. Our system handles the lot. It has a 95% fit with a massive proportion of its target market. But it's complicated. There is a learning curve. A big one. And that costs.

So now we are trying again. Following the simple approach. You see, in seven years we have learnt what all of these businesses have in common.

Joel calls the 80/20 rule a myth. Maybe it is if you are working on Excel.

But I'm not.

Most training providers follow pretty similar processes. Either, people book onto pre-scheduled courses or they buy a single course for their entire party. Pre-sales you have to contact your prospects. Post-sales there is payment chasing. In between you have to ensure you can deliver the course. That's it.

Of course there are differences. Some are residential centres, and managing accommodation is one of those things that each centre does differently. Marketing is something we won't really go into - again, because there are a number of different approaches.

But what about those that need those extras? Aren't we just losing potential sales?

And this is what Joel ignores, but 37Signals gets.

Have you ever fed the output of ps into grep? Grep does one thing and one thing well. Ps does one thing and one thing well.

The key to making them useful is the pipe. Grep reads from and writes to the console. Basecamp reads from and writes to its REST API.

The main part of the application stays simple - no arrays of switches, no hours (days) of configuration. Because it applies to everyone. However, if you want (say) accommodation added to our software we can build it for you. Or someone else can build it for you. It will be tailored to exactly how you work. Because that bit is unique to you.

Simple. Eighty. And indeed twenty.

No comments:

eXTReMe Tracker