Practices of an Agile Developer

Venkat Subramaniam, Andy Hunt

Publisher: Pragmatic Bookshelf, 2006, 189 pages

ISBN: 0-9745140-8-X

Keywords: Programming

Last modified: Nov. 5, 2022, 9:32 p.m.

Writing good software is hard — there are pitfalls everywhere. It's almost as if an evil demon is constantly whispering in your ear, tempting you to take this or that shortcut — a shortcut that will lead straight to disaster.

Don't let that bug-inducing devil win. Fight him with your own guardian angel to guide, promote, and protect your work and career. Fight him with the proven Practices of an Agile Developer.

In this book, we've collected the personal habits, ideas, and approaches of successful agile software developers and compiled them in a series of short, easy-to-digest tips. For each practice, we expose the evil demon's whisperings — the temptations or shortcuts he's trying to get you to take. And then we explain the agile practices that act as a guardian angel to protect your project and your career.

You could learn all this stuff the hard (and conventional) way, by trial and error,but this book can save you both time and pain. Read it, and you'll be a better developer — starting today.

  1. Agile Software Development
  2. Beginning Agility
    1. Work for Outcome
    2. Quick Fixes Become Quicksand
    3. Criticize Ideas, Not People
    4. Damn the Torpedoes, Go Ahead
  3. Feeding Agility
    1. Keep Up with Change
    2. Invest in Your Team
    3. Know When to Unlearn
    4. Question Until You Understand
    5. Feel the Rhythm
  4. Delivering What Users Want
    1. Let Customers Make Decisions
    2. Let Design Guide, Not Dictate
    3. Justify Technology Use
    4. Keep It Releasable
    5. Integrate Early, Integrate Often
    6. Automate Deployment Early
    7. Get Frequent Feedback Using Demos
    8. Use Short Iterations, Release in Increments
    9. Fixed Prices Are Broken Promises
  5. Agile Feedback
    1. Put Angels on Your Shoulders
    2. Use It Before You Build It
    3. Different Makes a Difference
    4. Automate Acceptance Testing
    5. Measure Real Progress
    6. Listen to Users
  6. Agile Coding
    1. Program Intently and Expressively
    2. Communicate in Code
    3. Actively Evaluate Trade-Offs
    4. Code in Increments
    5. Keep It Simple
    6. Write Cohesive Code
    7. Tell, Don't Ask
    8. Substitute by Contract
  7. Agile Debugging
    1. Keep a Solutions Log
    2. Warnings Are Really Errors
    3. Attack Problems in Isolation
    4. Report All Exceptions
    5. Provide Useful Error Messages
  8. Agile Collaboration
    1. Schedule Regular Face Time
    2. Architects Must Write Code
    3. Practice Collective Ownership
    4. Be a Mentor
    5. Allow People to Figure It Out
    6. Share Code Only When Ready
    7. Review Code
    8. Keep Others Informed
  9. Epilogue: Moving to Agility
    1. Just One New Practice
    2. Rescuing a Failing Project
    3. Introducing Agility: The Manager’s Guide
    4. Introducing Agility: The Programmer’s Guide
    5. The End?
  • A1. Resources
    • A1.1. On the Web


Practices of an Agile Developer

Reviewed by Roland Buresund

Outstanding ********* (9 out of 10)

Last modified: Nov. 20, 2023, 12:58 a.m.

This book in reality have very litttle to do with Agility. While the word is scattered around the book, then contents are sound advice to any programmer in any project or development team!

Heck, I recognize stuff in here from the 80-ties, so very little is new under the sun. But it is in fact a very good and compact guidebook to good practices and very easy to reread and apply to different situations.

If you are a programmer (aspiring or senior) you can learn something from this book.


There are currently no comments

New Comment


required (not published)