Inspired by an article at InfoQ (http://www.infoq.com/articles/better-best-practices) I discovered an interesting model, which explores the nature of learning in an interesting way: The Dreyfus Model for Skills Acquisition.
In essence it describes how people acquire skills over time, what supports them best in their progress and how they behave with their growing knowledge. Five levels are described:
- Novice – Needs to be told exactly what to do. Has very little understanding of the context to base decisions on. Wants frequent quick wins, needs regular feedback and reassuring messages. Learns best by abstract and context-free rules.
- Advanced beginner – Is familiar with the basic steps but still needs guidelines to follow. This is the stage at which a learner is most dangerous – he knows enough to think he knows a lot. Uses more sphisticated rules than a beginner. Treats all aspects with equal importance.
- Competent – The learner begins to understand his tasks and starts seeing longer term consequences. He can figure out a sequence of tasks in order to accomplish a goal. Learns best when given hierarchical goal-based targets accompanied by some rules. *
- Proficient – An ability to analyse a situation and seperate what is most important develops. The learner is experienced enough that solutions start to just appear and are seen in the wider context. The person can rely on his judgements. He follows higher-leveled maxims. Decision-making feels less labourous. Searches inspiration, loves challenges and is open to constant learning.
- Expert – Works mainly on intuition and is rarely wrong. Involves critical reflection on his intuitions, rather than goal-based planning. Loves to meet and exchange thoughts with other experts. Best practices are seen as a necessary evil. Does not rely on rules and maxims. Has a vision of what is possible.
* Most people don’t get beyond the competent level at most skills. Progression from Novice to Competent is linear. The model points out that one can become competent at something just by doing enough repetitions, but learners who want to reach beyond this point need to develop and maintain an active will to become proficient. It takes many years of dedicated effort to become an expert in a particular field.
Here you will find an application of the Dreyfus Model to software development with Ruby on Rails: http://pragmaticstudio.com/dreyfus