What Is a Problem? Finding the Missing Link

What exactly is a problem, and how do we know when we are confused? As a software developer and computer scientist, I’ve been exploring the idea that a problem is the missing link between where we are and where we want to be. From sorting algorithms to jigsaw puzzles and everyday challenges, this article explores how identifying what we don’t understand might be the first step towards finding a solution.

13 October 2026

When Do We Know We Are Confused?

As a software developer and computer scientist, I have spent a lot of time dealing with problems. But recently, I started thinking about something more fundamental: What exactly is a problem?

I do not just want to know how to solve problems. I want to understand what makes something a problem in the first place. More importantly, I want to know how to recognise when I am confused.

Many real-life problems are not isolated. They are often collections of smaller problems connected together. Sometimes we struggle not because the problem is too difficult, but because we haven't yet identified what we don't understand.

I started exploring this idea through computer science and mathematics, looking for a more precise way to describe a problem.

image.png

A Problem Is a Missing Link

Consider a sorting algorithm.

Suppose we have a list of numbers:

[8, 3, 6, 1]

We want to transform it into:

[1, 3, 6, 8]

We know our starting point: an unsorted list. We also know our destination: a sorted list. We need a way to get from one to the other.

The algorithm provides that connection.

This made me wonder: Could a problem be understood as a missing link between an input and an expected output?

Consider another example. Given a number (n), is it prime?

If (n = 17), the answer is yes. But the broader problem is not just about 17. It is about finding a method that determines whether any suitable input number is prime.

We have an input and a desired answer. The missing link is the method that connects them.

Thinking this way helps us move beyond individual questions and understand the general problem behind them.

The Shape of a Problem

Another image that came to mind was a jigsaw puzzle.

Imagine looking at a puzzle with one piece missing. You can see the gap, and perhaps you can identify the shape of the missing piece. But several pieces might appear to fit.

Finding a piece that fits the gap is not necessarily enough. It must also make sense within the entire picture.

I think problems work similarly. We might have some information, several possible solutions, and an idea of what we want to achieve. Yet something is missing: perhaps a piece of information, a relationship between two things, or an understanding of how the different parts fit together.

A solution may appear to work in isolation but fail when we consider the bigger picture.

That is why I find the idea of a problem's shape useful. It encourages me to look beyond the obvious question and examine the components, relationships, and constraints that define it.

image.png

The Gap Between Where We Are and Where We Want to Be

After reflecting on these examples, I arrived at another way of expressing the idea:

A problem is the gap between where we are and where we want to be.

These two positions do not have to be physical locations. They can represent a computer program's current state, our understanding of a subject, or a situation in everyday life.

Think about packing a suitcase. You have limited space, items of different sizes, and different priorities. Your goal is to choose what to pack without exceeding the available capacity.

In computer science, this resembles the knapsack problem.

The challenge becomes easier to analyse when we identify what we have, what we want, and what constraints we must respect. We can then start looking for a method that bridges the gap.

Real-life problems are often more complicated because we may not know all the constraints or even clearly define the desired outcome. Before finding the missing link, we may first need to understand the problem.

How Do We Know What We Don't Understand?

This brings me back to the question that started my exploration.

When I am stuck, how do I know what I do not understand?

I can begin by asking a few questions:

  • Do I understand the current situation?

  • Do I know what I am trying to achieve?

  • Do I understand the relationship between the two?

  • Am I missing information, a method, or an explanation?

For example, when working with an unfamiliar codebase, I might understand what individual functions do but not understand how they work together. The missing link is not necessarily inside one function; it may be the relationship between the components.

The same applies to AI-generated code or explanations. Something can look convincing without me fully understanding why it works. In that case, I need to identify the gap between what I can explain and what I cannot.

Perhaps confusion becomes easier to recognise when we stop treating it as one large feeling and start identifying the specific things we cannot yet account for.

Conclusion

I do not think I have arrived at a complete definition of a problem. But thinking about problems as gaps, missing links, and shapes has helped me approach them differently.

Instead of immediately searching for a solution, I can ask what I know, what I want to establish, and what connection I have not yet discovered.

Sometimes, one piece is missing. Other times, several interconnected pieces will be missing, and understanding one will help reveal another.

Perhaps solving problems begins with learning to recognise what we do not yet understand.

Perhaps the first step toward finding an answer is not to search for the solution, but to understand the gap that makes the answer necessary.

image.png

Was this helpful?