2nd day at the YAPC was somewhat more fun. First session I went to was Abigail's Lexical::Attributes talk. I thought he went into a bit too much detail over how his module came to be. But that's ok. He was trying to show us that inside out objects are a good thing: providing the encapsulation of object members that regular perl objects are lacking today. I admit he sold me on the Inside Out idea. I've heard of it before, but now it just makes sense. The Lexical::Attributes module implements Inside Out objects using perl6 OO constructs.
Now I want to start using this module under mod_perl! Although source filtering is used in the module, only compile-time performance is affected, which is not important under mod_perl.
After the lecture, I asked Abigail about run-time performance of using Lexical::Attributes vs. the regular perl5 OO. He said it should be equivalent. Oh and he was giving out previews of Damian Conway's soon-to-be-released book, "Perl Best Practices". I managed to pick one up. Very informative material.
Next talk was "Perl Modules for Exceptions, Logging and Parameter Validation" by David Rolsky. Very well presented even if there were a few glitches at the beginning. David is the author of Exception::Class. As it turned out, I didn't learn that much new here. But it did remind me of the importance of throwing exceptions. Oh and that Error.pm may have memory leaks due to nested closures. Also, source filtering does not play nice with Apache::Reload. OK so maybe I learned a few important things.
Next up: "How to Serve a Billion Requests a Day with Perl" by Kevin Scaldeferri.
The ballroom was full for this one. Not surprising considering the topic and the fact that the presenter was from Yahoo! Search Marketing (formerly Overture). The material was very high level, architecture stuff. It was well done and very professional. I learned that they were using distrubuted, n-tier topology... basically a web server farm and a database farm and a few load balancers (Alteon, F5). So, nothing really new. The guy did recommend using Memcached, but it was not clear whether they were using it.
I hopped over next door to hear the genius Autrijus Tang's "Apocalypse Now - Perl 6 is Here Today". This was somewhat over my head, but it was fun to see and hear Autrijus Tang in person. He talked a lot about Parrot -- the supposed virtual machine for Perl 6, and his pet project, Pugs, the prototype implementation of Perl 6.