Last summer, I read a super interesting book about a concept I never heard of: lateral thinking. Let’s discuss it today.
As developers, creativity is an underrated skill. Indeed, I firmly believe that the ability to find creative solutions in the context of an organization or a team by thinking (sometimes) out of the box and proposing new ideas or concepts is an incredible and valuable strength.
In this post, we will explore one solution to spark creativity: lateral thinking. But first, let’s discuss classical reasoning, which is called vertical thinking.
Vertical thinking is the traditional way of solving problems. It’s a logical, step-by-step approach, where each step builds on the last. Most of us use this method when reasoning through a problem. While vertical thinking is helpful for structured problems, it can sometimes limit creativity because it only follows one path—the one that seems right based on what we already know.
Before delving into lateral thinking, it's important to understand something about how our brains work. Our minds are a pattern-making system, meaning that it works by creating patterns and recognizing them. For example, once we solve a problem a certain way, we have the tendency to stick to that method. While this can be useful for routine tasks, it can also be a trap when it comes to thinking about how to solve a new problem.
The purpose of lateral thinking is to escape these patterns and look at problems from a fresh angle. The way to do it with lateral thinking is to put unlikely information together or use unexpected connections. Instead of following the same path we've always used, lateral thinking allows us to think creatively and explore new solutions.
One thing I love about lateral thinking is that it’s not about being right immediately. With vertical thinking, we need to be right at every step to reach the right solution. But with lateral thinking, the goal is to be effective, not necessarily correct right away. It’s OK to make mistakes along the way as long as you end up with a good solution. Said differently, we are allowed to use invalid arrangements to achieve a valid restructuring.
Think about meetings where someone—maybe even you—proposes a solution that seems off or even wrong. Is that a bad thing? I don’t think so. That wrong idea might spark another thought in someone else’s mind, eventually leading to the right solution. It’s better to generate some ideas, even if some don’t work, than to have no ideas because you’re afraid of being wrong.
Lateral thinking is also about attitude. It’s a mindset that refuses to accept rigid patterns and instead looks for ways to combine ideas in new and different ways. For example, when joining a new team, it’s OK to question decisions, especially if the answer is “We always did it this way.“
There are several techniques to help us think laterally. Here are four that I’ve found particularly useful:
Reversal technique: This technique involves taking a problem and reversing the conventional perspective. For example, instead of asking, “How can I make this app more user-friendly?” we could ask, “How can I make this app as frustrating as possible?”. This reversal may help us identify pain points or areas that can frustrate users. Once we know what could make the experience worse, we can take steps to avoid those pitfalls.
SCAMPER technique: SCAMPER stands for Substitute, Combine, Adapt, Modify, Put to another use, Eliminate, and Reverse. It’s a set of prompts to help us think creatively. For instance, if we are working on a feature, we might ask, “What if I substituted this function with another one?” or “Can I combine two features to create something better?”.
Challenging assumptions: We often solve problems based on assumptions we don’t even realize we have. This technique is about questioning those assumptions. For example, if we assume a particular tool is the only way to solve a problem, let’s ask ourselves, “What if I didn’t have this tool? How else could I solve it?”
Provocative technique: This technique involves making bold or unexpected statements to shake up your thinking. A few examples:
“What if we weren’t allowed to store any data?“
“What if we stopped adding any new features?“
“What if the UI had no buttons?“
By considering ideas that seem outrageous, we can break free from limiting thought patterns and find more innovative solutions. And this is the main goal of lateral thinking.
Explore Further
I have never considered myself a very creative person. Yet, I’ve been using lateral thinking quite regularly while writing posts for The Coder Cafe. Indeed, with the rise of content generated partially or not by LLMs, I believe that original and out-of-the-box content will be a gold mine in the future. Overall, I firmly believe that creativity will become a critical skill for software engineers in the future.
By the way, did you know that yesterday was my birthday? No, because you missed it! As a consequence, you’re invited to share The Coder Cafe with at least one of your colleagues/friends 😝.
Appreciated the prompts you suggested here, definitely didn't know about SCAMPER. Just a quick question, did you find good value in Lateral Thinking: Creativity Step by Step? Reviews weren't particularly great so I was a little hesitant to pick that up.
If I may be so bold as to add my take on idea generators: https://tidyfirst.substack.com/p/thinkies-introduction
I want to second your point, which is that idea generation is a numbers game. The key meta skill is deferring judgement & evaluation until you have formed the idea.