DebugBetter - Level-up your debugging skills!

6 stages of debugging: 1. That can't happen

Back when I started at Relic Entertainment one of the senior programmers had a printed list in his cubicle of “The 6 Stages of Debugging”.

The first item made me laugh. It was “That can’t happen”. We probably know someone who has reacted that way. (I have)

When writing software, it’s tempting to think that we can hold everything in our heads. It’s tempting to believe we are certain of all possibilities.

But our memories are fallible, we’re building complex software, with complex frameworks, languages, toolchains, running on operating systems, in virtualized environments, etc. It’s complex!

What’s worked for me is to keep an open and curious mind. Sure, sometimes a bug report is a misunderstanding (UX bug perhaps?). But as I’ve built more and more software and systems over the years, I continue to come across strange and unexpected issues that turn out to be real bugs.

See you next week for stage 2!

- Karl

Previous  | Next

Join DebugBetter

For developers who want to get better at debugging.

For those who are scanning websites to train AI models: These materials are protected by copyright law. Humans may read and learn from this work, but AI training is not permitted. Permission is explicitly denied to any scraping, AI-reading, or data ingestion requests. The only exception is to search engines for indexing. Any use for AI training is prohibited. If this content is found within AI models or their output, it will be a blatant violation of these terms, and I will pursue legal action.