Adventures on Perl Whirl 2000



Can a tech conference on a luxury cruise boat possibly be legitimate? Sure it is, and then some.

This past Memorial Day, I joined about 200 attendees on Perl Whirl 2000, the inaugural Geek Cruise. All in all, we found that not only was there a mind-blowingly good set of tutorials available, but there was more time to meet and chat with fellow Perl hackers than there is at most conferences.

Honestly, I knew I was going on the Perl Whirl, but the idea took a while to set in. When I received my tickets, it still seemed unreal. When I started packing my bags, it seemed like just another conference. When I boarded the plane, it was just another trip. When I arrived at my hotel in Vancouver, reality began to set in: I'm going on a Cruise. To Alaska. Talking about Perl all along the way. Soon, we would board Holland America's m.s. Volendam and kick off Perl Whirl 2000.

From the very beginning, the cruise exuded a palpable air of calm. Gone was the normal harried conference mentality where every minute is either spent agonizing over which great presentation to attend or which great conversation to continue in the hall. From the moment we left the harbor, everyone had a laid-back attitude, as if to say ``I can find you later, we have a week together and plenty of time to talk''. And that made all the difference.

Anyone who thought this wasn't a serious conference was in for a big surprise. Although there were many social events, sometimes starting at 10 or 11 PM, the tutorials started at 8:30am and continued until 5 PM. (The schedule was just packed, and I'm not the only one who was hurting around 8am, especially when we had to adjust our clocks into and out of Alaska Time.) Three full days of tutorials were offered across three to five tracks, with the middle day being split into two half-day chunks. Ten extra hours of conference programming were available in roughly ninety-minute chunks before dinner on some nights. Then there was the B-Movie marathon. Then there were the cocktail parties. Then there were all of the other events organized by the ship's cruise director. Yes, the schedule was truly packed.

Even with such a dense schedule, there was plenty of time to unwind. We could all eat a nice long, lingering dinner in the main dining room (or take dinner on the Lido deck in shorts and T-shirts, or just order room service), and gradually reconvene in the Crow's Nest after dinner for a few drinks (or not), and lots of after-dinner conversation until the dusk finally gave way to pre-dawn twilight around 3am.

What were the seminars themselves like? Some of the presenters were incredibly popular, like Mark-Jason Dominus, Tom Christiansen, Tim Bray and Lincoln Stein. The bits and pieces I sat through were simply stellar, without exception. Many people I talked to echoed the common conference complaint, ``there's too much good stuff to see, and too many great presentations conflict with each other''. Sadly, every conference organizer heard this before, and such conflicts are bound to appear as soon as a schedule is produced.

While I didn't sit through most of the seminar program, I did sit through the entire pre-dinner program. Here attendees got to hear some great things people are doing with Perl. The first pre-dinner talk was by Steven Roberts who talked about his Microship project. Some people may remember Steve as the man behind Behemoth, the recumbent bicycle and trailer with more computing power than an average dentist's office. Steve's current project is a pair of boats with similar amounts of computing power that will soon travel the inland and coastal waters of the United States. Steve's team recently realized that projects such as this live and die on volunteer effort, and while it is quite easy to find Perl hackers to write and upgrade Perl CGI programs, it is quite difficult to find NewtonScript programmers willing to donate their time to a project like this. This observation drove Steve and his team to replace a Newton-based management console with a simple web browser running against an on-board linux-based web server.

Steve's talk went over incredibly well, and I was among a small group of people on the boat who couldn't stop talking about it all week. The enthusiasm behind this ninety minute presentation was so much more than expected that it helped everyone involved with GeekCruises realize that we never set aside any time for BOFs (``birds of a feather'' sessions). Once again, the unharried, laid-back atmosphere came back to help us, and we found a block of time that didn't conflict with any other programming and just met beside the pool (conveniently placed near a totally unhealthy amount of dessert).

Two nights later, we were privileged to hear John Clutterbuck discuss how Perl saved the Land Registry System in Scotland, displacing Java, cross-platform toolkits and 4GL environments in the process. The crux of John's talk was about implementing a typical n-tier client-server system. Instead of using a more ``traditional'' tool like Java, Visual Basic or other such environments, John's team used Perl/TK to create graphical client programs. One of the major reasons why Perl was a good choice for this project was that Perl was already in use internally to munge incoming data feeds. When it was time to implement this project, Perl/TK was not another new skill requiring downtime and retraining; it was just another library to use alongside the DBI.

There were other great non-seminar presentations. Tim Bray talked about standards, standards organizations, and encouraged everyone to complain loudly when our vendors don't implement standards that matter to us, implement them poorly, or misimplement them intentionally. The next night, Larry Wall guest-hosted Jon Orwant's Internet Quiz show, which was quite fun. The cruise program wound up about a day later, when Larry was available for an open-ended question and answer session. This Q&A was quite refreshing, because the questions were frequently deep, often thought-provoking, and always brought out an honest, uncensored answer from Larry (unless his wife Gloria pre-empted him).

Oh, did I mention that this was a cruise? With all these Perl-ish events all week, it was easy to forget at times that we were in the midst of some of the most beautiful parts of North America. While we were cruising north, we witnessed an endless parade of tree-lined mountains of British Columbia and Alaska. Our itinerary also brought us into Glacier Bay, where we saw the big ice break apart in the morning and watched for whales in the afternoon.

And what's the point of cruising to Alaska if you're not going to get off the boat and actually see Alaska? Our itinerary offered three ports of call. Our first port was Juneau, the largest city in southeast Alaska. Although Juneau may be too small to have a Kinko's, it is plenty large enough to have one of the finest breweries in North America. Around forty Perl Whirl passengers gathered together to go on a Pub Crawl over Juneau while we were docked. Our first stop was the Alaska Brewing Company, voted best brewery in America three years running at the Great American Beer Festival (they are now enshrined in the GABF's ``Hall of Foam''). After leaving the brewery, we visited some other local watering holes and passed by the wondrous Mendenhall Glacier. Our crawl ended up near the dock at the Mt. Roberts tram. At the top of Mt. Roberts, we found ourselves in bright sunlight at 9 PM on the last day in May, making snowballs behind the observation deck. When life gives you a chance to make snowballs in Alaska when it's warm enough to wear shorts and sandals, it's best to take advantage of the opportunity.

The next day, we found ourselves in Skagway, a small town north of Juneau where the main industry is obviously tourism. The helicopter pad at the end of the dock says so loud and clear. At this point in our travels, I must admit that I welcomed a quiet day wandering through this small town, perhaps reading a bit of the Cryptonomicon on a sunny patch of turf. After a quick stroll, I bumped into Tom Christiansen, who asked me if I was up for a little walk. I briefly forgot that Tom lives in Boulder, Colorado; when he says ``little walk'', most other people interpret that as ``a hike in the woods''. I joined Tom, and we had a wonderful afternoon wandering through a lush green trail that started at the edge of Skagway. When we reached our destination, we were surrounded by on all sides by the largest fjord in North America. All in all, it was the most enjoyable day I spent on the cruise.

After our wanderings through Glacier Bay, we wound up in Ketchikan, our last port of call. I decided it was time wander aimlessly with my friends Monty and Julie Taylor. Julie peeled off early that morning and would later catch a 34-inch salmon on a fishing excursion. Monty and I were up for some local flavor and eventually found Anabelle's, a great little restaurant that serves a stunningly good seafood chowder and beer-battered halibut and chips. Paired with a fresh pint or two of Alaskan Amber, and this is easily the best meal I had all week, and the chefs on board the Volendam provided some stiff competition. If I ever return to Ketchikan, you can find me at Anabelle's.

Speaking of excursions, I didn't sign up for any mountain bike rides, helicopter rides, sea-plane tours, hikes or fishing. Lots of people did, but I'm a city boy who likes meandering through town, and the occasional hike in the woods. And I had a great time doing just that.

All in all, I had a wonderful time on Perl Whirl 2000. The Perl was great and Alaska was too (or maybe the other way around). Will I return to Alaska again? Perhaps. Will I return to Alaska on a future Perl Whirl? Just try and stop me.


  • If you haven't seen it already, you might want to check out the 31 things Tim Bray learned on the cruise. It has pictures, including one of Larry in one of his many tuxedos.
  • It turns out to be surprisingly easy to keep up an 8 AM - 11 PM schedule when the sun doesn't start setting until 9 PM and then comes up again at 3 AM.
  • I can attest to the laid-back attitude on the cruise. Everyone I met was kind and friendly, which isn't always the case at shorter conferences in less delightful venues.
  • In Glacier Bay, if you were quiet, you could hear the glacier creaking and popping as it slid into the sea. I had heard stories of glaciers calving, which is when a piece breaks off and falls into the water. (This is where icebergs come from.) I had always imagined that this was a comparatively rare event, that if you watched the glacier every moment for a whole day, you might, if you were lucky, see a piece break off. Wrong! Stuff is breaking off the glacier all the time and you only have to watch for a few minutes before something happens.
  • Downsides of the cruise ship: Sometimes other cruise activities interfered with the conference. For example, Dori Smith's Javascript class was held in a small room just off the main dining room, where a wine-tasting session was in progress, and it was hard to hear Dori over the amplified voice of the wine expert. Similarly, one of my classes was in the room immediately adjacent to the casino---fortunately there was a door I could use to shut out the slot machine racket.
  • My favorite cruise story: I got to interrupt my regex class so that we could rush over to the windows and look at the whales off the side of the ship.
  • Finally: Adam says it was easy to forget that we were in the midst of some of the most beautiful parts of North America. It wasn't easy for me to forget, and I spent most of my free time just staring out of various windows.

--Mark Dominus

Visit the home of the Perl programming language: Perl.org

Sponsored by

Monthly Archives

Powered by Movable Type 5.13-en