← archive

Thoughts on debugging

April 18, 2021

Not all developers like debugging.

They consider it a chore and, in fact, actively avoid it. There is no glory in the grueling work of fixing bugs all day. When debugging is done, there’s little to show to the client. It feels like there’s no value added when all you do is make things work the way they should have worked from the start.

But I’ve always enjoyed finding and fixing bugs.

Every bug teaches something interesting: whether it’s something about timezones, Rails callbacks, or validations, my overly optimistic quality expectations from third-party software, or how The Curse of Knowledge tricks me when imagining the average user. Every time there’s a lesson. And the best part is that these lessons are personal. They don’t teach you about mistakes made by other developers working on other software. No. They teach you about your mistakes. About mistakes that you have made on this software.

And the developers that don’t like debugging are not interested in those lessons. They want to ship things and add value, not realizing something. Debugging also means adding value. Not only do you make the software more robust, but you also learn from your mistakes and therefore increase your value to the client.

Even though there’s no glory in fixing bugs, doing so can teach you lessons that are hard to find elsewhere.

Want to talk more about this or any other topic? Email me. I welcome every email.