If you are testing if a value is defined, you should test that. It is possible (not knowing this person's dataset) that empty string is a legitimate value. exists, defined and eq are different for a reason.
in reply to Re^2: Check/set hash of hashes value
in thread Check/set hash of hashes value
If you use warnings, Perl will emit a warning every time you compare with an undefined value; it's a helpful tool to figure out if you've forgotten to initialize a variable. With your code and warnings, there would be a large amount of unnecessary noise on STDERR.
#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.