The Lean Startup - Eric Ries [77]
We called this our product’s immune system because those automatic protections went beyond checking that the product behaved as expected. We also continuously monitored the health of our business itself so that mistakes were found and removed automatically.
Going back to our business-to-hobby example of the missing checkout button, let’s make the problem a little more interesting. Imagine that instead of removing the button altogether, an engineer makes a mistake and changes the button’s color so that it is now white on a white background. From the point of view of automated functional tests, the button is still there and everything is working normally; from the customer’s point of view, the button is gone, and so nobody can buy anything. This class of problems is hard to detect solely with automation but is still catastrophic from a business point of view. At IMVU, our immune system is programmed to detect these business consequences and automatically invoke our equivalent of the andon cord.
When our immune system detects a problem, a number of things happen immediately:
1. The defective change is removed immediately and automatically.
2. Everyone on the relevant team is notified of the problem.
3. The team is blocked from introducing any further changes, preventing the problem from being compounded by future mistakes …
4. … until the root cause of the problem is found and fixed. (This root cause analysis is discussed in greater detail in Chapter 11.)
At IMVU, we called this continuous deployment, and even in the fast-moving world of software development it is still considered controversial.3 As the Lean Startup movement has gained traction, it has come to be embraced by more and more startups, even those that operate mission-critical applications. Among the most cutting edge examples is Wealthfront, whose pivot was described in Chapter 8. The company practices true continuous deployment—including more than a dozen releases to customers every day—in an SEC-regulated environment.4
Continuous Deployment Beyond Software
When I tell this story to people who work in a slower-moving industry, they think I am describing something futuristic. But increasingly, more and more industries are seeing their design process accelerated by the same underlying forces that make this kind of rapid iteration possible in the software industry. There are three ways in which this is happening:
1. Hardware becoming software. Think about what has happened in consumer electronics. The latest phones and tablet computers are little more than a screen connected to the Internet. Almost all of their value is determined by their software. Even old-school products such as automobiles are seeing ever-larger parts of their value being generated by the software they carry inside, which controls everything from the entertainment system to tuning the engine to controlling the brakes. What can be built out of software can be modified much faster than a physical or mechanical device can.
2. Fast production changes. Because of the success of the lean manufacturing movement, many assembly lines are set up to allow each new product that comes off the line to be customized completely without sacrificing quality or cost-effectiveness. Historically, this has been used to offer the customer many choices of product, but in the future, this capability will allow the designers of products to get much faster feedback about new versions. When the design changes, there is no excess inventory of the old version to slow things down. Since machines are designed for rapid changeovers, as soon as the new design is ready, new versions can be produced quickly.
3. 3D printing and rapid prototyping tools. As just one example, most products and parts that are made out of plastic today are mass produced using a technique called injection molding. This process is extremely expensive and time-consuming to set up, but once it is up and running, it can reproduce hundreds of thousands of identical individual items at an extremely