Six Stages of Debugging

Sunday, 25 Mar 2012 [Wednesday, 23 Aug 2017]

  1. That can’t happen.

  2. That doesn’t happen on my machine.

  3. That shouldn’t happen.

  4. Why does that happen?

  5. Oh, I see.

  6. How did that ever work?

[This is not mine. I posted it in the interest of personal archival because the oldest mention I could track down on the web appeared on a now-defunct weblog. In the meantime, Mike W. Cremer (who bills himself The Newton™ Scapegoat ) has claimed credit for coining it after a particularly frustrating DMA debugging session while slaving away on Dante (Newton OS 2.0). According to his account, this took place in Apple’s building at 5 Infinite Loop (nicknamed RD5 or IL5). The list was later to be found taped to Mike Engber’s door in IL2.]