- **Epistemic status:** #budding
Debugging is a process in which a [[Software Bug]] is found, analyzed and resolved.
## Debugging Mindset
It is imperative to adopt the right mindset when debugging software:
1. Leave ego out of the door and [[Create a no blame culture]]
Some workplaces have a shame culture and spend time blaming the culprit instead of concentrating on fixing the problem. This leaves developers with an increased sensitivity to finding [[Software Bug]]s in their code. By seeing it as a learning opportunity and concentrating on fixing the problem, you will get better at producing less [[Software Bug]]s in your code.
2. Don't panic
It is quite easy to be in a panic state due to a deadline, or a boss/client breathing down your neck. When this happens, take a step back, breath, and think what are the symptoms causing the [[Software Bug]].
3. Don't lock your mind
When presented a [[Software Bug Report]] or just witnessing a [[Software Bug]] don't lock your mind thinking "that can't happen” or “it's impossible” because clearly, it can and has.
4. Find the core problem
A [[Software Bug]] can present symptoms that at first glance might not indicate that the issue lies several layers away from where you are observing. Try to always find the root cause of the problem, developing steps to remediate it.
---
## References
- “Debugging.” In _Wikipedia_, June 24, 2022. <https://en.wikipedia.org/w/index.php?title=Debugging&oldid=1094757787>.
- Thomas, David, and Andrew Hunt. _The Pragmatic Programmer, 20th Anniversary Edition: Journey to Mastery_. Second edition. Boston: Addison-Wesley, 2019.
- EDUCBA. “What Is Debugging? | Different Process, Tools and Strategies of Debugging,” September 21, 2019. <https://www.educba.com/what-is-debugging/>.