Alphabetical List of All Ideas

  1. A Deliberate Approach to Decision-Making
  2. Acknowledge Uncertainty
  3. Agree on Terms of Engagement
  4. Automate Repetitive Tasks
  5. Build Great Teams
  6. Cohesion
  7. Communicate Clearly
  8. Configuration Management
  9. Consider Alternatives
  10. Consider What Might Go Wrong
  11. Craft a Product Vision
  12. Create Value for Customers
  13. Decomposition
  14. Decrease Friction, Increase Flow
  15. Deliver Early and Often
  16. Developers Are Not Interchangeable
  17. Developers are Always Growing
  18. Do Not Place Excessive Faith in Project and Program Management
  19. Documentation Is Not an End Unto Itself
  20. Don't Wait to Integrate
  21. Entrepreneurial Leadership
  22. Govern Wisely
  23. Have Wonderful Arguments
  24. Increase Developer Engagement
  25. Just Enough Design Up Front
  26. Let the Buyer Beware
  27. Limit Work in Progress
  28. Loose Coupling
  29. Make Problems Visible
  30. Pick the Right Sort of Customer Proxy
  31. Plan Thoughtfully But Be Prepared for Change
  32. Plan-Do-Check-Act
  33. Quality Requires Extra Effort
  34. Remain Open to Fresh Learning
  35. Seek First to Understand Your Customer
  36. Self-Organizing Teams
  37. Sharpen Your Axe
  38. Shorten Feedback Loops
  39. Show Rather than Tell
  40. Simplify and Generalize
  41. Software Development is a Balancing Act
  42. Software Development is a Craft
  43. Software is Different
  44. Stay Focused on the Creation of Working Software for Real People
  45. Tailor Thoughtfully
  46. Take a Long-Term Economic Perspective
  47. The Inconvenient Nature of Software Development
  48. This Thinking Business
  49. Understand the Arc of Your Project
  50. Use Things Already Known to Work
  51. What's Not Done is as Important as What's Done
  52. When Estimating, the Whole is Definitely Greater than the Sum of its Parts

Next: Alphabetical Index