Team Practices Group/Recommended Reading

Extreme Programming
Extreme Programming Explained by Kent Beck


 * The original XP manifesto, and still one of the best XP books. It is concise and easy to read, and does a great job of describing XP at a high level, with the background philosophy. If you want theory, and not just practice, this is definitely the best XP book. It is showing its age in a few spots, but is still worth reading. (Summary by KSmith)

Planning Extreme Programming by Kent Beck and Martin Fowler


 * Excellent practical description of how to actually run an XP project, start-to-finish, day-to-day. XP Coaches and leads really should read this book. (Summary by KSmith)

Extreme Programming Installed by Ron Jeffries, Ann Anderson, and Chet Hendrickson


 * Excellent practical advice for everyone involved with an XP project. The first 30 pages are the best introduction to XP I have found for potential XP Customers. (Summary by KSmith)

Extreme Programming Applied by Ken Auer and Roy Miller


 * One of the best XP books, with excellent advice for XP teams. Also, this might be the best book for an open-minded XP skeptic to read. It has some pretty compelling arguments. (Summary by KSmith)

Extreme Programming in Practice by James Newkirk and Robert C. Martin


 * Fascinating real-world case study of a small agile project attempted by a team that had never done XP before. It really shows some of the challenges and benefits of an agile approach. Great for anyone who wants to understand the "flavor" of an XP project. (Summary by KSmith)

Extreme Programming Explored by William C. Wake


 * Disappointing. I am a huge fan of Wake's writings, but this book didn't come out as well as I had hoped. It's not a bad book, but it's not great, either. (Summary by KSmith)

The Practical Guide to Extreme Programming by David Astels, Granville Miller, and Miroslav Novak


 * Not one of the best. This book has pretty good material, but if you've already read the great books in the XP series, you probably won't learn much. It lacks the concise style of most XP books, so I found it to be wordy and somewhat repetitive. (Summary by KSmith)

Extreme Programming Examined by Giancarlo Succi and Michele Marchesi


 * A collection of early XP papers presented at a conference in 2000. There are a few gems in here, but most of the material is obsolete, academic, or esoteric. Not recommended, unless you have a specific need for one of the papers. (Summary by KSmith)

Coding Practices
Refactoring: Improving the Design of Existing Code by Martin Fowler, et al


 * The bible of refactoring. It has a section describing what refactoring is and how to use it, and another section listing a catalog of "refactorings". The material is excellent, but I had some trouble reading it straight through. Worth the effort, though. (Summary by KSmith)

The Pragmatic Programmer by Andrew Hunt and David Thomas


 * Excellent compilation of software development wisdom. Probably most valuable for mid-level developers, but worth reading for anyone who wants to improve their software development skills. The advice applies to virtually all languages, domains, and methodologies. (Summary by KSmith)

Software Development in General
Software Craftsmanship by Pete McBreen


 * Excellent, thought-provoking essay. Describes why the "Software Engineering" model is inappropriate, and proposes an alternative. Philosophical in nature (as opposed to practical or theoretical). (Summary by KSmith)

Websites
http://www.infoq.com/
 * User-contributed articles on a vast array of topics, including agile software development. Non-open copyright policy is disappointing.