Here's a pattern I want to outline and possible suggestions on how to fix it.
Sometimes when I'm trying to find the source of the bug, I make incorrect updates. An explanation of what the problem might be pops to mind, and it seems to fit (ex. "oops, this machine is Big Endian, not Little Endian"). Then I work on the bug some more, things still don't work, and at some point I find the real problem. Today, when I found a bug I was hunting for, I had a moment of, "Oh shit, an hour ago I updated my beliefs about how this machine worked, but that was a bad update because the problem had nothing to do with Endiannes".
I imagine that there have been plenty of times when I've been programming/lifing and I haven't kept track of updates that were tied to a problem, and never corrected them when I found out what the actual solution was.
Mayhaps I should keep a running list of assumptions and updates I've made while I program, and everytime a bug is completely resolved, see how that effects past updates.
Had a similar style bug while programming today. I caught it much faster though I can't say if that can be attributed to previously identifying this pattern. But did think of the previous big as soon as I made the mental leap to figure out what was wrong this time.
In light of reading through Raemon's shortform feed, I'm making my own. Here will be smaller ideas that are on my mind.