Many Geeks underestimate the power of collaboration and all of the skills they need to become experts in their craft. They have heard of "Agile" and sometimes do something that smells like it. Software development is about managing complex problems over some period of time to produce something that serves people: the end users, the stakeholders, our colleagues, and ourselves.
Getting better at it - becoming an expert - is not just about obtaining and applying knowledge.
We will discuss why Agility, in its deepest form, contributes to the growth of Expertise and the service of people.
13. * http://litemind.com/expert-roadmap/
Dreyfus Model of
Skill Acquisition*
Rules Detached
Observer
Considers
Everything
Intuition
Relevant
Focus
Part of
System
Novice
Advanced Beginner
Competent
Proficient
Expert
14. * http://litemind.com/expert-roadmap/
Dreyfus Model of
Skill Acquisition*
Rules Detached
Observer
Considers
Everything
Intuition
Relevant
Focus
Part of
System
Novice
Advanced Beginner
Competent
Proficient
Expert
15. * http://litemind.com/expert-roadmap/
Dreyfus Model of
Skill Acquisition*
Rules Detached
Observer
Considers
Everything
Intuition
Relevant
Focus
Part of
System
Novice
Advanced Beginner
Competent
Proficient
Expert
16. * http://litemind.com/expert-roadmap/
Dreyfus Model of
Skill Acquisition*
Rules Detached
Observer
Considers
Everything
Intuition
Relevant
Focus
Part of
System
Novice
Advanced Beginner
Competent
Proficient
Expert
17. Knowledge vs. Skill*
“There’s much more to mastering a skill than
just acquiring more knowledge. Just like adults
are not simply bigger children, experts are not
only smarter, more knowledgeable or faster than
novices. The differences can be found at a more
fundamental level, such as in how they perceive
the world and approach problems.”
- Luciano Passuello
* http://litemind.com/expert-roadmap/
18. Knowledge vs. Skill*
“There’s much more to mastering a skill than
just acquiring more knowledge. Just like adults
are not simply bigger children, experts are not
only smarter, more knowledgeable or faster than
novices. The differences can be found at a more
fundamental level, such as in how they perceive
the world and approach problems.”
- Luciano Passuello
* http://litemind.com/expert-roadmap/
** https://www.amazon.com/Reflective-Practitioner-Professionals-Think-Action/dp/0465068782
19. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
20. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
21. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
22. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
Have conceptual models in which to operate
23. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
Have conceptual models in which to operate
Have conceptual framework in which to adjust
24. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
Have conceptual models in which to operate
Have conceptual framework in which to adjust
Intuitively identify and solve problems... it’s simple
25. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
Have conceptual models in which to operate
Have conceptual framework in which to adjust
Intuitively identify and solve problems... it’s simple
Overwhelmed by Complexity
26. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
Have conceptual models in which to operate
Have conceptual framework in which to adjust
Intuitively identify and solve problems... it’s simple
Overwhelmed by Complexity
Manage and Reduce Complexity
27. Cost of Advanced Beginners
Novice
Advanced Beginner
Competent
Proficient
Expert
Clueless
Mostly “right”
Make it run... right?
All of us are Novices at some things...
Some may be experts in others...
Usually somewhere in between
Tools
TechniquesSkills
DomainsLanguages
Follow rules on well-defined tasks
Complete similar tasks following rules
Have conceptual models in which to operate
Have conceptual framework in which to adjust
Intuitively identify and solve problems... it’s simple
Overwhelmed by Complexity
Manage and Reduce Complexity
Unwittingly Introduce Complexity
32. It is All About Speed
• Well-defined functionality in well-defined
domain
33. It is All About Speed
• Well-defined functionality in well-defined
domain
• Well-defined technology stack appropriate
for delivery medium
34. It is All About Speed
• Well-defined functionality in well-defined
domain
• Well-defined technology stack appropriate
for delivery medium
• Put it in front of users, hope they are happy…
if they are not, move on
35. It is All About Speed
• Well-defined functionality in well-defined
domain
• Well-defined technology stack appropriate
for delivery medium
• Put it in front of users, hope they are happy…
if they are not, move on
• Can become
➡ Advanced Beginner in months
➡ Proficient in 2-3 years
➡ Expert in < 5 years? (10,000 hours)
39. It is a Marathon
• Leveraging expertise in changing domain
40. It is a Marathon
• Leveraging expertise in changing domain
• Technology needs to be helpful, not fleeting,
and forward moving
41. It is a Marathon
• Leveraging expertise in changing domain
• Technology needs to be helpful, not fleeting,
and forward moving
• If people are not happy, business might stop
42. It is a Marathon
• Leveraging expertise in changing domain
• Technology needs to be helpful, not fleeting,
and forward moving
• If people are not happy, business might stop
• Domain and Technical Skills both really
important
• Green fields are hard to find
• Typically deep domain model, not just UI
• Many communication challenges
• Learning Environment
43. Short-term vs. Long-term
“code is read more often than it is written”*
2-4x 4-10x 10-100x
* attributed to many… if you think you are the first to say it, please correct Google
InherentComplexity
Longevity
Time spent reading code vs. writing code
Code Read vs. Written
44. Benefits of Reflective Expertise
“code is read more often than it is written”*
10-100x
4-10x
1x
TimetoGrasp&
EffectivelyExpress
2-4x
1-2x
2-4x 4-10x 10-100x
Code Read vs. Written
InherentComplexity
Longevity
* attributed to many… if you think you are the first to say it, please correct Google
Novice
Adv. Beginner
Competent
Proficient
Expert
45. Costs of Less Skilled Producers
* https://en.wikipedia.org/wiki/Technical_debt (paraphrased)
Technical debt is a metaphor referring to
the eventual consequences of any
development within a codebase. The
debt can be thought of as work that
needs to be done before a particular job
can be considered complete or proper. If
the debt is not repaid, then it will keep
on accumulating “interest,” making it
hard to implement changes later on.
“don’t confuse speed/motion with progress”
46. 1x
10-100x
TechnicalDebt
IntroductionRate
4-10x
2-4x
1-2x
Costs of Less Skilled Producers
“don’t confuse speed/motion with progress”*
IntroducedComplexity
Longevity
Novice
Adv. Beginner
Competent
Proficient
Expert
* attributed to many… if you think you are the first to say it, please correct Google
47. 1x
10-100x
TechnicalDebt
IntroductionRate
4-10x
2-4x
1-2x
Costs of Less Skilled Producers
“don’t confuse speed/motion with progress”*
IntroducedComplexity
Longevity
Novice
Adv. Beginner
Competent
Proficient
Expert
* attributed to many… if you think you are the first to say it, please correct Google
48. Complexity
Longevity
Novice
Adv. Beginner
Competent
Proficient
Expert
Hitting the Target w/Software
Website/App
promoting a
new product
Impressive
prototype
Decision
Support system
for experts in a
changing domain
Record-keeping
system subject to
changing regulations
Election results
reporting
system
Simple
Website
MyFirst
TwilioApp
49. Complexity
Longevity
Novice
Adv. Beginner
Competent
Proficient
Expert
Hitting the Target w/Software
Website/App
promoting a
new product
Impressive
prototype
Decision
Support system
for experts in a
changing domain
Record-keeping
system subject to
changing regulations
Election results
reporting
system
Turning a
Prototype that
was shipped into
a Software Asset
Simple
Website
MyFirst
TwilioApp
50. Complexity
Longevity
Novice
Adv. Beginner
Competent
Proficient
Expert
Hitting the Target w/Software
Website/App
promoting a
new product
Impressive
prototype
Decision
Support system
for experts in a
changing domain
Record-keeping
system subject to
changing regulations
Election results
reporting
system
Turning a system
built with a
Consumable
mindset into a
Software Asset
Turning a
Prototype that
was shipped into
a Software Asset
Simple
Website
MyFirst
TwilioApp
51. Complexity
Longevity
Novice
Adv. Beginner
Competent
Proficient
Expert
Hitting the Target w/Software
Website/App
promoting a
new product
Impressive
prototype
Decision
Support system
for experts in a
changing domain
Record-keeping
system subject to
changing regulations
Election results
reporting
system
Turning a system
built with a
Consumable
mindset into a
Software Asset
Turning a System
built by less
skilled producers
into a Software
Asset
Turning a
Prototype that
was shipped into
a Software Asset
Simple
Website
MyFirst
TwilioApp
55. The
Uncomfortable Reality
• “We only hire smart people”
• Are all of your people
really experts?
• Compared to the guys who
wrote the Agile Manifesto?
56. The
Uncomfortable Reality
• “We only hire smart people”
• Are all of your people
really experts?
• Compared to the guys who
wrote the Agile Manifesto?
• Experts are hard to find, cost lots of
money, and don’t like simple tasks
(or cleaning up others messes)
57. The
Uncomfortable Reality
• “We only hire smart people”
• Are all of your people
really experts?
• Compared to the guys who
wrote the Agile Manifesto?
• Experts are hard to find, cost lots of
money, and don’t like simple tasks
(or cleaning up others messes)
• To a manager (novice?) everyone
who knows more than him looks
like an expert
58. The
Uncomfortable Reality
• “We only hire smart people”
• Are all of your people
really experts?
• Compared to the guys who
wrote the Agile Manifesto?
• Experts are hard to find, cost lots of
money, and don’t like simple tasks
(or cleaning up others messes)
• To a manager (novice?) everyone
who knows more than him looks
like an expert
• To an advanced
beginner, everyone
who knows less
than him looks like
an idiot
62. The Good News
• We have learned “best practices”
• Nearly anyone can do them
(or learn to do them)
63. The Good News
• We have learned “best practices”
• Nearly anyone can do them
(or learn to do them)
• Doing them will
64. The Good News
• We have learned “best practices”
• Nearly anyone can do them
(or learn to do them)
• Doing them will
• Make them better
65. The Good News
• We have learned “best practices”
• Nearly anyone can do them
(or learn to do them)
• Doing them will
• Make them better
• Reduce your risk
66. The Good News
• We have learned “best practices”
• Nearly anyone can do them
(or learn to do them)
• Doing them will
• Make them better
• Reduce your risk
• Not all tasks, even on a complex
system, require an expert
81. SCRUM vs. eXtreme
Surface vs. Deep
• SCRUM certification means you sat
through a class
• Tells you to have feedback loops
82. SCRUM vs. eXtreme
Surface vs. Deep
• SCRUM certification means you sat
through a class
• Tells you to have feedback loops
• No programming approach
83. SCRUM vs. eXtreme
Surface vs. Deep
• SCRUM certification means you sat
through a class
• Tells you to have feedback loops
• No programming approach
• eXtreme Programming more deeply
addresses approach to programming…
84. SCRUM vs. eXtreme
Surface vs. Deep
• SCRUM certification means you sat
through a class
• Tells you to have feedback loops
• No programming approach
• eXtreme Programming more deeply
addresses approach to programming…
• …and makes you a better programmer?
85. Complexity
Longevity
Benefits of Deep Agility
Customer Feedback
Continuous Integration
Test-Driven
Collective Code Ownership
Pair Programming
Iteration Planning
Continuous Refactoring
More depth puts in
more checks against
introduced complexity
and more results that
reduce business riskStand-up Meetings
86. Complexity
Longevity
Benefits of Deep Agility
Customer Feedback
Continuous Integration
Test-Driven
Collective Code Ownership
Pair Programming
Iteration Planning
Continuous Refactoring
More depth puts in
more checks against
introduced complexity
and more results that
reduce business riskStand-up Meetings
88. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
89. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
90. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
• Make it run... fast enough?… Ship it.
91. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
• Make it run... fast enough?… Ship it.
• Make it right?
92. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
• Make it run... fast enough?… Ship it.
• Make it right?
• Limited by expertise of most skilled participant
93. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
• Make it run... fast enough?… Ship it.
• Make it right?
• Limited by expertise of most skilled participant
• Can increase by collaboration
94. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
• Make it run... fast enough?… Ship it.
• Make it right?
• Limited by expertise of most skilled participant
• Can increase by collaboration
• Two novices don’t produce the quality of
experts by pairing
95. Reality of Internal Quality
• Easy for anyone to slip in the name of expediency
• Make it run. Make it right. Make it fast. OR
• Make it run... fast enough?… Ship it.
• Make it right?
• Limited by expertise of most skilled participant
• Can increase by collaboration
• Two novices don’t produce the quality of
experts by pairing
Two novices don’t
produce the quality of
experts by pairing!
96. Getting Past Advanced Beginner
“Proficient practitioners can take full
advantage of the reflection and feedback
that is core to agile methods.”*
But how do you get there?
- Individual exercise?
- Team work?
*Pragmatic Thinking & Learning,
Andrew Hunt, p.35
97. Acceptable Methods to Ensure
Quality Code and Coders
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
98. Acceptable Methods to Ensure
Quality Code and Coders
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
99. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
100. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
101. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
Information
absorption
Visual—65%
Auditory—30%
Kinesthetic—5%
102. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
Information
absorption
Visual—65%
Auditory—30%
Kinesthetic—5%
Feedback
Loop
103. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
Information
absorption
Visual—65%
Auditory—30%
Kinesthetic—5%
Feedback
Loop
Reading
code
104. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
Information
absorption
Visual—65%
Auditory—30%
Kinesthetic—5%
Feedback
Loop
2 people on
email
Reading
code
105. Hot Communication &
High Skill Transfer
Pair Programming
Opportunistic Pairing
Pair Refactoring/Rewriting
Synchronous pull requests
Asynchronous pull requests
Hot
Communication
High Skill
Transfer
Low Skill
Transfer
Cold
Communication
* http://www.martinbauer.com/Articles/Open-Project-Management/Communication
Alistair Cockburn, “Agile Software Development”, Addison-Wesley 2002
Information
absorption
Visual—65%
Auditory—30%
Kinesthetic—5%
Feedback
Loop
Code out
loud!
2 people on
email
Reading
code
107. Novice
Adv. Beg
Competent
Proficient
Expert
Clean Code,
TDD, and
OO Thinking
moves toward
the “most
skilled” at a
rate you can
adjust
Language
Idioms and
strengths/
weaknesses
get shared
among
the
team
More skills
are
picked up by
including
specialists
in process and
observing
“tips and
tricks”
108. “Have cheap people do easy things under the CLOSE
supervision of someone who knows the difference”
- Ken Auer, 2010 SCNA talk “Lean Craftsmanship vs. Corporate Craftsmanship”
“Have advanced beginners do tasks for which the rules
they know are appropriate to the context and check their
work. Let them watch, and have discussions with,
someone who has the appropriate skills for the task
when the advanced beginner does not”
- Ken Auer, 2013 SCNA talk “Craftsmen Cannot Live on Stack Overflow and Github Alone”
To a Novice, an Advanced
Beginner looks like an Expert
119. Basic Rules for Building
Software Assets
Take this home with you… assess your team and tasks and how you are going about
managing inherent complexity and avoiding/reducing introduced complexity
120. Basic Rules for Building
Software Assets
• The Ratio of Experts-Novices should
change based on the nature of the project
Take this home with you… assess your team and tasks and how you are going about
managing inherent complexity and avoiding/reducing introduced complexity
121. Basic Rules for Building
Software Assets
• The Ratio of Experts-Novices should
change based on the nature of the project
• The Craftsmen-in-charge should oversee
Take this home with you… assess your team and tasks and how you are going about
managing inherent complexity and avoiding/reducing introduced complexity
122. Basic Rules for Building
Software Assets
• The Ratio of Experts-Novices should
change based on the nature of the project
• The Craftsmen-in-charge should oversee
• Very productive development
environment
Take this home with you… assess your team and tasks and how you are going about
managing inherent complexity and avoiding/reducing introduced complexity
123. Basic Rules for Building
Software Assets
• The Ratio of Experts-Novices should
change based on the nature of the project
• The Craftsmen-in-charge should oversee
• Very productive development
environment
• What tasks get done by which people
Take this home with you… assess your team and tasks and how you are going about
managing inherent complexity and avoiding/reducing introduced complexity
124. Basic Rules for Building
Software Assets
• The Ratio of Experts-Novices should
change based on the nature of the project
• The Craftsmen-in-charge should oversee
• Very productive development
environment
• What tasks get done by which people
• What form(s) of “two sets of eyes” is
appropriate in what contexts
Take this home with you… assess your team and tasks and how you are going about
managing inherent complexity and avoiding/reducing introduced complexity
128. Complexity
Longevity
Benefits of Agility + Expertise
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
129. Complexity
Longevity
Benefits of Agility + Expertise
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
“Spiking” a
New Feature
typically needs
proficient dev with
customer rep
feedback
130. Complexity
Longevity
Benefits of Agility + Expertise
New Feature
Walking
Skeleton: built in
test-driven fashion
by proficient dev
with pair
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
“Spiking” a
New Feature
typically needs
proficient dev with
customer rep
feedback
131. Complexity
Longevity
Benefits of Agility + Expertise
Fleshing Out
New Feature
can be done by
less experienced
test-driven pairs
New Feature
Walking
Skeleton: built in
test-driven fashion
by proficient dev
with pair
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
“Spiking” a
New Feature
typically needs
proficient dev with
customer rep
feedback
132. Complexity
Longevity
Benefits of Agility + Expertise
Standards and
Architecture
designed/enforced
by Craftsmen
Fleshing Out
New Feature
can be done by
less experienced
test-driven pairs
New Feature
Walking
Skeleton: built in
test-driven fashion
by proficient dev
with pair
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
“Spiking” a
New Feature
typically needs
proficient dev with
customer rep
feedback
133. Complexity
Longevity
Benefits of Agility + Expertise
Standards and
Architecture
designed/enforced
by Craftsmen
Fleshing Out
New Feature
can be done by
less experienced
test-driven pairs
New Feature
Walking
Skeleton: built in
test-driven fashion
by proficient dev
with pair
Debt Reduction
identified,
prioritized, and
attacked by
experienced pairs
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
“Spiking” a
New Feature
typically needs
proficient dev with
customer rep
feedback
134. Complexity
Longevity
Benefits of Agility + Expertise
Standards and
Architecture
designed/enforced
by Craftsmen
Fleshing Out
New Feature
can be done by
less experienced
test-driven pairs
New Feature
Walking
Skeleton: built in
test-driven fashion
by proficient dev
with pair
Well-defined
Maintenance Tasks
can be done by
“anyone” who has
learned in context
Debt Reduction
identified,
prioritized, and
attacked by
experienced pairs
Trivial Tasks
anyone can do
with Async Pull
Request
Prototype needs
highly skilled dev/
designer(s) with little
code review but
significant stakeholder
review
“Spiking” a
New Feature
typically needs
proficient dev with
customer rep
feedback
135. Basic Rules for Building
Software Craftsmen
Take this home with you… assess yourself and tasks and how you are going about giving
and gaining wisdom. Geeks who know that people matter are the smartest geeks.
136. Basic Rules for Building
Software Craftsmen
• Seek Hot Communication and High Skill
Transfer situations for yourself and others
Take this home with you… assess yourself and tasks and how you are going about giving
and gaining wisdom. Geeks who know that people matter are the smartest geeks.
137. Basic Rules for Building
Software Craftsmen
• Seek Hot Communication and High Skill
Transfer situations for yourself and others
• Be Hungry, Humble, and Smart
Take this home with you… assess yourself and tasks and how you are going about giving
and gaining wisdom. Geeks who know that people matter are the smartest geeks.
138. Basic Rules for Building
Software Craftsmen
• Seek Hot Communication and High Skill
Transfer situations for yourself and others
• Be Hungry, Humble, and Smart
“Knowledge makes arrogant, but love
edifies. If anyone supposes that he
knows anything, he has not yet known
as he ought to know”(1 Corinthians 8:1b-2a, NASB)
Take this home with you… assess yourself and tasks and how you are going about giving
and gaining wisdom. Geeks who know that people matter are the smartest geeks.
139. Basic Rules for Building
Software Craftsmen
• Seek Hot Communication and High Skill
Transfer situations for yourself and others
• Be Hungry, Humble, and Smart
“Knowledge makes arrogant, but love
edifies. If anyone supposes that he
knows anything, he has not yet known
as he ought to know”(1 Corinthians 8:1b-2a, NASB)
“When pride comes, then comes
dishonor, But with the humble is
wisdom.”(Proverbs 11:2, NASB)
Take this home with you… assess yourself and tasks and how you are going about giving
and gaining wisdom. Geeks who know that people matter are the smartest geeks.
140. Slides & References
• slides available at: http://www.slideshare.net/kauerrolemodel/the-
relationship-between-agility-and-expertise
• Dreyfus Model of Skill Acquisition
• http://en.wikipedia.org/wiki/Dreyfus_model_of_skill_acquisition
• http://1.usa.gov/1iOLuWC - Dreyfus, Stuart E.; Dreyfus,
Hubert L. (February 1980), A Five-Stage Model of the Mental
Activities Involved in Directed Skill Acquisition
• http://bit.ly/1fU3aLn - Benner, Patricia (2004),
Using the Dreyfus Model of Skill Acquisition to Describe and
Interpret Skill Acquisition and Clinical Judgment in Nursing
Practice and Education
• RoleModel’s Craftsmanship Levels: http://bit.ly/29bHHU9