How to Overcome to “Curse of Knowledge”

Discrete, actionable tips for explaining things when you know too much

Nathaniel Morihara
3 min readJun 6, 2023

I first saw the term “curse of knowledge” in a blog post by a software engineering retiring after a 45 year career:

“When you know something it is almost impossible to imagine what it is like not to know that thing. […] and it is the root of countless misunderstandings and inefficiencies.”

A co-worker recently asked me if I had any advice for overcoming this curse.

The first things that came to mind were, “understand your audience” and “imagine you’re in their shoes.” But I felt this was too abstract to act on. I wanted tips that were discrete and actionable.

Since I didn’t find much on the internet or from LLM AIs, I figured this was a list worth sharing. While it comes from the perspective of a software engineer, I hope it is helpful in other lines of work:

Assume no one knows anything. That’s not to say you need to cover everything. But don’t be surprised when someone is tripped over something basic. Often, I find a misunderstanding comes from lacking knowledge about the fundamentals. If someone is confused, verify that the fundamentals are well understood. Start by asking them to summarize what they already know.

Remember your struggles when you were your audience. I know this borders on “unhelpfully abstract,” but bear with me. Can you remember what it was like when you didn’t know what you know now? Were there particular points that teachers glossed over? Do you remember mistakes that you made? When you explain something, try to recall that version of you. What were the points you got stuck on? What were your “aha!” moments? Try to address these points as you explain things.

Document as you learn. Better than trying to remember what you used to not know, document what you learn when you’re learning it. Your initial explanations, untainted by the curse, may prove helpful for other newbies. Besides, teaching is the best way to learn.

Define domain-specific jargon. All too often I read documentation where I know every word, but I don’t understand the sentence. This happens when a word has context-specific definitions or is unhelpfully abstract. In software, a few of these words include “partition,” “node,” “consistency,” and “scalable”. Avoid these overloaded terms, or be explicit about what you mean when you say them. Define necessary jargon, no matter how basic it may seem.

Use visuals & diagrams. This applies irrespective of the curse of knowledge. Images communicate in a way that words cannot.

Use stories & examples. Providing several concrete applications of a concept goes a long way.

Give opportunities to ask questions. I’m unable to follow a long explanation if I have a question about the first sentence. Pause and give your audience opportunities to ask questions so you don’t lose them along the way. Additionally, making yourself approachable and available for questions is always helpful — that way, they can let you know what they don’t know (which is probably the easiest thing to do).

Be patient and understanding. Remind others that it took you time to learn what you know now. Be patient when others don’t know everything that you do.

Ultimately, I believe having success communicating (and generally in life) is about empathy. I believe being successful as a teacher (and in life) is about having empathy. If you are able to understand someone, you’re better able to tailor your actions to meet the needs of the situation. The curse of knowledge can’t be avoided, but it can be minimized through understanding. I know this goes back to the original abstract advice (“imagine you’re in their shoes”), but if you can remember one thing, it’s to approach everything and everyone with empathy.