Expert-induced amnesia and the Dreyfus model of learning

Nat Pryce
Learning, Teaching, Pairing
2 min readSep 29, 2017

In the book Mind over Machine, Herbert & Stuart Dreyfus describe how people gain skills in five stages of increasing expertise.

  1. Novice: follows context-independent rules
  2. Advanced Beginner: recognises situational context & follows rules that describe what to do in different contexts
  3. Competence: can prioritise within a situation and create a plan of how to act by selecting from learned rules.
  4. Proficiency: intuitively understands the situation by matching against prior experience; acts by selecting what to do from many learned rules
  5. Expertise: acts intuitively, matching the current situation and possible actions against prior experience, and picking the first action that satisfices.

Experts do not follow rules but match the current situation against their previous experience of situations, actions and outcomes. They work arationally — neither by rational rule following nor irrationally.

Experts act holistically (reacting to the entire situation), not analytically (breaking things down into independent parts and rules by which the parts relate to one another)

Experts cannot describe the rules they follow, because they do not follow rules.

What can we learn from this with respect to collaboration between senior and junior programmers?

  • Don’t expect senior developers to be able to explain the reasons behind all their decisions. In many cases, they will not have reasoned towards their decision, but matched the current situation against all their previous experience.
  • If senior developers do try to explain what they do in terms of rules that can be followed, they will, at best, bring junior developers up to the level of Competence.
  • Senior developers cannot expect junior developers not to work by following rules and ignoring context early in their career. Experience will lead to a more nuanced approach to their work and improved ability to adapt their approach to the wider context.
  • It’s best to expose junior programmers to as many actual experiences and activities as possible, especially those that cannot easily be planned analytically. For example, include junior programmers when making design decisions, interacting with stakeholders, discussing and making engineering trade-offs, etc.

The Dreyfus model of skill acquisition is summarised in the the paper Dreyfus, S. The Five-Stage Model of Adult Skill Acquisition. Bulletin of Science Technology & Society 2004 24: 177.

--

--