Software Craftsmanship


Software Craftsmanship

José Paumard jose.paumard@gmail.com

Foreword

This is a set of personal notes on software craftsmanship. Many things gathered here are not new, some of them are well-known! It is mainly thoughts on my activity as a software craftsmanship coach in several different teams I had the pleasure to work with.

Most of these katas can be found somewhere else on the Internet, and sorry, I did not try to find out who invented which. Well some of them, I know I invented them, but it is so easy to invent a kata that I cannot be sure that someone somewhere came with the same idea.

Anyway, here is a list a very good (and well known!) readings if you want to learn more about clean code, software craftsmanship, and all the practices around those.

The Katas

Introductory Katas

The FizzBuzz Kata

The Leap Years Kata

The RPN Calculator Kata

The String Calculator Kata

The One Two Kata

The Palindrome Kata

Intermediate Katas

The Roman Numerals Kata

The Fizz Buzz Woof Kata

The Anagrams Kata

The Tennis Kata

The Minesweeper Kata

The Word Wrap Kata

Books I Like

Anyway, here is a list a very good (and well known!) readings if you want to learn more about clean code, software craftsmanship, and all the practices around those.

Book Cover Book & authors
Clean coder The Clean Coder: A Code of Conduct for Professional Programmers, Robert C. Martin, 2008.
Clean code Clean Code: A Handbook of Agile Software Craftsmanship, Robert C. Martin, 2011.
TDD by example Test Driven Development: By Example, Kent Beck, 2003.
Xtreme programming Extreme Programming Explained: Embrace Change, Kent Beck, 2004.
Legacy code Working Effectively with Legacy Code, Michael Feathers, 2004.
Pragmatic programmer The Pragmatic Programmer: From Journeyman to Master, Andrew Hunt, 1999.
Refactoring Refactoring: Improving the Design of Existing Code, Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts, 1999
Software crafstmanship The Software Craftsman: Professionalism, Pragmatism, Pride, Sandro Mancuso, 2014.
Coding dojo The Coding Dojo Handbook, Emily Bache, 2013.
Design patterns Design Patterns: Elements of Reusable Object-Oriented Software, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, 1994.

Creative Commons licence