in reply to Why are my hash keys undefined?
If you change this line:
print "name is $name\n";
to something like this:
print "name is |||$name|||\n";
you'll see tabs, spaces, newlines, etc. at the beginning and end of your variable you might not otherwise notice.