Home About Eric Topics SourceGear

2008-10-22 13:00:00

Product Parenting

The genesis of this article happened back in May when I posted a blog entry containing the following snippet:

And finally, for something completely different, don't miss the Jam Session at Tech-Ed on June 3rd.  Several of us minions from SourceGear are planning to take the stage and give our rendition of Pinball Wizard.  It'll be me on acoustic guitar, our development manager Jeremy Sheeley on bass, and our product manager Paul Roub playing the Evil Mastermind Schecter PT that will be given away later that week.

BTW, I'm not a very good guitar player, but the jam turned out OK.

Anyway, the first comment on that blog post was from a reader who said:

3 managers. Wow. Your company must be growing and/or is fairly large.

The person who made that comment was probably using the word "manager" to refer to "someone who manages people".  If so, then yes, our company has more than 3 managers, but not all of the 3 people playing Pinball Wizard qualify:

So when I saw that comment, I told myself I should write an article about the role of a product manager.  This is that article.

(BTW, the content of this article was my presentation (video) at the Business of Software conference in September.  For more information about this event, keep an eye on the Business of Software conference blog.)

What is a product manager?

In short, a product manager is a marketing person who focuses on strategic stuff and stuff that is specific to the product.

When people think of marketing, their thoughts often run to things like logos, graphic design, and advertising.  This is the communications side of marketing.  We call it "marcomm".

The other side of marketing is the stuff that is more focused on the product itself:

These activities are the domain of the product manager.

I still remember the moment when I first started to learn this distinction.  Back when I worked at Spyglass, one of my peers asked, "Why don't we have any product marketing people?"

I said, "What do you mean?  We've got marketing people.  Marc and his team just spent six months deciding which Pantone shade of red we're going to use for our logo.  That's marketing, right?"

The discussion that followed my clueless remark was very enlightening.

Managing Products vs. Managing People

There is a confusion caused by the word "manager".  As noted before, a product manager doesn't necessarily manage people.

To highlight the differences between product management and people management, I'm going to start by offering a brief but reasonably complete lecture on managing people in a software company.

A Brief but Reasonably Complete Lecture on Managing People in a Software Company

Stop treating them like children.

That's it?

Yep, that's it.  Stop treating them like children.

If you follow this rule and all of its corollaries, you will be a competent manager, thus placing you in the top one percent of all managers in the software industry.

Software professionals are grownups.  They do not deserve to be treated like children.

On the other hand...

Unlike your coworkers, software products deserve to be treated very much like children.  They're rebellious and wayward.  They need to be given strict boundaries and lots of guidance.

Like children, products go through stages.  Joel Spolsky said that "good software takes ten years".  Those ten years are not all the same.

The life of a growing software product has six different stages.  And the progression of those stages is a lot like the stages of parenting a child.

Stage 1:  Prepare

In parenting, the first stage is conception and pregnancy.  In software, this stage covers all the time before your first product release.  The key concept for this stage is "prepare".

This is the stage where you find a product idea and dream about what it might be when it grows up.

Product managers in stage 1 tend to make the same mistake that a new father makes:  He believes that since the mother (the development team) is carrying the baby (writing the code), he doesn't have anything to do.  All he has to do is wait until the kid is old enough to throw a baseball around, right?


As a product manager, stage 1 is perhaps your most important stage.  You have a lot of preparation to do if you want your product to be successful.

This is challenging stuff, and you have to do it now.  Later it will be too late.


Anybody else remember the Apple Pippin?

When I speak at conferences, they sometimes introduce me as "the person who led the team at Spyglass who built the browser that Microsoft licensed to become Internet Explorer".  That's true, but it is an incomplete rendition of the truth.

Spyglass licensed its browser to around 120 different companies who released products based entirely or partially on our code.  All but one of those products crashed and burned.  So it would be equally accurate (albeit far less flattering) to introduce me as "the person who has been affiliated with more failed web browser products than anyone else on the planet".  :-)

One of those products was the Apple Pippin (although I would hasten to say that my code was not the reason why the Pippin failed).  :-)

The Pippin was a disastrous example of product marketing.  And it failed because somebody did a terrible job in stage 1.  The positioning of this product was never clear.

The answer to all of these questions was "yes".  By trying to fit in every category, the Pippin ended up fitting in none of them.

Predictably, the primary differentiation for the Pippin was that it was lame in every category.  Yes, it was a game machine, but it was insanely expensive and incompatible with 100% of the popular games in the world.  Yes, it was a computer, but it was slow and underpowered.

Stage 2:  Care

In parenting, the second stage is birth and infancy.  In software, this stage covers the 1.0 release and the time thereafter.  The key concept for this stage is "care".

This is the stage where you endure the final pain of getting the product out the door. 

The product manager has a very important role in the first release of a new product.  The labor pains are endured by the development team, but the product manager is responsible for the launch.  It is important to get the messaging just right.

Shipping release 1.0 is a lot like the birth of a new baby:  Lots and lots of pain, followed by a brief period of pure happiness, and then no sleep for quite a while.

In most B2B software products, shipping the 1.0 release is more like a beginning than an end.


After a baby is born, the parents are overwhelmed with the responsibility of its care.  A newborn is completely dependent, unable to do anything for itself.  When it wants to be fed at 3 o'clock in the morning, that's what has to be done.

Many version 1.0 products have similar needs.  Users need tech support, sometimes urgently and at very inconvenient times.  That's what has to be done.

Like the husband of a breast-feeding mother, the product manager may not have primary responsibility for all this care that needs to be provided.  But he can be involved, and both he and the product will benefit from his choice to do so.

Product managers and new fathers typically share one other task in common during stage 2:  Soul searching. 

Every father I know has held his new baby and wondered if he was really prepared for the responsibility.

Product managers in stage 2 need to be asking themselves questions about the quality of their preparation:

Stage 2 is not the time to start doing the stuff you should have done in stage 1.  But it is time to review.  It's not too late to make changes.


Around ten years ago, my company shipped version 1.0 of a product called SourceSurf.  It was a web-based application for browsing source code repositories.

If you were to travel back in time and ask SourceSurf what it wants to be when it grows up, it would look into the future and say, "I want to be sort of like Atlassian FishEye".  But SourceSurf never got the chance to grow up.  Version 1.0 was its first and last major release.  What we should have done was tweak the strategy and keep going.  Instead, we looked at the initial results and gave up.

SourceSurf 1.0 didn't do very well, but the product concept was generally good.  We failed to make the minor course corrections this product needed to be successful.

Stage 3:  Listen

In parenting, the third stage is the so-called "terrible twos", (which, as all parents know, actually lasts until the child is almost four).  In software, this stage typically covers the 2.0 release cycle.  The key concept for this stage is "listen".

This is the stage of defiance and rebellion, where the product begins to exhibit its own will.

One day when my oldest daughter was in this stage, we called her to dinner.  She sauntered up to the table, glanced at the food we had prepared, and gasped in horror, "There's nothing here I like except butter!"  :-)

Obviously children need correction during these years.  But they also need to be heard.  This is the stage when "kids say the darndest things", some of which are cute, and some of which are annoying or embarrassing.  Either way, this process is an important stage of growth.  Parents need to provide correction without crushing the child's spirit.  Often that means listening to the weird things the child says.


The product manager also needs to spend stage 3 listening.  Customers ask for a lot of stuff, and that feedback needs to be heard and incorporated into the next release of the product.  There is still time to tweak the strategy before the product goes mainstream.


Stage 3 is the most common place where products fail.  There are plenty of examples.  Almost any product that died at the bottom of the chasm was a failure in stage 3.  My favorite two examples are BeOS and Wingz.

I often wonder if these products might have succeeded if they had been more willing to listen to the very early user feedback and change course accordingly.  This might have meant allowing the product to become something its parents never dreamed it would be.

Digression:  Looking across the chasm

Since I am employed by a version control vendor, the chasm situation that is most interesting to me today is the Decentralized Version Control System (DVCS).  Notable examples in this category include open source tools such as Git, Mercurial, and Bazaar.

Today, these products are not yet mainstream.  They have a lot of buzz in certain communities, but the vast majority of all companies doing software development are still using centralized tools.

Will the DVCS tools make it across the chasm?

Stage 4:  Talk

In parenting, the fourth stage is the time from elementary school to adolescence.  In software, this stage typically covers version 3.0, which is often the first release where the product can be considered mainstream.  The key concept for this stage is "talk".

Parents at this stage often express amazement at what their child can do.  "Little Bobby is just amazing!  Seven years ago we made this baby and now I can carry on an actual conversation with it!"  Stage 4 arrives, and quite suddenly the parent realizes that their baby has become a little person.

Similarly, software products in stage 4 have reached the point where most people can actually use them.  They're mainstream now.  Previous releases were really only popular with early adopters and people who have lots of patience.  But release 3.0 is polished enough to be a productive solution for more than half of its target market.

Stage 4 is when products and children begin to develop an unhealthy level of focus on the competition.  When kids go to school, they begin to learn that they can make themselves feel better by making others feel worse.  It will take them many years to unlearn this lesson, to learn that mental health and personal peace come from the disciplined choice to not worry so much about others and take care of yourself.

Similarly, stage 4 products should probably not be terribly focused on the competition.  If you don't have good differentiation by now, you're not gonna get it.  Take care of your own customers.


The most important thing for parents and product managers in stage 4 is talking.

This is the stage where kids need information, and it is the last stage when they are actually willing to listen to anything you have to say:  Parents need to talk to their kids about the risks ahead.  Tell them about the heartache and consequences that can come from poor decisions about smoking and sex and drugs and being a fan of the Chicago Cubs.

Similarly, stage 4 is the time when a product manager's primary job is providing information.  Your product is mainstream now.  People want it.  But to help them realize they want it, you have to give prospective customers lots of information.  You need whitepapers.  You need demo videos.  You need product comparison documents.  And so on.


As an example of a product that didn't do so well in stage 4, I cite my own company's flagship product, SourceGear Vault.

Vault is very popular and has been a success for our company.  But when it comes to providing all the different kinds of information that a mainstream product needs, we dropped the ball. 

Right around the release of Vault 3.0, the product started to get lots buzz through "word of mouth".  People would come to our website to get product information, but the stuff we had there was just too anemic.

To our credit, we realized our mistake and took steps to fix it.  We hired a product manager to focus on this kind of thing.  But still, we got a late start, so even now Vault is still catching up to where it should be.

Stage 5:  Balance

In parenting, the fifth stage is the teenage years, from adolescence through high school.  In software, this stage typically covers the post-3.0 releases.  The key concept for this stage is "balance".

This is the stage where a child wants you to stop calling them a child.  It is a time of transition to adulthood, defined by rebellion.  No stage is more trying and difficult for a parent than stage 5.  Every parent wants their children to eventually become independent, but few realize just how painful the journey will be.  The teenage years are a lot like the terrible twos.  When the child doesn't get his way, his anger can be quite explosive.  However, instead of lying on the ground kicking and screaming, he shouts "I hate you!" and slams his bedroom door.


But just like the terrible twos, this stage is a critical part of growing up.  The parent must strike a balance.  This stage is the time to start steering a bit less.  Let the teenager take a bit more control over her own life.

Stage 5 is when children and products spend a lot of their time asking for things they don't need:

As product manager in stage 5, you need to give your product some slack.  It's time to let customers have some of the features you have been resisting for years.  Even if you don't think the feature is a good idea, as long as it won't destroy the product, you should seriously consider letting it happen.

But you still need some boundaries:


The perfect example of a product that ruined its life with poor quality is Microsoft Visual SourceSafe.

Today, SourceSafe is the punch line to almost every joke about version control.  It is widely despised and generally regarded to be unreliable.

Before Microsoft acquired SourceSafe, it was an outstanding and highly respected product.  This product didn't become the mostly widely used proprietary version control tool for no reason at all.  SourceSafe redefined the industry by bringing more ease of use than any of its predecessors.

But under Microsoft's parenting, SourceSafe ruined its life.  Versions 5.0 and 6.0 were disastrous.  I would bet that SourceSafe has more disdain per user than any other profitable product in history. My company has made megabucks from the world's dissatisfaction with SourceSafe.

Ironically, the latest version of SourceSafe probably doesn't deserve quite the level of scorn that it receives.  I haven't used SourceSafe 2005, but I understand that it's not actually that bad.  They fixed a lot of problems. 

But the product has become something that people love to hate.  Now it's too late.  The world will never trust SourceSafe again.

Stage 6:  Let Go

In parenting, the sixth stage is adulthood.  In software, this stage covers the time when the product is considered mature.  The key concept for this stage is "let go".

This is the stage where your work as a parent is basically done.  From now on, any mistake your child makes is their own fault.  You have to let go.

Similarly, a product manager doesn't have much to do anymore when a product reaches maturity.

For both parent and product manager, this is a time to celebrate the successful end of a long and sometimes difficult journey.

Let Go

Both parents and product managers often find it difficult to let go.  But it is important that you do.

You're a product manager.  Your job is to help define and shape the identity of this product.

Once the child is "all grown up", you need to stop trying to help it figure out what it wants to be.  It already is.

Let the folks in marcomm, sales and support handle everything from now.

This product is done.  Go find the next one.

Epic Fail

The two most obvious examples where product managers refused to let go:

These products are done.  They've been done for years.  Unfortunately, Microsoft has largely failed to find its next product.  So, because Microsoft has nothing better to do, they continue to sell us new releases we don't need and create contrived reasons to force us to buy them.

Naturally somebody is going to gripe at me for saying that the two highest-revenue software products in history are a failure.  I'm not saying that.  What I'm saying is that these two products were stunningly successful in stages one through five, and that doesn't change the fact that their execution of stage 6 has been awful.

Final Remarks

The product manager and the parent both suffer from an abundance of diverse opinions.  Your local bookstore has hundreds of titles on each topic, many of them offering conflicting advice.

This article contains lots of my opinions about parenting and product marketing.  Some of my readers will agree with me.  Others will think I am wrong.  (The ones in the latter group will send me email.)

The problem with both parenting and product marketing is that everybody knows how to do it, but nobody really knows how to do it.  You read everything you can, and then you do your best.

And in parenting, your best is probably good enough.

This is one very important way that product management is completely different from parenting:  Most parents are successful.

Very few parents completely fail.  We spend many sleepless hours worrying, but in the end, stuff tends to work out.  If you love your kids and give them your best effort, they're probably going to turn out OK.

In contrast, most products fail.  Marketing is field where effort and "doing your best" are not usually sufficient.

The Pippin didn't fail because there was no product manager -- it failed because its product manager was a nitwit.

Microsoft isn't flogging us with Windows Vista because they don't care about finding new products.  Microsoft tried to find their next product.  They tried very hard.  They assigned their smartest people to the challenge.  They spent many millions of dollars searching for it.  But they never found it.

Google did.