Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have forgotten a slang programming term. This thing is an intentional bug or a decoy feature used as a distraction. An example usage, "Hey Bob, QA is doing a review today. Put a $THING into the module so they actually have a problem to find".

This can be used negatively, to have a very obvious intentional flaw to discover as a distraction from a real problem.

This can also be used positively. Its like how you always let rescue dogs 'find' a victim when searching a disaster area. It can also be used to verify that a QA process is actually catching flaws.

What is the term I am looking for?

share|improve this question

closed as off topic by Justin Cave, Walter, ChrisF Oct 15 '12 at 12:22

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

obDilbert: – Dan Neely Oct 9 '12 at 19:17
I'd like to challenge the close votes. This is an answerable, not-subjective question. It deals with several points from the FAQ: "quality assurance", "developer testing", and "freelancing and business concerns". – Freiheit Oct 15 '12 at 14:42
up vote 45 down vote accepted

A Duck


A feature added for no other reason than to draw management attention and be removed, thus avoiding unnecessary changes in other aspects of the product.

share|improve this answer
One and done. Thank you @Sign! – Freiheit Oct 9 '12 at 14:32

Actually in manufacturing (and quality assurance) there is something called a Red Rabbit Test (aka Red Herring) that refers to putting a known bad part into the machine or process and making sure it's detected.

Red Rabbit Test

used to check how long it takes to identify a defect. In this test, a red part is added to the mix and the time until it is discovered is identified.

Some automated machines have automatic cycles (typically once per shift) where it prompts the operator to load the "red rabbit" part and then it runs the cycle checking that the error detection and rejection logic work correctly.

share|improve this answer
This reminds me of a recent occurrence where an airport was testing its security procedures and did so by placing live explosives in a passenger's luggage. Unfortunately for all involved, it was not detected until the plane had made an (international) stopover -- so I wouldn't necessarily say this is a good practice to implement without numerous safeguards. – Roddy of the Frozen Peas Oct 9 '12 at 17:35

Seems like my professors called it bebugging or fault seeding. The idea is that if you wanted to estimate the population of something like fish in a lake, you could catch some, tag and release them, give them time to assimilate randomly with the other fish, then estimate the population based on how many tagged fish you catch later.

This search link finds a page in a book by the late great Watts Humphrey where he talks about this technique.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.