"As a general rule of thumb," writes Newman, "we ignore all build warnings. After all, the code complies... so why bother worrying about warnings?"

"We also ignore errors and exceptions. After all, you can just write On Error Resume Next or use Try/Catch blocks to make them go away."

"So, after a few years of error-free coding, the 'unexpected behaviors' started to grow, and the end users started to complain about things like 'non-functional software' and 'corrupt data'. And thus the general clean-up began."

Before:

try { 
    DoProcessReceipts();
}
catch (Exception e) { }

 

After:

try { 
    DoProcessReceipts();
}
catch (Exception) { }

Newman continues, "of course, we're still rife with 'unexpected behaviors', but at least there won't be any build warnings about that pesky "e" variable!"