Stop asking what people want. Tell them what they need.

Holger Arendt
5 min readOct 17, 2020

Achieve better outcomes in projects by creating your own solutions instead of relying on ideas from customers.

Photo by Austin Chan on Unsplash

As a development team, when starting a new project you’ll typically begin by talking to your customers to understand what you need to do.

You want to know: What are they doing currently, what they want to achieve, what features the product should have, and what the overall business need is.

This is all fine and gives you valuable information. But before you start discussing features in detail, you better stop right there.

See, here is the problem: Your customers are probably not as tech-savvy as you are and they do not know about all the possibilities available through the use of state-of-the-art technology. Their background is most likely in some business functions and their exposure to technology is very much limited to what they use every day at work.

So when asking them to tell you how a feature should look and behave, their only point of reference is what they already know. They absolutely know what they want, but they just have no idea how to get it.

“People are intimately aware of their wants, which they think of as needs, but they are absolutely terrible at inventing new ways to address those wants.”

— Seth Godin

So by relying heavily on your customer's idea, you will end up creating most likely just the same old same old, something that might look a bit fancier but which gives them more or less the same experience as before. In my opinion, this is not a great outcome and leaves a lot of room for improvement.

Of course, you want to build exactly what they need, but if that is only a small improvement of an existing tool are you even doing a good job?

Actually, by not asking, you will be able to create more innovative solutions, better user experiences, and something that will hopefully delight your customers.

Here are four steps on how you should approach this.

1. Try to understand their pain points

When talking to your customers, keep the discussion in the problem space.

Use short sessions to understand their needs and major pain points. Methods like Domain Storytelling and EventStorming (from https://storystorming.com) will help you to clarify existing processes.

Do not waste time by discussing the solution with them at this point, you will be quicker and more focused that way, you do not need to translate the technical mumbo jumbo and you can do this without blocking everybody in a lengthy meeting.

Talk to your colleagues who are not part of the core team to gather additional ideas and perspectives.

2. Come up with a solution

Developers, architects, and UX/UI experts should solve the customer’s problems, not the other way around. You are after all the experts, work as a team combining your diverse viewpoints, knowledge, and experiences into innovative solutions.

Take into consideration the requirements of your organization regarding the use of platforms, technology, and design, or the need to involve other teams within your company— this is often something the business might not know about. Oftentimes people will be surprised to hear that there are existing offerings within your company that can help them achieve the project’s goal faster, better, or cheaper.

Tell your customers what they need. Show and explain how your solution addresses their problems. From my experience, they will be amazed by your ideas and novel approach, further underlining that engaging with your team to help them was the right choice.

Before implementing a feature, use prototyping tools like Figma or InVision to create a shared idea of the proposed solution. This helps you to discuss internally first and later to present to your customers. Prototypes can also be used to gain additional feedback from friendly users.

3. Deliver quickly and get feedback early

Borrow some ideas from DevOps practices and use e.g. CI/CD pipelines to deploy early and often, ideally to production so you can get real user feedback faster.

If “deploy to production” sounds too scary, you might want to think about using Canary Releases. Direct only a small percent of traffic to the new version of your application.

That way, you can measure the usage, conversion rate, or any other metric you find useful and you can decide if your solution really has the impact you envisioned. If not, it didn’t affect all users and you simply revert the change.

4. Measure, refine and iterate

Not every idea you come up with will automatically be perfect, but that is totally fine. Use measurements and user feedback to rethink your solutions or improve small details.

Your customers can tell you when it's “good enough”, so you are not stuck in an endless loop. This is in line with the idea of a Minimum Viable Product, a version of a product with just enough features to satisfy early customers and provide feedback for future development.

You can treat every part of your product this way during the development lifecycle, optimizing each one until you and your customers are satisfied.

Improve quickly by going through these steps: Measure, Refine, Iterate. The speed that agile development and DevOps provide will help you to keep these improvement cycles short and efficient.

Final thoughts

We are using design thinking with its create-test-refine cycle in the early ideation steps of projects. We are applying Agile Development to quickly produce useful increments.

But when talking about features in detail we often fall back to a waterfall model, where we discuss different solutions in lengthy meetings, maybe out of fear that we are not delivering what the customers want.

Relying on their input will more often not lead to great results, but rather a mediocre reinvention of the existing.

As Grace Hopper said in “The future: Hardware, Software, and People”:

That brings me to the most important piece of advice that I can give to all of you: if you’ve got a good idea, and it’s a contribution, I want you to go ahead and DO IT. It is much easier to apologize than it is to get permission.

So stop asking for ideas, stop asking for permission.

Instead, tell your customers what they need. Use your expertise and come up with great solutions.

Go ahead and do it.

--

--

Holger Arendt

Software Architecture | Digital Transformation | Innovation | New Work | Measure. Refine. Iterate