in reply to Benefits of -w

Do like Masem says: use -w, and techniques like:
my $parm1 = $q->param('parm1') || '';
when you know it's okay to have an empty value. Then when you're debugging you can check the log for uninitialized errors, among others.

If the log is full of unitialized warnings, how will you catch the one that's causing your CGI program to misbehave?