Damien Katz’s story

Damien Katz is the creator of CouchDB, a document-based database engine.  CouchDB is  something that really fascinates me, because it is designed to be distributed.

But what is more fascinating still is Damien’s story (30-min video).  He set out on his own, lived off of savings, and did something amazing.  I’m really glad it worked out for him.

You can read his entire story here, and it is definitely worth it (it is lengthy):

The engine needed to be rewritten from the ground up, it needed to be made maintainable, it needed to be faster, and it needed to be completely backwards compatible.

We’ve all been there, Damien.  I salute you:

The philosophy was that if I did those things [(submitting design documents and getting them approved)], everyone would meddle with the design and nothing would get done. It’s truly easier to ask forgiveness than to ask permission, not to mention things get done a lot faster if you just do them. It sounds weird, but that was big part of the culture at Iris. Just get it done and do it right, do whatever it takes. So that’s the way I worked, I was just going to go headfirst into it, damn the torpedoes.

Ok, ok, just one more:

More often than not, the old engine had it wrong, it had some indefensible behavior that was clearly not what was intended and often the formulas that relied on these behaviors did so unintentionally. It’s like two wrongs making a right, but regardless if the old engine was wrong or right, the new had to have the same broken behavior. In software we call that being “bugward compatible”. It sucks, and I absolutely hated that I had to go in and purposely mess up my carefully crafted, elegant code but that’s what I had to do. That’s necessary for a truly stable and backwards compatible product.

Tags: , ,

This entry was posted on Friday, June 26th, 2009 at 11:59 am.

Leave a Reply