What do you call an expert software developer? A wizard. We work with magic numbers, things in hex, zombie processes, and mystical incantations such as tar -xzvf plugh.tgz and sudo gem install --include-dependencies rails.
We can even change our identity to become someone else or transform into the root user—the epitome of supreme power in the Unix world. Wizards make it look effortless. A dash of eye of newt, a little bat-wing dust, some incantations, and poof! The job is done. Despite the mythological overtones, this vision is fairly common when considering an expert in any particular field (ours is just arcane enough to make it a really compelling image).
Consider the expert chef, for instance. Awash in a haze of flour, spices, and a growing pile of soiled pans left for an apprentice to clean, the expert chef may have trouble articulating just how this dish is made. “Well, you take a bit of this and a dash of that—not too much—and cook until done.”
Chef Claude is not being deliberately obtuse; he knows what “cook until done” means. He knows the subtle difference between just enough and “too much” depending on the humidity, where the meat was purchased, and how fresh the vegetables are.
It’s often difficult for experts to explain their actions to a fine level of detail; many of their responses are so well practiced that they become preconscious actions. Their vast experience is mined by nonverbal, preconscious areas of the brain, which makes it hard for us to observe and hard for them to articulate.
It’s hard to articulate expertise.
When experts do their thing, it appears almost magical to the rest of us—strange incantations, insight that seems to appear out of nowhere, and a seemingly uncanny ability to know the right answer when the rest of us aren’t even all that sure about the question.
It’s not magic, of course, but the way that experts perceive the world, how they problem solve, the mental models they use, and so on, are all markedly different from nonexperts.
A novice cook, on the other hand, coming home after a long day at the office is probably not even interested in the subtle nuances of humidity and parsnips. The novice wants to know exactly how much saffron to put in the recipe (not just because saffron is ridiculously expensive).
The novice wants to know exactly how long to set the timer on the oven given the weight of the meat, and so on. It’s not that the novice is being pedantic or stupid; it’s just that novices need clear, context-free rules by which they can operate, just as the expert would be rendered ineffective if he were constrained to operate under those same rules.
Novices and experts are fundamentally different. They see the world in different ways, and they react in different ways. Let’s look at the details.