A few years ago I wrote about one of my favorite product sayings: “Half, Not Half-Assed“, which comes from my favorite book on product development & teamwork, Getting Real (from the team behind Basecamp). I actually first got hooked into this thinking when I saw one of the Basecamp founders, Jason Fried, talk at a web design conference back in 2004 and it was a pivotal moment in my career (thanks Jason!).
I was reminded of that idea today, as I was working on a side project (an internal tool for USV). In this particular case, we had built a version of this tool a few years ago, but basically abandoned it because we could not build a good workflow around it. Looking back, the diagnosis on why was that it was overbuilt: too complicated, too much. And implemented in a way such that we just didn’t bother to keep up with it. In other words, half-assed, rather than “half”.
In version 2.0, I cut the scope and complexity down by 90%. Every new piece of detail went through the filter of “what’s the trade-off between nice to have and this will be sustainable to maintain.” But further, it was really easy to make design decisions because most of them had been made already before, and the key technical challenges had been worked through.
So it was very easy to build version 2 in a lighter, leaner, meaner way.
I am a big fan of iterating and taking things step by step. And in this particular case, it was that process that led the version 1 to be really interesting, but also a bit meandering, bloated and off target. Because the iterations were also an exploration.
This time, It felt good to do an iteration that started over, but from the place of wisdom of having built it all once before. Iterating from scratch. Very satisfying in its simplicity, and hopefully it will be on-target this time!