Best Material

Find links to my most popular material below, then check out these sections for more:

Top Fifteen

The Art of Agile Development (Book)2021
The classic Agile how-to guide, now in its second edition.
Testing Without Mocks: A Pattern Language16 Feb, 2023
How to write fast, reliable tests without mocks or spies.
Art of Agile Development Book ClubOctober 2021 – August 2022
In-depth conversations about Agile development with a star-studded guest list, inspired by the 2nd edition of The Art of Agile Development.
The Agile Fluency® Model: A Brief Guide to Success with Agile6 Mar, 2018
A model for getting the most out of agile ideas. (Coauthored with Diana Larsen; hosted at martinfowler.com.)
TDD Lunch & LearnMay – September 2020
If you’ve learned the basics of TDD and want to see how it works in the real world, this video series is the perfect next step.
Dependency Injection Demystified22 Mar, 2006
A 25-dollar term for a 5-cent concept.
Continuous Integration on a Dollar a Day27 Feb, 2006
An easier, cheaper (and better) way to do continuous integration.
Don’t Measure Unit Test Code Coverage31 Jan, 2019
If you’re leading software teams, don’t measure unit test code coverage. It’s worse than useless; it will actively lead your teams astray.
Bjorn Freeman-Benson: Three Challenges of Distributed Teams19 Feb, 2019
An experienced software leader describes his experiences with distributed teams.
Let's Play: Test-Driven Development2010-2012
A screencast series featuring Java, test-driven development, and evolutionary design.
Red-Green-Refactor30 Nov, 2005
Test-driven development in a nutshell.
Cargo Cult Agile14 May, 2008
Following the rituals of agile development without understanding the underlying ideas.
The Agile Fluency® Model Explained24 Jul, 2018
A ten-minute video overview of the Agile Fluency Model.
Large-Scale Agile: Where Do You Want Your Complexity?18 Jan, 2019
How do we manage the complexity of coordinating many engineering teams?
Continuous Integration is an Attitude, Not a Tool18 Aug, 2005
CI tools make it easy... to do the wrong thing.