dcarral / software-crafting

Slides & companion material to the talk “What is (not) Software Crafting?“

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

“What is (not) Software Crafting?”

Hi, I'm the living repository provided as companion material to the talk “What is (not) Software Crafting?”, so far delivered at:

Abstract

“What do we mean by Software Crafting or Software as a Craft? What not? How and why was it born? By the way, wasn't it called Craftsmanship? Anyway: why does it matter?

After answering all these questions and introducing concepts like deliberate practice and Open Space Technology, we will explore the current status of Software Crafting communities and events across Europe.”

Resources

Inclusive language: from craftsmanship to crafting/craft/crafters/as a craft

This amazing e-mail by Alastair Smith speaks by itself:

Gist: Changes to the Cambridge Software Craftsmanship Community

Please, use inclusive language :-)

Note

On February, 2018, @rachelcarmena released “Silent talk: Software as a Craft”. Awesome work, completely recommended.

Software Crafting History

Blog: Software Crafting Week: A brief history, by Markus Gärtner.

Web: eXtreme Programming

Web: Manifesto for Agile Software Development

Web: Manifesto for Software Craftsmanship

Related historical discussions on what is it & why does it matter

I find super useful the work by Markus Gärtner (again). You can find his attempt at defining craftsmanship here:

Blog: Was ist Software Craftsmanship?, by Markus Gärtner (German)

The movement generated tons of discussions, e.g.:

Blog: Programming is not a craft, by Dan North.

This was the reply from Adewale Oshineye:

Blog: Software Craftsmanship: More than just a manifesto, by Adewale Oshineye.

Michael Feathers wanted us to focus on the thing:

Blog: The Thing of Software Development, by Michael Feathers.

Martin Fowler did a decent job summarizing (part of) the whole debate and providing his point of view:

Blog / Bliki: CraftmanshipAndTheCrevasse, by Martin Fowler.

Robert C. Martin thinks Fowler's fears are groundless:

Blog: Bringing Balance to the Force

Finally, the following blogpost series by Duncan Smith elaborates on what is software crafting, by giving his opinion on different definitions out there. The first part can be found here:

Blog: Is Software Craftsmanship some code-obsessed mishmash of martial arts and carpentry?, by Duncan Smith.

Some books related to Software Crafting

Book: Software Craftsmanship: The new imperative, by Pete McBreen (2001)

Book: Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman, 2009 by Dave Hoover, Adewale Oshineye.

Book: The Software Craftsman: Professionalism, Pragmatism, Pride, by Sandro Mancuso (2014)

Three key concepts

1.- Deliberate practice

First some papers and books:

Book: Mastery: The Keys to Success and Long-Term Fulfillment, by George Leonard (1992)

Paper: The Role of Deliberate Practice in the Acquisition of Expert Performance, Paper by K. Anders Ericsson (1993)

Paper: Unskilled and Unaware of It: How Difficulties in Recognizing One's Own Incompetence Lead to Inflated Self-Assessments, by Justin Kruger and David Dunning (1999)

Book: Talent is Overrated: What Really Separates World-Class Performers from Everybody Else, by Geoff Colvin (2010)

And now, did I tell you that I love how Duncan Smith writes? Here we go:

Blog: Deliberate practice for software developers, by Duncan Smith (2015)

Blog: Making sense of the deliberate practice debate, by Duncan Smith (2015)

2.- Open Space (Technology)

Book: Open Space Technology: A User's Guide, by Harrison Owen (originally published in 1993)

Web: All the things Open Space-related

Blog: The Open Space, explained, by Koen Metsu (2016)

3.- Apprenticeship

Book: Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman, 2009, by Dave Hoover, Adewale Oshineye.

Journey-level tours

Videos: Corey Haines' Pair-Programming Tour, by Corey Haines (2008)

Blog: Corey's pair programming tour, first post, by Corey Haines (2008)

Blog: Journeyman weeks, by Daniel Temme

Blog: Craftsmanship tour, by Peter Kofler

Talk: Software on the road, the journey, by me a.k.a. Daniel Carral :)

Software Crafting Community :-)

Communities

Web: Union of German-speaking Software Crafting communities

Web / calendar: Events in Europe 2018

Web / Meetup page: SWK Berlin

Communities @ Spain

Software Crafters Madrid

Barcelona Software Crafters

Mallorca Software Craftsmanship

Software Crafters Bilbao

Pamplona / Iruña Software Crafters

Valencia Software Craftsmanship

Gran Canaria Developers Community

SoCraTes events

Web: SoCraTes (un)conferences: history from 2011 to today.

Web: SoCraTes DE

Web: Socrates Day Berlin 2017

Web: SoCraTes BE

Web: SoCraTes Canaries

Web: SoCraTes FR

Web: SoCraTes UK

Web: SoCraTes IT

Code Katas

Repo: Empty projects for different languages with a failing test, by SWK Berlin.

Web: Archive of code katas

Web: Code Katas online

Coderetreats

Web: Global Day of Coderetreat: events & resources

Book: Coderetreat: hosting and facilitating, by Adrian Bolboacă and Alexandru Bolboacă.

About

Slides & companion material to the talk “What is (not) Software Crafting?“

License:MIT License