Bad Software Advice

Share this post

How to avoid debugging software

badsoftwareadvice.substack.com

How to avoid debugging software

A simple step-by-step guide to fixing all issues

David Tate
Jul 26, 2023
2
Share this post

How to avoid debugging software

badsoftwareadvice.substack.com
Share

Debugging software is not hard. There are four steps:

  1. Deny that there is a problem.

  2. Deny that it is your problem.

  3. Ask for more information.

  4. Complain.

Steps 1 and 2 are self-explanatory.

In the third step, ask for more information, such as what is wrong with the software and exactly how to fix it. Ideally every bug report sent to a developer should have a Pull Request with code that fixes the bug. This is how open source does it after all. If you are given an exact reproduction with all the information you need, move to Step 4.

If you must debug this software, then make sure before you get started to tell everyone how hard it is going to be, and how making you fix software rather than build new software somehow demeans and devalues you. Tell them that you were hired as an Architect and Do Not Do Support, but that you will help out this one time. If the CEO of Uber can learn something from working as an Uber driver, then you should be able to learn something from debugging the code that some inexperienced idiot (you, 6 months ago) wrote.

Then, if you run out of ideas, go to:

Step 5: Add more logging and return to Step 1.

Bad Software Advice is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.

2
Share this post

How to avoid debugging software

badsoftwareadvice.substack.com
Share
Previous
Next
Comments
Top
New
Community

No posts

Ready for more?

© 2023 David Tate
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing

Our use of cookies

We use necessary cookies to make our site work. We also set performance and functionality cookies that help us make improvements by measuring traffic on our site. For more detailed information about the cookies we use, please see our privacy policy. ✖