I've been back from my first Geekcruises trip (Randal's 29th) for two days, and the rooms are just now starting to settle down. After being at sea for a week, the inner ear gets used to mostly subtle rolling, and in the sudden absence of rolling shows what it had to do to make me not realize it. It just counter-rolls.
A conference on a ship is a wonderful idea. There is no where for you to go, really. I remember Esther Dyson (and now Tim O'Reilly's FOO Camp) talking about how conferences should really be in uninteresting, isolated places so people can't sneak off or fragment into groups. On the other hand, a cruise ship is all about having fun things to do all day long, so even though you're trapped on the ship, you could easily hide out in the many lounges, clubs, and other spaces. Even in such a small place it's easy to hide if you really wanted to (the absence of cell and wireless signals surely helps that).
The latest Geekcruise (and that only applies for another week) hosted Perl Whirl 2005 and Linux Lunacy 2005. I didn't pay too much attention to the Linux track since the Perl track kept me plenty busy. Indeed, with all of the available cruise activities and the conference, there isn't time for ad hoc or BOF sessions. We made a weak attempt to have a Firefly screening night (since some of us saw Serenity (a most excellent movie, in my opinion, which is saying a lot since I's not a huge Joss Whedon fan like my wife) the night before we left port), but it just didn't work out.
Part of being confined to the ship (for the non-swimmer, non-shark-food crowd, at least) is your dinner assignment. The ship has two seatings in the main dining room. You don't just show up whenever you want. Along with that, you are assigned to a table for dinner. You don't have to wait for a hostess to seat you (after the first night when you need her to show you where your table is). You sit with other Geekcruisers, and Neil either has an ingenious plan for seating arrangements so people meet new people or it just sorta works out. Later in the week we randomized the seating ad hoc by moving between the tables reserved for Geekcruisers. Each table seats 6, so it's small enough that everyone can talk to eat each other, and changing tables gets you a whole new crowd.
Allison Randal gave the latest Perl 6 talk, and Larry and others helped her correct her slides for the most current round of changes. I wouldn't really be surprised if she gave the talk this week and had to change some of changes back, either. The language police are thinking about what Perl 6 should look like and not every linguistic side effect has made itself known yet. However, Allison often dropped down into Pugs to see what Autrijus et alia thought it should do. I like seeing Perl 6 in action, for a rather large subset of Perl 6, with interesting error messages for the rest (e.g. 'Unexpected "i" at line ...'). I teeter between thinking a cruise would be a perfect place for a Pugs hack-a-thon (it's mostly in international waters, you're trapped, there's free room service) and that the Pugs crew would get anything done (Autrijus doesn't want to come to the US, the country of embarkation, there are too many cool shore excursions to distract everyone, and there's free room service). There were rumblings about what Camel 4th Edition might look like and when the writing would start. Don't get too excited: it won't be on the shelves this christmas.
Larry Wall had a question and answer session and spent so time talking about his father's influence on his thinking with his constant (and intentional) word mangling (e.g. "interselection instead of intersection). We know who to blame now. His father and my father-in-law apparently have the same word disease, which led to a discussion of the Chumash native american language which my father-in-law has partially helped to revive (with no ancestral connection and only an interest in obscure, mostly dead languages), which then lead to hours of Larry trying to figure out who else in the Perl world is interested in native american languages (finally settling on Sean Burke as I recall).
Mark-Jason gave his "Programming with Iterators and Generators" talk, which is always a pleasure to hear even if I always manage to catch the last hour of it. In short, as Nick Clark says, "Not only should you buy Mark's book, you should read it". I got to talk to Mark more this trip than at any other time I've seen him at conferences I think, despite his 15-month daughter being with him most of the time. We talked briefly about his upcoming book which I had a chance to review for the publisher, and I was somewhat reluctant to talk about it at first because I had made some pretty harsh comments about Mark's proposal. I was glad to hear, however, that the publisher didn't kill the book just because of what I said and that some of my comments were actually useful to Mark. He disagreed with some of the stuff I said and simply ignored it. That seems fair enough. I'm glad I sent back my comments now; I had considered just not replying to the publisher since I didn't have many nice things to say at the time. Don't mind me though: published books look a lot different from the proposed books. Mark-Jason may call you a "retardo", but he does listen even if he disagrees. ;) At dinner one night, Neil was talking about how smart Mark-Jason is ("the only one I know who is smarter than Randal", or something like that), and Randal, out of modesty mostly, said, "Well brian's smarter than me", to which I had to say "Don't put me in the same boat with Mark though, because I'm not that smart", then realized Neil had put me on the same boat as Mark, and that I had asked him too, indirectly, since I wanted to be a speaker. That little turn of phrase was most pleasingly, although only after the fact because it was inadvertant. The geeks at the table launched into the usual pun and metaphor exchanges.
This time I had to choose between Mark's talk and Randal's "Programming with CGI::Prototype" class. I chose Randal's class partly to suck up to the boss but also to find out what else he's changing on me. CGI::Prototype is some cool technology once you get into it, and the problem is it's getting even cooler. Randal showed me some of his CGI::P based stuff for another client, and I showed him my CGI::P based stuff for my TPR business dashboard. During the discussion I learned why this CGI method doesn't work. I've known about that problem but just worked around it without investigating.
[% self.CGI.end_form %] # gives ARRAY(0xXXXXXX)
sub endform { my($self,@p) = self_or_default(@_); if ( $NOSTICKY ) { return wantarray ? ("") : "\n"; } else { return wantarray ? ("",$self->get_fields,"","") : "".$self->get_fields ."\n"; } }
[% self.CGI.end_form.join("") %]
Re:Helsinki connection
brian_d_foy on 2005-10-13T15:51:46
I got a "Forbidden" error for that link, but I could see it in a slightly different form: http://taivasalla.net/2004/2004-01/img/040108_0953.jpg.Re:Helsinki connection
jhi on 2005-10-13T15:57:57
Umm, interesting: I cannot access the image via use.perl.org, I get a Forbidden... but you can cut and paste the link to your browser if you want to see Carnival Miracle As She Was Built.