Software Craftsmanship

Preview:

Citation preview

Software Craftsmanship

Roundtable DiscussionUtah Code Camp

Mike ClementSpring 2011

mike@softwareontheside.com@mdclement

@utahsc

Literature Roots (1999 and 2001)

Uncle Bob at Agile 2008

CRAFTSMANSHIP OVER CRAP!

August 2008

Agile Manifesto

We are uncovering better ways of developingsoftware by doing it and helping others do it.

Through this work we have come to value:

Individuals and interactions over processes and toolsWorking software over comprehensive documentation

Customer collaboration over contract negotiationResponding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Software Craftsmanship Manifesto (March 2009)

As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the

craft. Through this work we have come to value:

Not only working software, but also well-crafted softwareNot only responding to change, but also steadily adding valueNot only individuals and interactions, but also a community of

professionalsNot only customer collaboration, but also productive partnerships

That is, in pursuit of the items on the left we have found the items on the right to be indispensable.

October 2009

http://apprenticeship-patterns.labs.oreilly.com/

Released for free under Creative Commons license!

Companies based on SC principles

Values

• “growth mindset”• Adapting and changing• Pragmatic rather than dogmatic• Share over hoarding/scarcity• Experiment, can be wrong• Taking control for own destiny• Inclusiveness• Skill-centric over process-centric• “situated learning”

Katas

• Japanese word describing detailed choreographed patterns of movements practiced either solo or in pairs.

• A kata is a coding exercise that performed repeatedly and perfected.

• http://codekata.pragprog.com/• http://www.vimeo.com/2499161• http://katas.softwarecraftsmanship.org/

Utah Software Craftsmanship Group

• Second Tuesday• Meeting Format– 2 or 3 Lightning Talks (5-10 minutes each)– Reading Discussion (30 minutes)– Kata (45 minutes)

• https://groups.google.com/forum/#!forum/ut-software-craftsmanship

• Twitter: @utahsc

Software Craftsmanship Manifesto

As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the

craft. Through this work we have come to value:

Not only working software, but also well-crafted softwareNot only responding to change, but also steadily adding valueNot only individuals and interactions, but also a community of

professionalsNot only customer collaboration, but also productive partnerships

That is, in pursuit of the items on the left we have found the items on the right to be indispensable.