Building Systems That Work

Debugging Methodically

12 minStudent plan

How to find a fault by bisection and measurement instead of guessing and swapping parts.

After this lesson you can

  • Debug by bisection instead of by guessing
  • Form one hypothesis and test it
  • Check the boring causes first

Guessing does not scale

The instinct when something does not work is to change whatever you touched last and try again. It occasionally works, and it teaches you nothing.

The method that always works: form one hypothesis, design one measurement that would prove it false, take that measurement, and act on the answer. Then repeat.

The key discipline is changing one thing at a time. Change three and it works, you do not know which mattered, and the other two changes are now unexplained additions to your circuit. Change three and it still fails, and you have three new possible faults.

In the full lesson

  1. Guessing does not scale
  2. Bisection
  3. Check the boring things first

This lesson comes with the Student plan. The first module of Engineering Foundations is free.