The 3rd Annual Obfuscated Perl Contest Victors

Felix Gallo and Jon Orwant


Oh, you shameless, malign bastards.

Coming so soon after Orwant's cortex reconstruction therapy and my own first hesitant touch of a keyboard in months, the new brace of Obfuscated Perl Contest entries can only be taken as an unprovoked attack by a band of malicious sociopaths.

And it gets worse - most of the entries were submitted by new entrants. While this meant that some of the new players made first-timer mistakes, it also raises the spectre of an unending flow of new Obfuscated Perl programmers. As a result, we have gone into hiding from the UN War Crimes Tribunal. Humanity, we pray forgiveness!

But! We must judge on; we are, after all, professionals. Drawing on the lessons of the past, the judging team came up with brand new software for this round. Combined with the hard-won experience of the judges, this made this contest the most difficult and incisively-analyzed match in its history. And also the most brutal; when a Russian software munition formatted lovingly in the shape of a leaping dolphin doesn't place, it's a sign that the competition is fierce.

Many entries fell immediately to critical study and our gleaming machine. Here are the ones which survived and won; all entries and solutions are available at We strongly recommend that you check them out; many teach valuable lessons useful even for production code!


Third Place. Tomas Rokicki and his implementation of a fast 20x80 version of Conway's Game of life.

Second Place. Kevin Miller, whose program is a nicely obfuscated graphing calculator that plots arbitrary one-variable functions in ASCII.

First Place. Clifford Adams, whose Pure Perl implementation of two software munitions is jam packed into 5 (five) lines, including some breathtaking space-savers. One fears what he would have done with six. Added bonus: his patented Algorithmic Key Recovery System for RSA in the SOLUTION file. Capital.

Dishonorable mention. Dave Hartnoll's entry generates a very nice calendar; Dean Inada's parenthesis balancer is cute; and Vipul Ved Prakash's dolphin-shaped Russian cipher was barely squeaked out (you see, the new minimum requirement is two ciphers).


Halfway through the submission period, only two entries had been submitted! But the celebratory champagne went flat and the canapes congealed in our throats as these entries appeared in the download directory. Clearly the contestants had been timing their blows for maximum <div align="center"></div>shock value.

Third Place. Mark James claims third place with the last entry that builds on the work of James Conway that will ever be accepted - a factoring program nicely (and obfuscatorily) formatted in the shape of  .

Second Place. Cayce Ullman, whose entry not only decodes Morse Code, but The 3 rd Annual Obfuscated Perl Contest Victors is partially written in Morse Code. Cayce, we want you to know that there's help available for people like you.

First Place. Stephane Payrard's Polyominos - fitting problem solver is very beautiful - eclipsed only by the entertaining reading available in the SOLUTION file. Perhaps it's fitting that such a powerful obfuscatory statement comes from the land that bred semiotics, deconstructionism and Jean-Paul Sartre. Or maybe Stephane is just demented.

Dishonorable mention. James Shute, who had us stumped until we realized he was cleverly bending the rules; and Stijn van Dongen, whose entry was fun, but unfortunately over the character limit.


The awesome might of our AI was unleashed on these contestants without mercy. And they fell; oh yes, they fell. Only a few entries of the original 18 required extensive human study. A great many tried to flaunt the whitespace rule and were disqualified for being obvious. Here, then, are the cockroaches of the category: the hardy, repulsive survivors.

Third Place. (Tie.) Cameron Kaiser, for an old-sk00l ASCII art entry with many layers of chaff; and Jeff Pinyan, whose exhaustive exploration of the asterisk was particularly grotesque.

Second Place. (Tie.) Ken Rich, man of many quality entries, whose first entry was visually splendid; and Dan Rinehart, whose storytelling entry uses copious errors to work.

First Place. Jani Joki's brain bending style, the implementation of brute forcecracking of an 8-bit Feistel Network encryption algorithm and multiple misdirections caused our brains, organic and silicon, to dribble out our noses. We can't believe Jani didn't post this from a mental ward.

Dishonorable mention. Bill Wendling, Kevin Meltzer, and Poul Sorensen, all of whom had excellent flair but could not hide from our automaton's unblinking eye. Be sure to check out Shawn Wallace's scintillating output - too bad he fell for the overused whitespace trap.


Jani Joki wrests away the Obfuscated Perl Best of Show award, won last time by the Americans, and returns it triumphantly to Europe. Can it be? Can Europeans really be so much better at writing disgusting Perl code than Americans? Is it something in the water? If so, does the CDC know? Will the proud citizens of the United States rally in the face of Euro-domination? Stay tuned for the next round of ...


Our nurses are telling us computer time is over. So, for the judges, see you next time!

Go to to view the entries (See Issue 10, entries).