Software Development with Linux

Worse is better

WED, 01 JUL 2009

I found it funny sometimes, when I realize that a specific idea looks applicable to a lot (if not all) subject. This confirm my though that you can learn a lot by studying different fields, and try to apply their good ideas to your specific work area.

One such idea is that worse is better. This means that it's often better to have a partial but working solution than waiting for the technically perfect one.

This was one of the conclusion of the old essay "Lisp: Good News, Bad News, How to Win Big" by Richard P. Gabriel. Again, I've never learned nor used Lisp, but I found some good "food for thought" in that paper. Richard argued that Lisp wasn't as successful as it could have been because it wasn't designed with the "worse is better" philosophy.

That same idea can be found in startups as well. It's often said that it's better to get your product out there as soon as possible. You don't have to (and should not) wait until it's 100% complete. This was discussed by Paul Graham, and also more recently at

You can also see the same concept in the Agile Manifesto's principles, where it is advised to deliver software often, using an incremental process.

If we push further, the same principle also apply in investment. If you you've got an interest rate of 5%, it's better to put 100$ per month for ten years than to wait five years and put 6000$ there upfront. In the first scenario you'll have 15,593$. In the second case, you'll invested the same amount, but only have 14,529$.

Have you any other scenario where worse is actually better?

Photo credit : furryscaly