Lumping strict and warnings together is a mistake.
I beg to disagree. Many times (not only here, but at my
workplace, too) I've seen people hunting for bugs for way too long, simply
because they thought "I don't need no stinking warnings".
Had they had them enabled, they would have been pointed to the root cause of the
problem more or less directly. And if you feel annoyed by the "use of uninitialized value"s (and you know what you're doing),
it's no big deal to disable those specifically with no warnings "uninitialized"; —
at least that doesn't qualify as "a lot of work" in my opinion.
I agree there are rare circumstances where you don't want them — for example, I've seen a few cases (very few actually) where leaving warnings enabled in production environments has led to more problems than it solved — but as a development tool, I'd always recommend use warnings;