My 4-year-old asked me today, “What is a cage?” I gave a basic explanation of a cage. Then he asked, “What is a trap?” He’s been reading and watching a lot of superhero media lately, so this topic was not to surprising. I think the way someone with more developed language skills would have asked this question is the more direct, “What is the difference between a cage and a trap?” My kid’s multiple-step question was simple but lengthier, like an if…else statement, compared to a more complex but more concise ternary operator. I find the confusion ternary operators introduce to outweigh the benefit of reducing lines of code, but that’s another story.
My first answer to this question was, “A cage keeps something like a plant or an animal inside it. A trap closes around animals when they walk into it.” But I thought this wasn’t sufficient. A zookeeper can close a cage around a bear when they walk into it, and it wouldn’t be a trap in that case. Later I came up with a better answer, “A trap is a cage that surprises you.”
Of course, this is a simplification. My kid’s mental model is that a trap is a subset of a cage. Some traps are cages, but mouse traps and leg-grabbing bear traps aren’t cages. And it doesn’t get into metaphorical traps like the one Admiral Ackbar calls out. But my response met my kid where he was.
For an expert example of communicating the same concept at multiple levels, see Talia Gershon explain quantum computing to a child, a teen, a college student, a graduate student, and a professional. And for various fun examples, see “ELI5 (explain like I’m five)” on Reddit.