22 October 2009

Launch Early and Learn


Launch early and iterate is a rule-of-thumb perfected by Google and practiced by wildly successful companies like Facebook. Among agilists, the notion of iterating is a given.
I am adopting a new-found mantra of
Launch early and learn
I credit Marissa Mayer. She is Google's first female engineer, Money's #21 in 40 under 40, and Glamour's Woman of the Year 2009.

Marissa gave a compelling talk to Stanford students on Google heuristics and innovation. I recommend viewing Marissa Mayer at Stanford University for 49 minutes of insight into the thought repository of an unusually smart company. Marissa gives her Top 9 slogans, joking that presenting a Top 9 is marginally more innovative than a Top 10.

I'd been brain-casting how to create a UX-Driven-Development (UDD) platform for software, when Marissa's Stanford talk introduced me to the Google slogan
Launch Early and Iterate
In front of a slide declaring innovation not instant perfection, she shared personal narratives about the early - some would say premature - launches of Google News and Google Video. I have already mused that Google Wave is an immature product (see The Missing Link in Google Wave - UI For Primates).

Five days removed from my Missing Link in Google Wave post, I finally understand the Google modus operandi.

True Confessions - Google News


The Google News team was nearing their targeted first release. Six engineers respectfully disagreed over which feature they had time to include in their debut release. Three engineers vehemently supported Search-by-Date. Three engineers passionately supported Search-by-Location. Deadlocked.

Google made the decision to polish up existing functionality and not add new functionality. They released Google News without Search-by-Date or Search-by-Location! Shortly after the roll-out, they were bombarded with emails
How come I can't Search-by-Date?
Email requests were running about 100 to 1 for Search-by-Date over Search-by-Location. Guess which feature had top priority for the next iteration?


The preview of Google Wave occurred while the ink on the Wave federation spec and the Wave API was not only still wet, but still being pushed around the page.

When I attended the Google Wave hackathon last June, Google engineers had finally stabilized their Wave Server the night before the public arrived to start banging on it. That's early.

Google Mail was in beta for so long for a reason. It is a way of working that keeps development cooperatively linked to the community. This lends itself to critical adaptations and unforeseen customization.

Whether your mantra is launch early and iterate, or launch early and learn,
Mistakes seed improvement
in software product development.

That mistakes seed improvement is particularly true, and conspicuous, if your team is geared to
Turn feedback into function
within an iterative cycle, or two.

Further Reading
  • Agile Release Strategies - A wiki initiated by by Niklas Bjørnerstedt and Johannes Brodwall. The premise of the wiki is that a software product unable to release to production at least once every three months is problematic. That is, the longer the release cycle, the bigger the risk of partial or complete failure. Wiki includes principles and patterns. The wiki helps a Product Owner determine a Minimal Releasable Product.
  • Facebook encourages developers to push code quickly. Code pushes are never delayed and are applied directly to parts of the infrastructure. The strategy is to smoke out issues, and their impact, as soon as possible. (See Extreme Agility at Facebook).
For Italophiles...
English
Italian
Release often and learn
Rilascia spesso e apprendi
Release often and iterate
Rilascia spesso e ripetutamente