The following is a guest post from Michael Ferranti, a marketer and product guy living and working in San Francisco, USA. You can follow him on Twitter @ferrantim where your tweets in English and français are welcome, or on his blog.
It’s a great time to start a business. Thanks to the Internet, distribution for countless ideas is almost free and Moore’s law keeping plugging away, driving down the cost of computing, and with it a huge barrier to entry. Low-cost distribution and low cost-of-goods-sold make it really easy to have an idea, test it out, pivot if it doesn’t work, and double-down if it does. That’s an awesome, democratizing force that gives entrepreneurs more power than ever to build something great. Of late, the mantra of this movement is lean: lean development, lean UX, lean everything. But in the rush to be lean, I’m seeing some sloppy practices that I believe are hurting startups chances of taking advantage of the opportunities before them: sometimes fast isn’t lean, it’s just sloppy.
Why the world needs lean
Without being overly dogmatic about this or that management trend, I like lean thinking. Why? Startups are full of people who know everything. Many of them are assholes. And the thing about people who know everything is that they’re often wrong, just never in doubt. While I love the idea of having what some have called strong but loosely held opinions to combat this, that takes a lot of discipline which few of us are graced with. In general, the practice of lean today makes it ok, even admirable, to be wrong, and that makes it easier to get past egos and build something people want, not just something you think they want. But for all its virtues, lean is also making it easy to be sloppy by providing an all too easy excuse for not thinking a problem fully through: fail fast.
Fail fast? How about try not to fail in the first place…
Failing fast is about getting an answer to an unknowable, or expensive-to-know, question quickly, before precious resources have been squandered building a skyscraper that you can’t lease. There are a 1000 factors that go into creating a successful company, but you never really know if its going to work until you try. Will people buy a toothbrush made from recycled milk bottles? I dunno? Stamp out a prototype, find a local distributor and try. You don’t need to line up Carrefour as your distributor to see if the idea has legs.
Failing fast, on the other hand, is not knowing the prototype has non-trivial bugs and shipping it anyway because maybe no one will notice. It’s also not failing to take the time to test whether the prototype has bugs, or refusing to discuss and take steps to prevent very knowable risks. I’ve seen examples where in the face of real, honest objections to an intended release, the response has been, let’s see what happens, if it doesn’t work, we’ll change. That’s fine when you don’t know what the outcome will be (will customers use this feature?), not when you do (will customers mind the fact that the UI breaks in the 5% of cases where they exceed our simplistic test case?). Shipping a product is not a virtue in and of itself. Getting something into the hands of your customers that makes their lives better is. And that should be the goal, not just moving quickly.
Being thoughtful doesn’t mean being perfect either
To avoid being sloppy, I’m not arguing that everything your startup does should be thoroughly researched, planned out, focused grouped, analyzed, modeled and triple-checked. Being thoughtful doesn’t mean being perfect, it just means being realistic about what you are leaving out or not doing. Almost everywhere, but especially in young companies, growth is about trade-offs: integrate with this platform or that? Built this feature or that? You have to take risks and move fast. Speed is why startups can beat big companies with literally billions more dollars on hand and giving up that advantage in the name of process is crazy. However, we all owe our users and customers a level of rigor in what we do. Being lean doesn’t have to mean being sloppy.