2009 08 19 The Lean Startup TechStars Edition


Published on

Published in: Business, Technology
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • The premise of the lean startup is simple: if we can reduce the time between these major iterations, we can increase the odds of success.
  • Even though some aspects of the product were eventually vindicated as good ones, the underlying architecture suffered from hard-to-change assumptions. After years of engineering effort, changing these assumptions was incredibly hard. Without conscious process design, product development teams turn lines of code written into momentum in a certain direction. Even a great architecture becomes inflexible. This is why agility is such a prized quality in product development.
  • Do our actions live up to our ideals?
  • After our crushing failure, the founders of my next company decided to question every single assumption for how a startup should be built. Failure gave us the courage to try some radical things.
  • After our crushing failure, the founders of my next company decided to question every single assumption for how a startup should be built. Failure gave us the courage to try some radical things.
  • Based on that experience, and the experience of the other startups I have worked for, I now strongly believe there is a better way to create startups. I’ve called this vision the Lean Startup. It combines three key trends.
  • Let’s look at those changes schematically.
  • Run tests locally:-- Sandbox includes as much of production as humanly possible (db, memcached, Solr, Apache).-- Write tests in every language. We use 8 different test frameworks for different environs. Otherwise you get fear and brittle.-- Example kind of problem is that AJAX updater for site header. Seemingly innocuous change would break shopping experience.CIT/BuildBot:-- Simply don’t push with red tests. Even if the site is in trouble. Example Christmas site outage with memcache sampling.-- Give an idea of the scale. 20 machine cluster, runs 10000 tests and 100,000’s of thousand of assertions on every change.Incremental deploy:-- Catch performance bugs and gaps in test coverageSlow query in free tags. This started to drive database load higher on one MySQL instance due to contention and data size. Detected and rolled back before it affected users and before the database was hosed due to high load.Changed transaction commit logic in foundation of the system. This passed all tests but caused registrations to fail in production due to subtle difference between sandbox and production. System detected drop in business metric in 1 minute and reverted the changeAlerting and Predictive MonitoringExample: Second tier ISP to block our outbound emailExample: Rooms list performance time bombExample: Registration quality, second tier payment methods, invite mail success rates by serviceStory: Anything that can go wrong will, so just catch it then fast.
  • Webcast: May 1Workshop: May 29Fliers up frontDiscussion in web2open
  • 2009 08 19 The Lean Startup TechStars Edition

    1. 1. The Lean Startup#leanstartupTechStars Edition<br />Eric Ries (@ericries)<br />http://StartupLessonsLearned.blogspot.com<br />
    2. 2. Most Startups Fail<br />
    3. 3. Most Startups Fail<br />
    4. 4. Most Startups Fail<br />
    5. 5. Most Startups Fail<br />But it doesn’t have to be that way. <br />We can do better. <br />This talk is about how.<br />
    6. 6. What is a startup?<br />A startup is a human institution designed to deliver a new product or service under conditions of extreme uncertainty. <br />Nothing to do with size of company, sector of the economy, or industry<br />
    7. 7. Product / Market Fit<br />“Do whatever is required to get to product/market fit. Including:<br />changing out people,<br />rewriting your product,<br />moving into a different market,<br />telling customers no when you don’t want to,<br />telling customers yes when you don’t want to,<br />raising that fourth round of highly dilutive venture capital<br />—whatever is required.”<br />— Marc Andreessen<br />http://blog.pmarca.com/2007/06/the-pmarca-gu-2.html<br />
    8. 8. The Pivot<br />What do successful startups have in common?<br />They started out as digital cash for PDAs, but evolved into online payments for eBay.<br />They started building BASIC interpreters, but evolved into the world&apos;s largest operating systems monopoly.<br />They were shocked to discover their online games company was actually a photo-sharing site.<br />Pivot: change directions but stay grounded in what we’ve learned.<br />http://startuplessonslearned.blogspot.com/2009/06/pivot-dont-jump-to-new-vision.html<br />
    9. 9. Speed Wins<br />if we can reduce the time between major iterations<br />we can increase our odds of success<br />
    10. 10. A Tale of Two Startups<br />
    11. 11. Startup #1<br />
    12. 12. Stealth Startup Circa 2001<br />
    13. 13. All about the team<br />
    14. 14. A good plan?<br />Start a company with a compelling long-term vision. <br />Raise plenty of capital.<br />Hire the absolute best and the brightest.<br />Hire an experienced management team with tons of startup experience.<br />Focus on quality. <br />Build a world-class technology platform.<br />Build buzz in the press and blogosphere.<br />
    15. 15. Achieving Failure<br />Company failed utterly, $40MM and five years of pain.<br />Crippled by “shadow beliefs” that destroyed the effort of all those smart people.<br />
    16. 16. Shadow Belief #1<br />We know what customers want. <br />
    17. 17. Shadow Belief #2<br />We can accurately predict the future. <br />
    18. 18. Shadow Belief #3<br />Advancing the plan is progress. <br />
    19. 19. A good plan?<br />Start a company with a compelling long-term vision. <br />Raise plenty of capital.<br />Hire the absolute best and the brightest.<br />Hire an experienced management team with tons of startup experience.<br />Focus on quality. <br />Build a world-class technology platform.<br />Build buzz in the press and blogosphere.<br />
    20. 20. Startup #2<br />
    21. 21. IMVU<br /> <br />
    22. 22. IMVU<br /> <br />
    23. 23. New plan<br />Shipped in six months – a horribly buggy beta product<br />Charged from day one<br />Shipped multiple times a day (by 2008, on average 50 times a day)<br />No PR, no launch<br />Results: 2007 revenues of $10MM<br />
    24. 24. Lean Startups Go Faster<br />Commodity technology stack, highly leveraged (free/open source, user-generated content, SEM).<br />Customer development – find out what customers want before you build it. <br />Agile (lean) product development – but tuned to the startup condition. <br />
    25. 25. Commodity technology stack<br />Leverage = for each ounce of effort you invest in your product, you take advantage of the efforts of thousands or millions of others.<br />It’s easy to see how high-leverage technology is driving costs down.<br />More important is its impact on speed.<br />Time to bring a new product to market is falling rapidly. <br />
    26. 26. Customer Development<br /><ul><li>Continuous cycle of customer interaction
    27. 27. Rapid hypothesis testing about market, pricing, customers, …
    28. 28. Extreme low cost, low burn, tight focus
    29. 29. Measurable gates for investors</li></ul>http://bit.ly/FourSteps<br />
    30. 30. Agile Product Development(A tale of two startups, revisited)<br /><ul><li>Principles drawn from Lean Manufacturing and Toyota Production System
    31. 31. These examples are drawn from software startups, but increasingly:
    32. 32. All products require software
    33. 33. All companies are operating in a startup-like environment of extreme uncertainty</li></li></ul><li>Traditional Product Development<br />Unit of Progress: Advance to Next Stage<br />Waterfall<br />Requirements<br />Specification<br />Design<br />Problem: known<br />Solution: known<br />Implementation<br />Verification<br />Maintenance<br />
    34. 34. Agile Product Development<br />Unit of Progress: A line of Working Code<br />“Product Owner” or in-house customer<br />Problem: known<br />Solution: unknown<br />
    35. 35. Product Development at Lean Startup<br />Unit of Progress: Validated Learning About Customers ($$$)<br />Customer Development<br />Hypotheses,<br />Experiments,<br />Insights<br />Problem: unknown<br />Data,<br />Feedback,<br />Insights<br />Solution: unknown<br />
    36. 36. Minimize TOTAL time through the loop<br />IDEAS<br />LEARN<br />BUILD<br />DATA<br />CODE<br />MEASURE<br />
    37. 37. How to build a Lean Startup<br />Let’s talk about some specifics. <br />Small Batches<br />Continuous deployment<br />Split-test (A/B) experimentation<br />Minimum Viable Product<br />Five why’s <br />
    38. 38. Small Batches<br />IDEAS<br />LEARN<br />BUILD<br />Learn Faster<br />Customer Development<br />Five Whys<br />Build Faster<br />Continuous Deployment<br />Small Batches<br />Continuous Integration<br />Refactoring<br />DATA<br />CODE<br />MEASURE<br />Measure Faster<br />Split Testing<br />Actionable Metrics<br />Net Promoter Score<br />SEM <br />
    39. 39. Benefits of Small Batches<br />Faster feedback<br />Problems are instantly localized<br />Reduce risk<br />Reduce overhead<br />
    40. 40. Continuous Deployment<br />IDEAS<br />LEARN<br />BUILD<br />Learn Faster<br />Customer Development<br />Five Whys<br />Build Faster<br />Continuous Deployment<br />Small Batches<br />Continuous Integration<br />Refactoring<br />DATA<br />CODE<br />MEASURE<br />Measure Faster<br />Split Testing<br />Actionable Metrics<br />Net Promoter Score<br />SEM <br />
    41. 41. Continuous Deployment<br /><ul><li>Deploy new software quickly
    42. 42. At IMVU time from check-in to production = 20 minutes
    43. 43. Tell a good change from a bad change (quickly)
    44. 44. Revert a bad change quickly
    45. 45. And “shut down the line”
    46. 46. Work in small batches
    47. 47. At IMVU, a large batch = 3 days worth of work
    48. 48. Break large projects down into small batches</li></li></ul><li>Cluster Immune System<br />What it looks like to ship one piece of code to production:<br /><ul><li>Run tests locally (SimpleTest, Selenium)
    49. 49. Everyone has a complete sandbox
    50. 50. Continuous Integration Server (BuildBot)
    51. 51. All tests must pass or “shut down the line”
    52. 52. Automatic feedback if the team is going too fast
    53. 53. Incremental deploy
    54. 54. Monitor cluster and business metrics in real-time
    55. 55. Reject changes that move metrics out-of-bounds
    56. 56. Alerting & Predictive monitoring (Nagios)
    57. 57. Monitor all metrics that stakeholders care about
    58. 58. If any metric goes out-of-bounds, wake somebody up
    59. 59. Use historical trends to predict acceptable bounds</li></ul>When customers see a failure:<br /><ul><li>Fix the problem for customers
    60. 60. Improve your defenses at each level</li></li></ul><li>Rapid Split Tests<br />IDEAS<br />Code Faster<br />Learn Faster<br />BUILD<br />LEARN<br />Continuous<br />Deployment<br />Five Whys Root<br />Cause Analysis<br />CODE<br />DATA<br />Measure Faster<br />MEASURE<br />Rapid Split Tests<br />
    61. 61. Split-testing all the time<br />A/B testing is key to validating your hypotheses<br />Has to be simple enough for everyone to use and understand it<br />Make creating a split-test no more than one line of code:<br />if( setup_experiment(...) == &quot;control&quot; ) {<br /> // do it the old way<br />} else {<br /> // do it the new way<br />}<br />
    62. 62. The AAA’s of Metrics<br />Actionable<br />Accessible<br />Auditable<br />
    63. 63. Measure the Macro<br />Always look at cohort-based metrics over time<br />Split-test the small, measure the large<br />
    64. 64. Minimum Viable Product<br />IDEAS<br />Code Faster<br />Learn Faster<br />BUILD<br />LEARN<br />Continuous<br />Deployment<br />Minimum Viable <br />Product<br />CODE<br />DATA<br />Measure Faster<br />MEASURE<br />Rapid Split Tests<br />
    65. 65. Why do we build products?<br />Delight customers<br />Attract lots of them<br />Make a lot of money<br />Big vision: change the world<br />
    66. 66. Possible Approaches<br />“Maximize chances of success”<br />Build a great product with many features that increase the odds that customers will want it<br />Problem: no feedback until the end, might be too late to adjust<br /> “Release early, release often”<br />Get as much feedback as possible, as soon as possible<br />Problem: run around in circles, chasing what customers think they want<br />
    67. 67. Minimum Viable Product<br />The minimum set of features needed to learn from earlyvangelists – visionary early adopters<br />Avoid building products that nobody wants<br />Maximize the learning per dollar spent<br />Get the facts before it’s too late<br />Probably much more minimum than you think!<br />
    68. 68. Minimum Viable Product<br />Visionary customers can “fill in the gaps” on missing features, if the product solves a real problem<br />Allows us to achieve a big vision in small increments without going in circles<br />Requires a commitment to iteration<br />
    69. 69. Examples<br />Building IMVU in six months<br />2004 “Kerry vs. Bush avatar debate”<br />
    70. 70. Techniques<br />Smoke testing with landing pages, AdWords<br />SEM on five dollars a day<br />In-product split testing<br />Paper prototypes<br />Customer discovery/validation<br />Removing features (“cut and paste”)<br />
    71. 71. Fears<br />False negative: “customers would have liked the full product, but the MVP sucks, so we abandoned the vision”<br />Visionary complex: “but customers don’t know what they want!”<br />Too busy to learn: “it would be faster to just build it right, all this measuring distracts from delighting customers”<br />
    72. 72. Five Whys<br />IDEAS<br />Code Faster<br />Learn Faster<br />BUILD<br />LEARN<br />Continuous<br />Deployment<br />Five Whys Root<br />Cause Analysis<br />CODE<br />DATA<br />Measure Faster<br />MEASURE<br />Rapid Split Tests<br />
    73. 73. Five Whys Root Cause Analysis<br /><ul><li>A technique for continuous improvement of company process.
    74. 74. Ask “why” five times when something unexpected happens.
    75. 75. Make proportional investments in prevention at all five levels of the hierarchy.
    76. 76. Behind every supposed technical problem is usually a human problem. Fix the cause, not just the symptom.</li></li></ul><li>There’s much more…<br />IDEAS<br />Code Faster<br />Learn Faster<br />BUILD<br />LEARN<br />Unit Tests<br />Usability Tests<br />Continuous Integration<br />Incremental Deployment<br />Free & Open-Source Components<br />Cloud Computing<br />Cluster Immune System<br />Just-in-time Scalability<br />Refactoring<br />Developer Sandbox<br />Minimum Viable Product<br />Split Tests<br />Customer Interviews<br />Customer Development<br />Five Whys Root Cause Analysis<br />Customer Advisory Board<br />Falsifiable Hypotheses<br />Product Owner Accountability<br />Customer Archetypes<br />Cross-functional Teams<br />Semi-autonomous Teams<br />Smoke Tests<br />CODE<br />DATA<br />Measure Faster<br />MEASURE<br />Split Tests<br />Clear Product Owner<br />Continuous Deployment<br />Usability Tests<br />Real-time Monitoring<br />Customer Liaison<br />Funnel Analysis<br />Cohort Analysis<br />Net Promoter Score<br />Search Engine Marketing<br />Real-Time Alerting<br />Predictive Monitoring<br />
    77. 77. Get Started Today<br />You are ready to do this, no matter <br />who you are<br />what job you have<br />what stage of company you’re in<br />Get started now, today. <br />
    78. 78. Thanks!<br /><ul><li>Startup Lessons Learned Blog
    79. 79. http://StartupLessonsLearned.blogspot.com/
    80. 80. Getting in touch (#leanstartup)
    81. 81. http://twitter.com/ericries
    82. 82. eric@theleanstartup.com
    83. 83. Workshop Tomorrow, Aug 20
    84. 84. http://bit.ly/boulder-workshop
    85. 85. 9am-1pm at TechStars</li>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.