Wednesday, February 4, 2009

Google's product development mantra and the Tipping Point

I've been thinking about when and how to release and push out Linkspank's new toolbar / Firefox extension, which is really cool and quite well received by its small number of users so far. The question is “when and how to launch.”

For at least a few years, Google has advocated an approach to product development whereby you release your product at an early stage and then “iterate” - make improvements as users demand them and improve the process. Google has been voicing this mantra for a few years. This approach to designing a piece of software works best when you're building something simple and you can change it easily (the web is good for that). The philosophy is not too far off of the ideas espoused by 37Signals.

But also taken as a truism is what Malcolm Gladwell has to say in The Tipping Point. Small changes (say, in an Internet site) can make a big difference. Tipping-point thinking implies that your average cool website with a couple thousand users, like Linkspank, may be just a few crucial changes away from explosive growth.

Google's product philosophy and the tipping point meesage have something in common: tweaking. When you iteratively develop a product you have released, you're making pretty small changes. And in searching for the tipping point, you are trying to find the devilishly minor changes in your product that can take it from zero to sixty. You can think of iterative development as a way to search for the tipping point.

Here's a flipside, though. Part of the underlying message of the release-and-iterate idea is that people overestimate the risk of release. “If you get fairly close to the right product,” Google means, “your users will help you close the gap more efficiently than you would have done otherwise.” IF, that is, the customers know what they want; but as traditional marketing does a good job of showing, customers generally don't. And as the tipping point argues, it can be tough for anyone (designer or user) to identify that the small changes that are going to be crucial. That's in contradiction with Google's idea.

Moreover, the mere fact that small changes are critical according to the Tipping Point undermines one of Google's messages: that there is a low cost to release. Who are we kidding? Releasing a product always has a risk. Any potential user who turns away from your product may not turn back, so any time you to go them there is a risk.

It's easy for Google to proclaim iterate-and-release now that the company has a huge user base and a pervasive brand: they can easily tap into pre-zealous users, and if they alienate some users on some products, there are still billions of Google users out there for the following iterations.

The early days of Google – the development of search – was similar to release-and-iterate in some ways, and different in others. The founding duo was informal and agile when it came to making a product and trying it out. Nevertheless, the “releasing” they did in the early years was pretty cautious.

Release-and-iterate is not an answer in and of itself; you have to think about the risk of launching in terms of your resouces, and what you hope to find or achieve in your iteration (perhaps the tipping point).

Beware of mantras - Wittgenstein taught us that.

Anyway, the toolbar is coming soon and it's sweet!