The Greatest Enemy for Developers is the Illusion of Knowledge
Developers who think they know stop trying to understand
What developers see isn’t all there is. Developers build their knowledge on what they see, hear and understand, but this is usually wrong and built on assumptions.
What gets developers in trouble is tricking themselves into thinking they understand. If you know you don’t understand, you investigate, but if you believe you know you don’t.
Experts don’t listen to people talking about a topic they think they are an expert on because there is nothing more to learn.
Why are developers confused
Developers who aren’t confused don’t realise they don’t understand the situation. They are in confusion denial. They don’t truly understand, but they don’t realise it yet.
Confusion is a normal state for developers because software development is about discovering unknowns, clarifying assumptions and working out what needs to be done.
Why are developers confused?
Developers are in situations where they have to create a technical solution when they don’t know how it works.
Developers need to understand requirements, user stories and turn confusion into knowledge. Developers understand the business and how the software needs to work one user story at a time.
Code reviews start with confusion and developers build up an understanding of the code before they can review it.
It takes time to comprehend the requirements and how they would work with the other requirements.