Skip to main content

Merits of Customer Development

I wouldn't be a card-carrying product manager without some thoughts on product management.



My latest product management interest has been following a trend known as Customer Development, advocated by Steve Blank. It's a business model for developing new products, mostly applicable to startups but I think it also applies to more established companies.

The main message is actually fairly intuitive: you develop a successful product by continually iterating it in a tight feedback loop between developing the product, getting customer input, and then making changes. Rather than spend a lot of time upfront in creating the product, you develop a minimum viable product (MVP): the product with just the necessary features to get money and feedback from early adopters. Then you let your early adopter customers tell you what works well and what needs to be changed.

This model sounds intuitive but by far the most prevalent development model for Silicon Valley startups looks something like this:

1. Get excited about an idea. Start doing some research regarding markets, customers, pricing, etc.
2. Build the product, along with accompanying sales tools (demo, PowerPoint slides, data sheets, etc.). Start building a sales force to sell the product.
3. Work with a small group of alpha/beta customers. Enlist a PR agency start building "buzz."
4. Officially release the product in a public launch event, hopefully getting lots of attention from a site such as Digg or Techcrunch. Go full steam ahead in selling and marketing the product.

Steve Blank calls the model I just described as the Product Development model, and he labels it "the leading cause of startup death". You can read more about why on his blog, starting with this link.

I've started reading Steve's book, Four Steps to the Epiphany. I first heard about the book on Marc Andreessen's blog. I was intrigued by his recommendation because Marc has some really great thoughts on the idea of product-market fit - the idea that what matters most in determining the success of a product is how much it fits what the market needs. It turns out that Marc was borrowing concepts from Steve Blank's book!



The book is laid out more like a manual but from what I can tell, it has great content.

In fact, I don't know why we don't hear more about Steve Blank and Customer Development. The model makes so much sense because it basically says that entrepreneurs may have vision but they aren't fortune tellers. They can't predict exactly what people need so there is a constant need to go back and iterate.

Maybe this model isn't so popular because it flies in the face of conventional wisdom? Imagine if all startups started to follow this model of starting with a minimum viable product and holding off on enlisting the professional sales force, marketing team, PR agency, etc. upfront. This would certainly change the economics of the startup industry in regions such as Silicon Valley.

Here's another fascinating article inline with the idea of Customer Development. It seems almost strange that a Web site could make 50 changes in their production system every day, but if you take the time to read through the article, it makes a lot of sense.

http://timothyfitz.wordpress.com/2009/02/10/continuous-deployment-at-imvu-doing-the-impossible-fifty-times-a-day/

Comments

Popular posts from this blog

Building a Hadoop cluster

I've recently had to build a Hadoop cluster for a class in information retrieval . My final project involved building a Hadoop cluster. Here are some of my notes on configuring the nodes in the cluster. These links on configuring a single node cluster and multi node cluster were the most helpful. I downloaded the latest Hadoop distribution then moved it into /hadoop. I had problems with this latest distribution (v.21) so I used v.20 instead. Here are the configuration files I changed: core-site.xml: fs.default.name hdfs://master:9000 hadoop.tmp.dir /hadoop/tmp A base for other temporary directories. hadoop-env.sh: # Variables required by Mahout export HADOOP_HOME=/hadoop export HADOOP_CONF_DIR=/hadoop/conf export MAHOUT_HOME=/Users/rpark/mahout PATH=/hadoop/bin:/Users/rpark/mahout/bin:$PATH # The java implementation to use. Required. export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home hdfs-site

Working with VMware vShield REST API in perl

Here is an overview of how to use perl code to work with VMware's vShield API. vShield App and Edge are two security products offered by VMware. vShield Edge has a broad range of functionality such as firewall, VPN, load balancing, NAT, and DHCP. vShield App is a NIC-level firewall for virtual machines. We'll focus today on how to use the API to programatically make firewall rule changes. Here are some of the things you can do with the API: List the current firewall ruleset Add new rules Get a list of past firewall revisions Revert back to a previous ruleset revision vShield API documentation is available here . Before we get into the API itself, let's look at what the firewall ruleset looks like. It's formatted as XML: 1.1.1.1/32 10.1.1.1/32 datacenter-2 ANY 1023 High 1 ANY < Application type="UNICAST">LDAP over SSL 636 TCP ALLOW deny 1020 Low 3 ANY IMAP 143 TCP < Action>ALLOW false Here are so

Connecting to SQL Server from OS X perl

I've been spending my coding time in the offhours working on Perl instead of Ruby. My coding time in general has been very limited, which is part of the reason for the length of time between updates. :) My latest project is to pull data out of a Microsoft SQL Server database for analysis. I'm using perl for various reasons: I need a crossplatform environment, and I need certain libraries that only work on perl. Some of the target users for my code run on Windows. I know that Ruby runs on Windows but it's not the platform of choice for Ruby developers. The vast majority seem to develop either on OS X or Linux. So Ruby on Windows isn't at the maturity that ActiveState perl is on Windows. In fact, I don't even run native perl anymore on my MacBook Pro. I've switched over to ActiveState perl because I don't need to compile anything every time I want to install new CPAN libraries. And because it's ActiveState, I'm that much more confident it will w