Pragmatic Thinking and Learning

Home > Other > Pragmatic Thinking and Learning > Page 5
Pragmatic Thinking and Learning Page 5

by The Pragmatic Programmers


  40

  Work to Rule

  In industries or situations where one is not allowed a full-

  blown strike, a work slowdown is often used as a means of

  demonstration.

  Often this is called work to rule or malicious obedience,

  and the idea is that the employees do exactly what their

  job description calls for—no more, no less—and follow the

  rule book to the letter.

  The result is massive delays and confusion—and an effec-

  tive labor demonstration. No one with expertise in the real

  world follows the rules to the letter; doing so is demonstra-

  bly inefficient.

  According to Benner (in From Novice to Expert: Excellence

  and Power in Clinical Nursing Practice [Ben01]), “Prac-

  tices can never be completely objectified or formalized

  because they must ever be worked out anew in particu-

  lar relationships and in real time.”

  all developers the same, regardless of ability. This does a disser-

  vice to both novices and experts (and ignores the reality that there

  is anywhere from a 20:1 to 40:1 difference in productivity among

  developers, depending on whose study you believe).9

  TIP 2

  Use rules for novices, intuition for experts.

  The journey from novice to expert involves more than just rules

  and intuition, of course. Many characteristics change as you move

  up the skill levels. But the three most important changes along the

  way are the following:10

  • Moving away from reliance on rules to intuition

  9.

  In 1968, a difference of 10:1 in productivity among programmers was noted

  in Exploratory Experimental Studies Comparing Online and Offline [Sac68]. The gulf seems to have widened since then.

  10. Identified in From Novice to Expert: Excellence and Power in Clinical Nursing Practice [Ben01]; more on this landmark book in just a bit.

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  DREYFUS AT WORK: HERDING RACEHORSES AND RACING SHEEP

  41

  Figure 2.3: Dreyfus model of skill acquisition

  • A change in perception, where a problem is no longer a collec-

  tion of equally relevant bits but a complete and unique whole

  where only certain bits are relevant

  • Finally, a change from being a detached observer of the prob-

  lem to an involved part of the system itself

  This is the progression from novice to expert, away from detached

  and absolute rules and into intuition and (remember systems

  thinking?) eventually part of the system itself (see Figure 2.3).

  The Sad Fact of Skill Distribution

  Now at this point you’re probably thinking that the great bulk of

  people fall smack in the middle—that the Dreyfus model follows a

  standard distribution, which is a typical bell curve.

  It does not.

  Sadly, studies seem to indicate that most

  people, for most skills, for most of their Most people are

  lives, never get any higher than the second advanced beginners.

  stage, advanced beginner, “performing the

  tasks they need and learning new tasks as the need arises but

  never acquiring a more broad-based, conceptual understanding of

  the task environment.”11 A more accurate distribution is shown in

  Figure 2.4, on the following page.

  Anecdotal evidence for the phenomenon abounds, from the rise of

  copy-and-paste coding (now using Google as part of the IDE) to the

  widespread misapplication of software design patterns.

  11. Described in Standards for Online Communication [HS97].

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  DREYFUS AT WORK: HERDING RACEHORSES AND RACING SHEEP

  42

  Figure 2.4: Skill distribution

  Also, metacognitive abilities, or the ability of being self-aware,

  tends to be possible only at the higher skill levels. Unfortunately,

  this means practitioners at the lower skill levels have a marked

  tendency to overestimate their own abilities—by as much as 50

  percent, as it turns out. According to a study in Unskilled and

  Unaware of It: How Difficulties in Recognizing One’s Own Incom-

  petence Lead to Inflated Self-Assessments [KD99], the only path to

  a more correct self-assessment is to improve the individual’s skill

  level, which in turn increases metacognitive ability.

  You may see this referred to as second-order incompetence, not

  knowing just how much it is that you don’t know. The beginner

  is confident despite the odds; the expert will be far more cau-

  tious when the going gets weird. Experts will show much more

  self-doubt.

  TIP 3

  Know what you don’t know.

  Unfortunately, we’ll always have more advanced beginners than

  experts. But even though it is weighted at the bottom, it’s still a

  distribution. If you’re lucky enough to have an expert on your team,

  you need to accommodate them. Similarly, you need to accommo-

  date the few novices, the many advanced beginners, and the small

  but powerful number of competent and proficient practitioners.

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  USING THE DREYFUS MODEL EFFECTIVELY

  43

  Expert != Teacher

  Experts aren’t always the best teachers. Teaching is an ex-

  pertise in its own right; just because you are expert in some

  subject is no guarantee that you can teach it to others.

  Also, given the phenomenon that experts are often unable

  to articulate why they reached a particular decision, you

  may find that someone at a competent level might be in

  a better position to teach a novice than an expert would

  be. When pairing or mentoring within the team, you might

  try using mentors who are closer in skill level to the trainee.

  The hallmark of the expert is their use of

  intuition and the ability to recognize pat- Intuition and pattern

  terns in context. That’s not to say that matching replace

  novices have zero intuition or that com- explicit knowledge.

  petents can’t recognize patterns at all but

  that the expert’s intuition and pattern recognition now take the

  place of explicit knowledge.

  This transition from the novice’s context-free rules to the expert’s

  context-dependent intuition is one of the most interesting parts of

  the Dreyfus model; so our goal, for most of the rest of this book,

  is to see how we might better harness intuition and get better at

  recognizing and applying patterns.12

  2.4 Using the Dreyfus Model Effectively

  By the late 1970s or so, the nursing profession was in dire straits.

  In a nutshell, these were their problems, which I’ve drawn from

  several case studies and narratives:13

  • Nurses themselves were often disregarded as a mere commod-

  ity; they just carried out the highly trained doctor’s orders and

 
; weren’t expected to have any input on patient care.

  12. That’s patterns in the usual English sense, not software design patterns.

  13. Described in From Novice to Expert: Excellence and Power in Clinical Nursing Practice [Ben01].

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  USING THE DREYFUS MODEL EFFECTIVELY

  44

  Ten Years to Expertise?

  So, you want to be an expert? You need to budget

  about ten years of effort, regardless of the subject area.

  Researchers∗ have studied chess playing, music composi-

  tion, painting, piano playing, swimming, tennis, and other

  skills and disciplines. In virtually every case, from Mozart to

  the Beatles, you find evidence of a minimum of a decade

  of hard work before world-class expertise shows up.

  The Beatles, for instance, took the world by storm in 1964

  with a landmark appearance on the Ed Sullivan Show. Their

  first critically successful album, Sgt. Pepper’s Lonely Hearts

  Club Band, was released shortly after, in 1967. But the band

  didn’t just magically form for a tour in 1964—they had been

  playing in clubs since 1957. Ten years before Sgt. Pepper’s.

  And hard work it is—merely working at a subject for ten

  years isn’t enough. You need to practice. Deliberate prac-

  tice, according to noted cognitive scientist Dr. K. Anderson

  Ericsson, requires four conditions:

  • You need a well-defined task.

  • The task needs to be appropriately

  difficult—challenging but doable.

  • The environment needs to supply informative

  feedback that you can act on.

  • It should also provide opportunities for repetition and

  correction of errors.

  Do that sort of practice, steadily, for ten years, and you’ve

  got it made. As we noted in The Pragmatic Programmer:

  From Journeyman to Master [HT00], even Chaucer com-

  plained that “the lyfe so short, the craft so long to lerne.”

  However, there is some good news. Once you become an

  expert in one field, it becomes much easier to gain exper-

  tise in another. At least you already have the acquisition

  skills and model-building abilities in place.

  Thanks to June Kim for the reference to Dr. Ericsson.

  ∗.

  See The Complete Problem Solver [Hay81] and Developing Talent in

  Young People [BS85].

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  USING THE DREYFUS MODEL EFFECTIVELY

  45

  • Because of pay-scale inequities, expert nurses were leaving

  direct patient care in droves. There was more money to be

  made in management, teaching, or the lecture circuit.

  • Nursing education began to falter; many thought that formal

  models of practice were the best way to teach. An overreliance

  on formal methods and tools eroded real experience in

  practice.

  • Finally, they had lost sight of the real goal—patient out-

  comes. Despite whatever process and methodology you

  followed, despite who worked on this patient, what was the

  outcome? Did the patient live and thrive? Or not?

  If you read that list carefully, you may have noticed that these

  problems sound eerily familiar. Allow me to slightly edit this bullet

  list to reflect software development:

  • Coders themselves were often disregarded as a mere commod-

  ity; they just carried out the highly trained analysts’ orders

  and weren’t expected to have any input on the design and

  architecture of the project.

  • Because of pay-scale inequities, expert programmers were

  leaving hands-on coding in droves. There was more money

  to be made in management, teaching, or the lecture circuit.

  • Software engineering education began to falter; many thought

  that formal models of practice were the best way to teach. An

  overreliance on formal methods and tools eroded real experi-

  ence in practice.

  • Finally, they had lost sight of the real goal—project out-

  comes. Despite whatever process and methodology you fol-

  lowed, despite who worked on this project, what was the out-

  come? Did the project succeed and thrive? Or not?

  Huh. It sounds a little more familiar that way; indeed, these are

  serious problems that our industry now faces.

  Back in the early 1980s, nursing professionals began to apply the

  lessons of the Dreyfus model to their industry with remarkable

  results. Dr. Benner’s landmark book exposed and explained the

  Dreyfus model so that all involved parties had a better understand-

  ing of their own skills and roles and those of their co-workers. It

  laid out specific guidelines to try to improve the profession as a

  whole.

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  USING THE DREYFUS MODEL EFFECTIVELY

  46

  Over the course of the next twenty-five years or so, Benner

  and subsequent authors and researchers turned their profession

  around.

  So in the best spirit of R&D (which stands for “Rip off and Dupli-

  cate”), we can borrow many lessons from their work and apply them

  to software development. Let’s take a closer look at how they did it

  and what we can do in our own profession.

  Accepting Responsibility

  Twenty-five years ago, nurses were expected to follow orders with-

  out question, even vehemently—and proudly—maintaining that

  they “never veer from doctor’s orders,” despite obvious changes in

  patients’ needs or conditions.

  This attitude was enculturated in part by the doctors, who weren’t

  in a position to see the constant, low-level changes in patients’ con-

  ditions, and in part by the nurses themselves, who willingly abdi-

  cated responsibility for decision making in the course of practice

  to the authority of the doctors. It was professionally safer for them

  that way, and indeed there is some psychological basis for their

  position.

  In one experiment,14 a researcher calls a hospital ward posing as

  a doctor and orders the nurse to give a particular medication to a

  given patient. The order was rigged to trigger several alarm bells:

  • The prescription was given over the phone, not in writing.

  • The particular medication was not on the ward’s usual

  approved list.

  • According to labels on the medication itself, the prescribed

  dosage was double the maximum amount.

  • The “doctor” on the phone was a stranger, not known to the

  nurse or staff.

  But despite these clear warning signs, 95 percent of the nurses fell

  for it and went straight to the medicine cabinet, en route to the

  patient’s room to dose ’em up.

  14. Described in Influence: Science and Practice [Cia01].

  Report erratum

  Prepared exclus
ively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  USING THE DREYFUS MODEL EFFECTIVELY

  47

  Fortunately, they were stopped by an accomplice who explained

  the experiment—and stopped them from carrying out the bogus

  order.15

  We see very much the same problems with programmers and

  their project managers or project architects. Feedback from coders

  to those who define architecture, requirements, and even busi-

  ness process has traditionally been either lacking entirely, brutally

  rejected, or simply lost in the noise of the project. Programmers

  often implement something they know is wrong, ignoring the obvi-

  ous warning signs much as the nurses did in this example. Agile

  methods help promote feedback from all members of the team and

  utilize it effectively, but that’s only half the battle.

  Individual nurses had to accept respon-

  sibility in order to make in-the-field deci- “I was just fol owing

  sions according to the unfolding dynamics orders!” doesn’t work.

  of a particular situation; individual pro-

  grammers must accept the same responsibility. The Nuremberg-

  style defense “I was only following orders” did not work in WWII,

  it did not work for the nursing profession, and it does not work in

  software development.

  But in order to accomplish this change in attitude, we do need to

  raise the bar. Advanced beginners aren’t capable of making these

  sorts of decision by themselves. We must take the advanced begin-

  ners we have and help them raise their skill levels to competent.

  A major way to help achieve that is to have good exemplars in the

  environment; people are natural mimics (see Section 7.4, Learn

  About the Inner Game, on page 203). We learn best by example. In

  fact, if you have children, you may have noticed that they rarely do

  as you say but will always copy what you do.

  TIP 4

  Learn by watching and imitating.

  15. This was an older study; don’t go calling the hospital up now with bogus orders, or the feds may well come a knockin’.

  Report erratum

  Prepared exclusively for Jose Luis Loya

  gggggggggggggggg

  this copy is (P2.0 printing, January 2009)

  USING THE DREYFUS MODEL EFFECTIVELY

  48

  No Expertise Without Experience

  Jazz is an art form that relies heavily on real-world expe-

  rience. You may learn all the chords and techniques

 

‹ Prev