Skip to main content

Working Software Is Not The Primary Measure of Progress

  • Customer value (solutions to their problems) is the primary measure of progress
  • Working software is a means to that end. Maybe.
  • Sometimes software isn’t the next most impactful thing
  • Never automate before value has been established
  • Never work for too long before value has been established - get quick feedback
  • Plan minimally - build a small prototype and get feedback
  • No premature abstractions - resist them until needed to avoid confusing yourself with the wrong ones
  • No premature optimizations - it’s not a problem until the customer cares about it
  • Never leave a mess
  • Never speculate when you can experiment and learn instead - learn from actual customer usage

Original video by Christopher Okhravi:

The 7th principle of the Agile Manifesto is blatantly wrong. Working software is NOT the primary measure of progress, customer value is. But what does it mean to let customer value be the primary driver of decisions? Let me tell you about my 7 rules.

READ MY BOOK
https://theobjectorientedway.com

JOIN THE MOVEMENT
https://valuedrivendevelopers.com

MORE ON DESIGN
https://youtu.be/7hXi0N1oWFU
https://youtu.be/FdFBYUQCuHQ
https://youtu.be/YaSMkzmc\_sA
https://youtu.be/C3B5IIlt4-0
https://youtu.be/QeQ62E-1GeA

WATCH THIS NEXT
https://youtu.be/yhwaisT0VTM

SOURCES
https://sandimetz.com/blog/2016/1/20/the-wrong-abstraction
https://youtu.be/sCZJblyT\_XM
https://sandimetz.com/99bottles

CONTENTS
00:00 Intro
00:54 History Of Waterfall
01:53 Software Can Be Changed
03:14 Verification VS Validation
03:38 Customer Value Is Primary
04:35 Software Is Secondary
06:26 Value Driven Decisions
06:49 No 1. Never Automate Before Value Has Been Established
07:20 No 2. Never Work For Too Long Before Value Has Been Established
08:09 No 3. Plan Minimally
08:33 No 4. No Premature Abstraction
10:00 No 5. No Premature Optimization
11:14 Private Community
11:36 No 6. Never Leave A Mess
12:44 No 7. Never Ask When You Can Test