Why this conference is so cool
YAPC is a conference by and for geeks. It grew from a dissatisfaction with the high price tag to attend The Perl Conference, the 600 pound gorilla of perl gatherings, put on by O'Reilly. Kevin Lenzo, a grad student at CMU, decided last year to put together a smaller conference on the East coast, with a price tag affordable to any perl hacker. The registration cost for YAPC this year was only $75, and that gets you three days of perl, and free breakfast, lunch, and one dinner.
This year, there were wavelan wireless networking stations set up around the CMU University center, so those lucky geeks with laptops could be canstantly on the network as they roamed about the halls and sat in talks. Apparently, you're no one unless you have a Sony Picturebook these days, as they seemed to be sprouting like mushrooms everywhere. Another cool feature was the IRC server. YAPC was fully IRC enabled, with participants chatting during talks, and some attendees re-broadcasting talks live over IRC as they happened.
The best thing about it though, was that it was virtually a PHB-free zone. This was not a convention, there were no booths, and no booth babes (well, ActiveState had one, but she seemed pretty out of place). The talks weren't dumbed down for a general audience, this was nuts and bolts perl. In fact, some may have speculated that Damien Conway went out of his way to make his talk on "Quantum Superpositions and the First Virtue" incomprehensible even to most of the nerds in attendence.
A couple high points
Obviously you can't get to all of the talks. But some did merit special mention, so the rest of this article will be quick summaries of just a few of the presentations that were given. I realize this is a general interest techie website, so I'll try to hit the parts that are cool even if you're not Just Another Perl Hacker.
JAPHs and other obscure signatures, by Abigail
Many of you have probably seen those odd .sigs that look like line noise, but actually print out "Just Another Perl Hacker" when you run them. These are known as JAPHs (for obvious reasons) and have become a mini-subculture of their own. The goal of a good JAPH is to implement 'print "Just Another Perl Hacker";' in the most counterintuitive and incomprehensible way possible, in less than four lines of 80 characters of perl.
He gave several examples, but one in particular epitomized the form. This JAPH, listed as "Obscure flow" in the online presentation, uses a feature of perl called AUTOLOAD, which lets you predefine a generic subroutine or method call, and then call it at runtime without it knowing what it's actual name will be. The JAPH creates an AUTOLOAD subroutine that just prints out the name it was called by. The way it makes this AUTOLOAD is obscure in the extreme, and probably couldn't be done in any language but perl. It definitely *shouldn't* be done in any language, including perl! But there's more-- it also manipulates the symbol table to alias AUTOLOAD into the $_ special variable, which is the variable that's used when a scalar is needed but not specified. Then finally the text is printed with a set of nested subroutine calls which call subroutines named by the letters of the canonical sentence.
I said I'd keep it non-perl specific, didn't I. Oh well, I lied.
Pointless? Yes, JAPHs are pretty pointless. But for sheer hack value, you can't beat 'em.
What is it with these Python F**ks Anyway? by Nat Torkington
Anyone who is even peripherially involved in either the perl or the python communities will be well aware of the building animosity between proponents of the two camps. Perl mailing lists are regularly gripped in the throes of perl vs. python flamewars, and I can only assume that python lists are too. Of course, like all Holy wars, this is totally pointless and a waste of time for everyone.
Nat Torkington brilliantly satirized the whole mess in this 5 minute lightning talk. With hyperbole worthy of a Monty Python skit (or should that be a Monty Perl skit?) he ranted for five minutes straight without apparently taking a breath, about why python sucks and why no one in his right mind would ever use it.
While he did hit some of the major weaknesses in python (no lexical scoping? slower than Java!!??), the talk was fully meant as satire, and an example of how *not* to convince someone of your argument. And if anyone tries to continue this flamewar in the comments here, they will be taken out behind the barn and shot.
Friday evening, after the official close of the conference, a bunch of folks got together at the Pittsburgh Paintball Sports Arena in the strip district, to get very dirty and shoot marble-sized balls of colored jelly at each other. This was one of my personal highlights, as I'm an occasional, but enthusiastic, paintball player myself. Much fun was had, and I have to publically congratulate Jonathan Eisenzopf of Whirlwind Interactive for personally taking me out of three consecutive games. Bastard. :-)
For the real highlight of the show, also see my other article on Damien Conway's talk, Quantum Superpositions and The First Virtue. I was going to include it here, but it really merited its own article.
Overall, it was a fantastic conference, well-run, well-attended, and worth far more than the $75 registration fee. I heartily encourage anyone interested in perl to attend next year.