Debugging, as defined in whatis.com, is the process of locating and fixing or bypassing bugs (errors) in computer program code or the engineering of a hardware device. When someone says they've debugged a program or "worked the bugs out" of a program, they imply that they fixed it so that the bugs no longer exist.
Part of the debugging process is inserting customized messages in the program to trap (determine) where the error resides. A programmer should always keep in mind to remove these messages when the error is fixed before the program is moved to production.
A year ago, a teammate was enhancing one of the systems that we were supporting. She successfully debugged her program code and removed all of the customized messages. Or so she thought.
A day after the program was moved to production, my US team lead checked out the recently-enhanced system. He created then deleted dummy accounts, clicked buttons, navigated from one web page to another. To his surprise, he encountered a pop-up message when he was doing one of these things. The message said:
He promptly emailed my teammate inquiring about the message. My lead is cool. In two years of working under him he has never blown his top. He just reminds us that everyone make mistakes and to not commit the same mistake twice. So when we heard about the goof, we had a field day teasing our teammate. It was hilarious.