Rules, Concepts and the Dreyfus Model
[textile]A friend of mine, Kerry Jones, recently drew my attention to "an article by Dave 'pragmatic' Thomas":http://pragdave.pragprog.com/pragdave/2004/04/end_of_the_know.html... Dave references the 'Dreyfus Model of Skills Acquisition', a model used in training medical professionals.
There are five levels, from Novice to Expert:
* Advanced Beginner
(I found this "PDF on the Dreyfus Model":http://hedc2.otago.ac.nz/meg/Educational-Support/Resources/Faculty-of-Medicine-Curriculum-Review-Conference-Documents/mainColumnParagraphs/010/document/Dreyfus.pdf useful in better understanding the levels)
...high-quality experience turns us from a novice to something approaching an expert.
One thing that Dave observed really hit home for me...
We process information in a qualitatively different way in the two states: novices need rules, experts need concepts and contexts. Novices need external feedback, experts generate their own. Stuff that works when teaching a novice drives an expert up the wall, and vice-versa. Experts are often the worst teachers of novices.
This has helped me to better understand some of the long-standing arguments in the community, such as "automate all tests vs. you can't automate all tests" or "follow best practices vs. there are only good practices in context". I've believed for a long time that these arguments weren't about the subjects being discussed but actually about two different philosophies... "commandments vs. concepts".
I now see it as being about targeting two different audiences: Novice-to-Competent or Competent-to-Expert.
So how do I provide rules to the novices without annoying the experts whilst providing concepts to experts without annoying the novices? Hmmm...