4 ms·
A Debugging Manifesto
- deathanatos 4y agoI'll add one of mine: the theory should match the evidence. If the theory doesn't explain the evidence you see, reconsider it — e.g., if you are observing bad symptom A, the theory should explain the existence of A. If it doesn't, then why are you observing A? This is a should, not a must: sometimes there are two bugs/problems, and the symptoms cross-talk. But this is rare, IME. But it can be confusing when it happens. Also, pay attention to evidence that refutes the theory. In particular, check this before suggesting a theory. I've had many a production outage where someone is the third person to ask "What if it's X?" when there's a symptom, already noted, that makes X impossible. Also a bonus one: the theory must obey causality.
- ygouzerh 4y agoI love the design ! Just for the first one, to add additional info, it's good for debugging in a day-to-day mode. In incident mode, when there is a major prod incident, often the process is to fix quickly the bug by any work-around you can find in order to restore the service, takes some logs, and debug / fix cleanly the problem later after the incident have been fixed.