Share on Facebook Share on Twitter Email
Answers.com

Shotgun debugging

 
Hacker Slang: shotgun debugging

The software equivalent of Easter egging; the making of relatively undirected changes to software in the hope that a bug will be perturbed out of existence. This almost never works, and usually introduces more bugs.


Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
Wikipedia: Shotgun debugging
Top

Shotgun debugging is a process of making relatively undirected changes to software in the hope that a bug will be perturbed out of existence. This almost never works except in very simple programs, or when used as an attempt to work around programming language features that one may be using improperly; it usually introduces more bugs. These undirected, random changes can however cause more symptoms to occur, which assists in locating (and therefore fixing) problems.

Shotgun debugging can occur when working with multi-threaded applications. Attempting to debug a race condition by adding debugging code to the application is likely to change the speed of one thread in relation to another and could cause the problem to disappear. Although apparently a solution to the problem, it is a fix by pure chance and anything else that changes the behaviour of the threads could cause it to resurface — for example on a computer with a different scheduler. Code added to any part of the program could easily revert the effect of the "fix".

This article is based in part on the Jargon File, which is in the public domain.



 
 
Learn More
TCB (computer jargon)
Easter egging (computer jargon)
tweak (computer jargon)

How do you debug applet? Read answer...
How do you get debug in nsmb? Read answer...
How do you stop debugging? Read answer...

Help us answer these
How do you get the debug menu?
What is debugging mode?
How do you debug sims2?

Post a question - any question - to the WikiAnswers community:

 

Copyrights:

Hacker Slang. The Jargon File. Copyright © 2007.  Read more
Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "Shotgun debugging" Read more