Nice post, with some good followups. My only contribution is this:
1) I frequently find that the debug statements make for some nice internal documentation of the code. Normally, I just comment them out when I'm done with them for the moment. (Though now that I've seen the first AnonyMonk reply, I'll have to start using that technique, instead.)
2) I see two splits that should be made: User/Developer as well as Error/Warning/Informational messages, with differing requirements for each. A User:Error message needs to help the user remediate the problem or discover a workaround, whereas a Developer:Informational message may have numerous random bits of information. I first try to figure out which category I'm writing my message for before writing it. For User:* messages, I try to be complete without specifying details the user doesn't want or need, while for Developer:* messages I tend to be terse and laden with information I want to see.
In reply to Re: The Evolution of the Lowly Debug Statement
by roboticus
in thread The Evolution of the Lowly Debug Statement
by hesco
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |