Bruce Gray will give a talk at YAPC::NA 2012 described as:
Why do you use “my” instead of “our”? When should you use “our”? Why not “use vars”?
Why does `use strict` catch “$typo”, but not “$Data::Dumper::typo”?
Why do *you* need to care about namespaces? And what are they really?
Why does your module name need to agree with your “package” statement? What happens if it doesn’t?
Most of the answers are easy to learn, but much harder to remember, so many Perl programmers end up doing the right thing only through repeated references to examples and docs.
The answers become both clear *and* memorable in this talk, via a rapid walk through the history of Perl.
As we skim the timeline of key language elements, you will see the problems they were needed to solve, and understand where and how they should be used.
[From the YAPC::NA Blog.]