Keep the customer satisfied

I’ve been reading Joel Spolsky’s book “Joel on Software“, which is very good. He has a lot of interesting articles on his web site, which I’ve read for some time, but I’m enjoying it in paper form.

One section struck me this morning:

If there’s one thing every junior consultant needs to have injected into their head with a heavy duty 2500 RPM DeWalt Drill, it’s this: Customers Don’t Know What They Want. Stop Expecting Customers to Know What They Want. It’s just never going to happen. Get over it.

He’s quite right. He points out that so many software projects that fail, or deliver late, or run over budget, really boil down to this: “The customer didn’t really know what they wanted, or they couldn’t explain what they wanted, or they kept changing what they wanted, or we delivered exactly what they wanted and they weren’t happy.” (You can see the rest of this chapter on Joel’s site.)

I’ve seen an important variation of this in many startup companies. When the management guys or the VCs come on board they always talk about “changing it from being a technology-focused company to a customer-focused company”, which is important. Technology for technology’s sake actually can make quite a bit of money, but it’s not a good business strategy. However, what the suits often forget is that where the technology is today is where the customers will be tomorrow.

The customers don’t know this. If you go and ask them what they’ll want tomorrow, they don’t know. They may know what they want today, though even that is often vague. So if you have something that can be built in a few weeks to meet their immediate needs, you have a chance. But if you’re in the technology world and you’re going to take a year or two to build it, remember that what they want will probably have changed by the time you’re done.

Take the case of internet-based telephony, for example. However low-quality, high-latency and occasionally unreliable VoIP may sometimes be at the moment, I don’t think anybody with any sense doubts that it’s what we’ll all be using in a few years. But if you go to the vast majority of today’s phone users and ask them what they want, they won’t tell you much that will help you build a company in this new space. How many of those people now carrying iPods could have told you a few years ago that that was what they really wanted?

Obviously, your focus must be on the customer. But in the words of Wayne Gretzky, you want to skate to where the puck is going to be, rather than where it is now. And to do that, you can’t usually rely on the customers. Nor can you rely on the business guys, or the sales guys, or the marketing guys. They’ll learn what the customer wants at about the same time as the customer does. No, to be ready for the future, at least to some degree, you need to be a technology-focused company.

Enjoyed this post? Why not sign up to receive Status-Q in your inbox?


Customers are the best source of what their problems are. It is up to the salesperson/consulant/lawyer to understand what the customers problems or objectives, and what the constraints are. The value that the s/c/l adds is matching in a solution. Wayne Gretzky had to figure out where the puck would go, customers can only tell you where the puck is now.

Hi David –
Agreed – the customers’ problems will also often have changed by the time you come up with a solution, though. They’re the best source of what their problems are, but not of what they will be.

I think it was Henry Ford who said “If I had asked people what they wanted they would have said “faster horses”.

i totally agree. the customer is almost always wrong, the customer always thinks he/she knows more than you, the person they called to help them, then the customer will not listen because your simple solution would not only resolve the issue, but make them look like a moron. “no, that can’t be it, what would the router have to do with connectivity of the modem…”

Got Something To Say:

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see


© Copyright Quentin Stafford-Fraser