Iterating In the Open

25
Iterating in the Open Dave Hodson July 2010 [email protected]/@davehod

description

 

Transcript of Iterating In the Open

Page 1: Iterating In the Open

Iterating in the Open

Dave HodsonJuly 2010

[email protected]/@davehod

Page 2: Iterating In the Open

Open Iteration

Continually creating and deploying the next version (iteration) of a product with a high-level of transparency and user engagement

Page 3: Iterating In the Open

Overview

• Software methodologies• Launch strategies• Optimize for Best Fit• Open Iteration– Pros/Cons/Takeaways

• Stealth mode?

Page 4: Iterating In the Open

Background

• Serial Entrepreneur iPrint: NASD MessageCast: acquired by MSFT

• Principal at Bing• Startup advisor• Open source, Java, cloud computing

Page 5: Iterating In the Open

SOFTWARE METHODOLOGIES (THE SHORT VERSION)

Page 6: Iterating In the Open

Waterfall

Analysis

Design

Implementation

Test

Deploy

• AKA “I start when you finish”

• Long cycles/few releases

• Valuable in very limited scenarios

Page 7: Iterating In the Open

Cowboy Coding

• AKA “Code and Fix”• Ready, Fire, Aim!• Potential for very quick

iterations/lots of releases

• Prototypes

Code

Deploy

Test

Page 8: Iterating In the Open

Agile

Implement

Test

DeployAnalysis

Design

• “The simplest thing that could possibly work”

• Quick iterations• Continual feedback• Overloaded term so be

careful

Page 9: Iterating In the Open

LAUNCH STRATEGIES

Page 10: Iterating In the Open

Feature ParityFeature Us Them

HTML 5 • Contextual • • Blue Buttons • Localization • • XMPP support • • Auto-suggest •

• Parity occurs when products have equal feature sets

• Launch only when parity is achieved

• Long initial release cycle• Chasing a moving target

Page 11: Iterating In the Open

Required FeaturesFeature v1 v2

HTML 5 • Contextual • Blue Buttons • Localization • XMPP support • Auto-suggest •

• Potential for relatively longer initial release cycle

• Ability to adjust to changing conditions/feedback

• Minimum Viable Product (Eric Ries)

Page 12: Iterating In the Open

Minimum FeaturesFeature v1 v2 v3

HTML 5 • Contextual • Blue Buttons • Localization

XMPP support • Auto-suggest •

• Short release cycles• Ability to quickly adjust

to changing conditions/feedback

• Minimum Desirable Product (Andrew Chen)

Page 13: Iterating In the Open

OPTIMIZE FOR BEST FIT

Page 14: Iterating In the Open

Optimize for Iterations

Initial Launch Follow-on Iterations

Required Features

Feature Parity

Minimum Features

AgileCowboyWaterfall

Required Features

Feature Parity

Minimum Features

AgileCowboyWaterfall

Page 15: Iterating In the Open

WHAT IS OPEN ITERATION?

Page 16: Iterating In the Open

Open Iteration

• Initial vision and product roadmap• Communication – set expectations• Visibility and transparency• Rapid release cycle• Product functionality additive over time• Feedback helps drive features/priorities• Warts and all

Page 17: Iterating In the Open

“Of course we don't fault people for making requests. We encourage it ... So what do you do with all these requests that pour in? Just

read them and then throw them away.”

37 Signal’s “Getting Real”

Page 18: Iterating In the Open

Pros

• The ability to evolve the product based on reality (i.e. user feedback, actual utilization)

• Feedback based on hands-on usage instead of looking at mockups

• Users guiding both the features and the priority of the features

Page 19: Iterating In the Open

Cons

• Don’t necessarily have business validation• A new visitor to the site may not see value on

initial visit and never return (the “is that all there is?” problem)

• Bugs, bugs, bugs. Must have a staging environment and plenty of automated tests, but when you’re running fast …

Page 20: Iterating In the Open

Takeaways

• Iterating in the open is a net positive, but users need visibility on updates and bug fixes (blog posts and email are great for this)

• Enable the site with an open feedback mechanism (e.g. uservoice)

• Drive towards a Minimum Viable Product - have a strong grasp on metrics and value

Page 21: Iterating In the Open

Takeaways (cont)

• Have internal analytics as well as external (use Google Analytics) to get a good picture what users are doing and the conversations about your site.

• Ensure there is a mechanism to scale out quickly and cheaply (EC2/GAE/etc)

• Automate as much as you can including unit tests, build and deployment scripts, etc. The time savings and reduction in errors pay off quickly.

Page 22: Iterating In the Open

WHAT ABOUT STEALTH MODE?

Page 23: Iterating In the Open
Page 24: Iterating In the Open

Stealth Mode

• Overrated, but don’t embarrass yourself either• Ideas don’t matter nearly as much as

execution does• “This is easy, it’s just an execution play”

Page 25: Iterating In the Open

Questions?