The Journey towards Software Craftsmanship · The Journey towards Software Craftsmanship Sebastian...
Transcript of The Journey towards Software Craftsmanship · The Journey towards Software Craftsmanship Sebastian...
The
Journey towards
Software Craftsmanship
Sebastian Heglmeier @sebheglmeier Candlelightdoener www.improuv.com
©2015 improuv GmbH, Brecherspitzstr. 8, 81541 München
Often heard (at work, at conferences, in the beergarden)
I am the only one who writes
clean code
Why don‘t the others care?
WTF Ein Mal mit Profis
arbeiten!
Software Craftsmanship
The SW Craftsmanship Manifesto from
The next 45 minutes: an interactive exploration!
• An awesome project
-- ...what makes a project really awesome
• 7 Pillars of an agile Team
-- what‘s important for a successful project?
• Changing things
-- on which levels can you improve on your journey .. and how?
What makes a project really awesome?
Handout
The 7 Pillars of a really awesome project
Product Sense
Confidence
Focus on Business
Value
Collaboration
Supportive Culture
Technical Excellence
Self Improvement
Handout
The 7 Pillars of an agile Team
Product Sense
Confidence
Focus on Business
Value
Collaboration
Supportive Culture
Technical Excellence
Self Improvement
Brian Marick, Chet Hendrickson, Ron Jeffries, Uncle Bob, James Shore
Handout
Handout
Handout
The 7 Pillars of an agile Team
Product Sense
Confidence
Focus on Business
Value
Collaboration
Supportive Culture
Technical Excellence
Self Improvement
Brian Marick, Chet Hendrickson, Ron Jeffries, Uncle Bob, James Shore
Handout
7 Pillars - Self Assessment
A moment to learn, a lifetime to master
[0] Questioning - not sure what this is [1] Learning - I know it but have no 1st hand experience [2] Practicing - I actively use it. I can reference more than one resource I‘ve used to learn this skill. I used it within the last 30 days. [3] Journeying - Used skill in multiple environments. Peers from 2 different environments recognize person‘s competence. [4] Mastering - Unquestioned competence. Can explain underlying forces. Practiced skill along side other experts.
Brian Marick
How to help a team become Software Craftsmen?
Ways to improve
What can you do for
yourself?
What can the whole Team
do?
Where can your company
help you?
Spreading the Wisdom – the Concept of „Ba“
Knowledge • tacit (stillschweigend): not easy to express, hard to formalize • explicit: can be expressed in words & numbers, can be shared
Socialization Combination
Internalization
Externalization
Conversion Pattern • Leads to new knowledge
Ba • The place which makes a particular
conversion happen
Kitaro Nishida Shimizu
Nonaka, Konno
4 conversion patterns from tacit to explicit knowledge
Handout
So...
Write only good code
The sky is the limit
Find a community, find a mentor
Share & teach others
Know your unknowns
Further reading
• Brian Marick – The 7 pillars of an Agile team and Self Assessment Spider Diagram
• A try to dig deeper into the 7 Pillars
• Software Craftsmanship Manifesto
• Ikujiro Nonaka, Noburo Konno: The Concept of „Ba“
• Softwerkskammer
• European Conferences 2016