How to Identify the Breaking Commit With Git Bisect

Some code is broken, and you can’t figure out why. Maybe there are a lot of changes to consider, and identifying that breaking change seems impossible. Or, maybe you’re curious about how things generally break in your organization. The tool you need is git-bisect. ...

May 17, 2022

The Problems With Code Screenshots

Screenshots of code are common in developer communication, but they come with real drawbacks. Here’s why I try to avoid them. ...

April 19, 2022

How to Read a Stack Trace

A stumbling block for many people when debugging is reading the stack trace. Today I’d like to discuss this important skill. ...

April 5, 2022

How Urgent Is This Bug?

I remember the first bug that I shipped to production. I was upset that I’d broken something and was anxious to fix it. But I noticed something curious: the calm demeanor of a senior mentor helping me. They refused to meet my intensity. While the world burned, they wanted to instead discuss the bug and its relative importance. ...

March 30, 2022

Debugging Tip: Learning From Bugs

You were stuck, and now you aren’t. Congratulations! Before you move on, it’s vital to stop and learn from it. It’s the best way I know to get better and spare your mind for increasingly harder problems. ...

March 25, 2022

Don't Stay Stuck

We’ve all seen this: a frustrated coworker hunched over a computer after hours, flailing alone against some impossible bug. Go home, coworker. Don’t stay stuck. ...

March 1, 2022

Count to Ten

Here’s a trick that that has helped me as a programmer: before doing anything major, like killing a process, stop and count to ten. ...

February 15, 2022

Why I Don't Point Agile Bug Tickets

When I create Agile bug tickets, I leave the story points blank. Why? Two reasons: pointing bugs creates the wrong incentives, and bugs are hard to estimate. ...

February 7, 2022