[yapc 99 talks]
YAPC | talks

Michael G. Schwern

Ineffective Perl Programming, or Idiotic Perl

45 minute talk

An exploration, dissection and correction of those Perl idioms which have proven to be wholely ineffective, flawed or otherwise just plain wrong.

Code snippets will be gathered from various existing sources, including CGI repositories (Matt's Script Archive, Selena Sol, www.cgiresources.com, etc...), corporate software (where licensing allows or can be gotten around by sufficient anonymization of the code), books (/(Learn )?Perl5? (In|For )?(\d+ Days|Dummies|Unleashed)/) and possibly CPAN. In addition, a call for the Worst of Perl will be made on clpm and #perl. The authors of any code used will be invited to watch the carnage (and possibly be allowed to repent).

Each source selected will be used as an illustration of one or more Ineffective Idioms (see below.) For each idiom encountered, the code will be briefly stepped through, reasons why it is ineffective will be explained along with reasons why a programmer might choose this idiom (ex: spin locking might be used because the programer intended the code to run on systems without flock.) After the abuse has been heaped as high as it will go, a more correct idiom will be proposed, stepped through and explained.

It is intended primarily as a tutorial session for the programmer who knows enough Perl to blow off a few toes, but hasn't yet learned any style. It will hopefully serve as an eye-opener and swift smack upside the head with the ol' Cloo-bat. More experienced programmers may wish to attend to watch the Christians be thrown to the lions.

Material handed out to attendees will include "Before and After" source listings of each idiom, definitions of each Ineffective Idiom and a "Hunter's Guide to Idiotic Perl" (how to identify Ineffective Idioms in your own source code).

Development of the paper, including the growing list of potential source, Ineffective Idioms and their corrections will be made available from http://www.pobox.com/~schwern/IePP/.

Potential Ineffective Idioms:

Michael Schwern is a loon.
Kevin Lenzo
Last modified: Fri May 7 16:17:22 EDT 1999