What is Debugging?

Published on February 1, 2021
What is Debugging?

In computing, debugging is the process of looking for and then resolving issues that prevent software from running correctly.

Software bugs refer to an error or fault in the codebase that leads to an unexpected result, or unintended outcomes. Because of this naming convention, the process of discovering and fixing bugs is referred to as debugging.

The famous historical precedent for referring to glitches as “bugs” comes from computer pioneer Grace Hopper’s account of a moth being trapped in the Harvard Mark II electromechanical computer, and subsequently being taped into the logbook. The etymology of “bug” in reference to an engineering defect predates this account from the 1940s, however, having been a part of jargon since at least the 1870s.

There are a number of systems and tools that can be used to address the occurrence of bugs in software and solve them through debugging. Tactics may include interactive debugging, unit testing, integration testing, and monitoring. Software development tools, practices, and programming languages themselves offer support in debugging. To learn more about debugging, you can read how it is approached in Python in our series Debugging Python Programs.

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about our products

About the authors

Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Featured on Community

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel