The scientific approach to debugging

Treat debugging as a hypothesis-based experiment. Make detailed notes of your procedures and observations. It should be a systematic process turning reality into theory and applying that theory to fix the problem.

Devil debugging (How not to debug)

Rules for debugging

As with all science:

  1. Make an observation
  2. Propose a hypothesis
  3. Experiment to test the hypothesis
  4. Make an observation
  5. If the observations do not match the hypothesis, Go to step 2

Explicit debugging