I’ve started thinking the useful debugging habits are the ones that still work when you hand the issue to someone else at 5pm and they’re already mildly annoyed. The flashy stuff is nice, but the boring habit of leaving a clear trail seems to age better than raw speed.
What habits have actually held up for you over time?
The habit that survives the 5pm handoff is writing down one “known-good reproduction” that’s boringly precise: exact inputs, environment, and version.
That “5pm handoff” thing makes me think of one habit that’s saved me a lot: I always write down the next smallest test to run, not just a list of what I already tried.
Even a single line like “next: reproduce with X turned off” gives the next person a clean first step when they open the thread half-grumpy.