Hey 👋 this is Luca! Welcome to a ✨ monthly free edition✨ of Refactoring.
Every week I write advice on how to become a better engineering leader, backed by my own experience, research and case studies.
You can learn more about Refactoring here.
To receive all the full articles and support Refactoring, consider subscribing 👇
A few months ago I attended a Design Leadership program. I enjoyed it thoroughly, as Duane and Stefane discussed their methodology to turn "design-thinking" into "design-doing".
Towards the end of the course, we talked of Brainstorming.
🧠 Brainstorming
In a Design workflow, Brainstorming belongs to the Ideation phase, that is, the moment you produce an output based on requirements provided by the Brief.
Its principles, though, make it useful in any context where you have to converge, as a group, on some creative decision — like Product / Engineering strategy, or company-wide settings like OKR planning.
At its core, Brainstorming is a session that involves a group of stakeholders, bringing diverse perspectives to the table, with the goal of producing a good output that is participated by the whole group.
Here, the output being participated is just as important as it being good — more so, sometimes good and participated actually mean the same thing.
🤝 Converging
If we take a product perspective, converging on what to do next is often a long and painful process, especially when several stakeholders are involved. To do it right, it requires a good amount of iteration — as shown, for instance, in the great W Framework from Airbnb and Evenbrite.
The problem with converging is that people come from different starting points. That is, they have different values about what's good and bad.
To make things harder, where people stand in terms of such values is often unclear at the beginning. In order to come to an output, these values should be progressively surfaced and inform the group's decisions.
💩 What's the worst solution for this?
Now, I believe we are all used to brainstorming the best possible solutions for problems. What a few people do, however, is trying to think at the worst ones as well.
In particular, let's take a problem and think of two classes of solutions:
👍 The Best Solutions — those that look the most promising to participants.
👎 The Worst Solutions — those that either make the problem worse, or solve it at the expense of creating much bigger ones.
As an example, during the program we analyzed the pain of 🚗 traffic congestion in cities, and came up, among others, with the following solutions:
During the discussion, it turns out the worst solutions provided as many insights as the best ones. They attacked the problem from unexpected sides and contributed significantly to our progress as a group.
Brainstorming bad ideas, in fact, exposes people's values about what's bad, and that's as much as useful as exposing what's good. Because the faster the two extremes are surfaced and understood, the easier is for the group to converge.
🗯 Controversial ideas and Startups
You also get to see something peculiar: some bad ideas are surprisingly similar, or related somehow, to the good ones.
In our traffic congestion case, you see more taxi among the worst ones, and car sharing among the best. If you think about it, they are not so different: they are both about replacing private cars with some kind of shared vehicles.
The fact that they appear in the two extremes suggests that there is some controversy about an underlying theme. In this case, it might be car ownership.
Controversy is powerful because some of the very best ideas are born out of it. Quoting Paul Graham, the best Startup ideas live at the intersection of looking bad and actually being good:
The first time Peter Thiel spoke at YC he drew a Venn diagram that illustrates the situation perfectly. He drew two intersecting circles, one labelled "seems like a bad idea" and the other "is a good idea". The intersection is the sweet spot for startups.
This concept is a simple one and yet seeing it as a Venn diagram is illuminating. It reminds you that there is an intersection — that there are good ideas that seem bad. It also reminds you that the vast majority of ideas that seem bad are bad.
📚 Takeaway
In my experience, brainstorming both good and bad ideas surfaces the full spectrum of people's values. This is more useful than just thinking of the good ones, and makes a group converge on a solution faster and with more confidence.
You can try it out the next time you discuss a problem for which the solution is unclear and should be participated by multiple stakeholders 🙌
Do you follow any formal process to produce new ideas in your team? Be them about product, engineering or any other function. If yes, how does it work? I am curious to discuss it in the comments or via email 👇
Hey, I am Luca 👋 thank you for reading this through!
Every week I publish something about making software, working with people and personal growth. If you haven’t already, you can subscribe below to receive new posts in your inbox!
Another very successful approach I learned and employed for brainstorming was- let's list all our assumptions about the problems and current solutions. When we do that we find that many of them are not really required, and it opens up a lot of interesting ideas.
In the traffic case, assumptions could be- we assume people need to commute, we assume spending time in traffic is a waste of time or we assume people can only drive their cars on roads