Cripple the Prototype

By Scott Andreas on 02 27 2013

Image licensed Creative Commons Share Alike w/Attribution by Todd EhlersMy friend Zac shared an interesting idea with me:

“If you’re working on a prototype of something that has you very excited, cripple it. Intentionally sabotage your project in a way rendering it wholly unfit for production, forcing you to thoughtfully consider implementation with your team before rushing forward.” 1

Scrappy prototypes are the lifeblood of a young startup. Dependable scalable services are the bread and butter of mature companies with market traction and customers to serve. But what of the in-between? Put differently, how does one reconcile the constant need to bring stunning new products to market with the need to execute on a product roadmap as a team building reliable infrastructure together?

By working to foster an environment that encourages rapid development and prototyping of new and innovative ideas, then coming together as a team to identify the fit in product, strategy, marketing, and customer validation, companies can craft thoughtful plans to make it real.

Lone wolf / cow{boy, girl} work is fun as hell. But as teams grow, products mature, and customers come to depend on your business, it’s critical to fold fresh prototypes and cool ideas into the team context as quickly as possible – without the temptation to rush to market alone. When a business is running on all cores and exciting ideas can be grown from scrappy prototypes to full-fledged products at a quick but predictable pace and be brought to market together, teams make great things happen.

Crippling the Prototype

So what does “crippling the prototype” have to do with it? If innovation is what we’re after, why should anyone sabotage their best ideas?

  1. First, it forces a full redesign and reimplementation of the prototype once the idea has come of age and folks are on board. This means you and your team get to work together to design a service together that you’ll build and maintain together. This is a matter of respect and collective ownership. If your idea grows legs and takes root in the minds of your team, you’ve multiplied the force of what you can create.
  2. Second, it forces one to thoughtfully consider what broader purpose the prototype might serve in terms of company and product vision. A one-off feature can be cool. But one that can become the foundation of a product category or fit in harmoniously with the vision of the company is much better.
  3. Third, it can be incredibly difficult to think through how customers might use a new feature, how the interface could make more sense for common use cases, longer-term product roadmap, how it can be marketed in a way that inspires and commands attention, and so on. One would hope that when working in a company with cross-functioning teams of trusted coworkers, you could probably come up with better ideas together than alone.

Crippling the prototype forces an idea into “team mode” at the earliest opportune moment. Once the concept is proven and a basic version is ready for demo, the idea belongs to everyone. And while your team probably won’t throw out six months of product and eng roadmap to work on it immediately, the seeds are planted and it’s time to figure things out together. The point is more “thoughtful, collective, customer-focused evolution of rad innovative ideas,” and less “rushing brittle, warty pieces of code into the product.”

What do you mean by “cripple”?

Grey Walter's TortoisesThe idea is to introduce one or more core flaws that render the example wholly unfit for a quick merge into the product, forcing folks to work together on the idea once it’s taken root. This can take a lot of forms. One of the most common is to choose an unsuitable new datastore, language, or framework and seize the moment as an opportunity to experiment with something new. Of course, this comes with a brutal caveat that should flash like a neon sign: now is not the time to try and force a new technology / language / framework x upon your team. The only thing more disrespectful that rushing prototype code into prod is pushing new dependencies through the door in the process — the very opposite point of the exercise. Other less exciting examples include leaving out core features like authentication or multitenancy, omitting distribution / fault tolerance, and so on.

Bringing it Home
Boundary Logo
Innovation through rapid prototyping breathes life into the soul of a company. When businesses stop questioning their religion, products calcify and opportunities open up for competitors. At Boundary, we’re constantly open to revisiting foundational assumptions through brainstorming, kicking around new ideas with a beer, or going it alone on a prototype in parallel with our product arcs. It’s a shame to see companies fall by the wayside because the foundations of a coming wave are something that’s “not in our DNA.” We’re simply here to bring new products to market through fresh thinking better and faster than anyone else as a team. Our loyalty is to our customers, to innovation, and to what’s ahead, and that means moving full speed through the OODA loop together.

So go ahead – prove out the concept, show it off around the company, and push up the code. Then if the time is right and the idea is solid, you can bring it to market with the full force of your team and the company together.

What do you think?

C. Scott Andreas (@cscotta)
San Francisco, CA | 27 Feb, 2013

Zac notes that a more thoroughly-specified (but less-crippled) version of this is a spike solution.
In agile parlance, a tracer bullet is a more mature full-stack spike designed to stick around.