My OLS trip would not have been possible without the support of the following people: Christopher Beard, Phil Schwan, Mike Shaver, and Andrew Hutton. I owe all of them a big thank you.
My story begins on Thursday. I was scheduled to catch a 2:50PM flight out of Dulles Airport (IAD). That way, I would have been able to make it to Ottawa in time for The Puffin Night Out, a nice party which I managed to catch the tail end of anyway (after taking a flight later that evening). Customs was a tad on the scary side, but then again, I am 16 and was all alone.
I arrived at the hotel a little bit after 8, so that I would have time to register. Registration went very smooth, and in no time, I had my conference bag, complete with conference shirt, proceedings, etc. And yes, my badge really did say "Slashdot Wanker". Things like that happen when you know the conference organizers :)
I first headed off to Nat's talk. We chatted for a few minutes before he started, and I was introduced to his very beautiful girlfriend Rhett. Nat gave a very technical talk about the GNOME mailer. The GNOME mailer is going to attempt to be "not your mother's mail client". Instead of being folder based like traditional mail clients (filtered messages are placed in a folder which is tightly associated with a specific file on disk), it will be a query-based client. Messages can be sorted based on traditional criteria, but also things like keywords. This becomes a complicated thing after you realize that messages can do things like fit multiple criteria. The example given was a thread about gazelles: if I want to find all messages that are related to gazelles, I can do a search, but I might miss "me too" and other similar messages. Nat says that Bertrand Guiheneuf has done a lot of good work on the back-end ("Camel", which happens to be closely modeled after the JavaMail API), and that the front-end will come soon.
The other important point of Nat's talk was the fact that it will make heavy use of Bonobo for the front-end. The mailer will use Bonobo components (similar in concept to JavaBeans or COM objects) to do things like display text, vCards, HTML, in-line images, etc. It also will use a mail composition component, so that with proper hooks, even emacs could be used to author messages. The program will also be written in a scripting language, so that hackers and possibly even end-users can easily customize it - some may wish to not see certain buttons if they never use them, or may want to customize the behavior of a delete button when building an idiot-proof mail client.
After a short break, I headed back to the same room so that I could attend Phil Schwan's interesting InterMezzo talk. InterMezzo is a distributed filesystem that was initially intended to replace Coda. Coda is 500,000 lines of C and the internals are only well known to not even a handful of people on the planet. By contrast, InterMezzo is about 2500 lines of C and 5000 lines of Perl ("don't worry, no one liners here").
InterMezzo is a distributed filesystem, but it is not at all like NFS. With InterMezzo, there is very little difference between the client and the server. InterMezzo features the following: data resides in a native filesystem (ext2, most likely), the clients should exploit existing filesystems and should implement a cache at the kernel level, objects should have meta-data suitable for disconnected operation (so that unlike NFS, I can simply unplug my laptop, run off to wherever, and not need an internet connection to do my hackery), use TCP and other existing protocols for things like synchronization and security (rsync, ssh, SSL). Version .002 (which is actually quite functional!) was released about 2 weeks ago. They encourage people to test it.
After Phil's talk, it was time for lunch. A medium-sized mob of us went to the Hard Rock cafe, a 5 minute walk. This was my first time in a Hard Rock, and it seemed nice enough. I was finally introduced to Steve (from VA Linux Systems), and we chatted for awhile after drooling at his laptop (Sony VAIO 505TR - mine should arrive tomorrow :) Actually, I owe him a thank you...
We all headed back a few minutes late, but I still managed to catch most of Miguel's talk about Bonobo. Miguel says that Bonobo is essentially finished - Nat spent last week documenting it, and that a tarball will be released soon. Miguel used several pictures to show the role that CORBA/ORBit play in GNOME. He also showed off Glade, "even though it has nothing to do with Bonobo". Glade is very cool because it allows the UI of a program to be customized at run-time rather than compile time. It does this by using an XML file to store the location of widgets, etc. I'd encourage anyone who hasn't to look at it.
After Miguel was done rambling, I walked over to the IA-64 talk, given by Stephane Eranian of HP labs. Stephane told us that HP Labs has been working on porting Linux to Merced for well over a year. They have been using a simulator because there is no Merced hardware available yet. He explained neat things they did with the simulator, as well as some of the features of the chip.
Because IA-64 is based on EPIC, it requires the compiler to lots and lots of work, especially to take advantage of the chip's advanced features, such as predication and control speculation. Compiler authors also must be aware of "rotating registers", Not-A-Thing registers, and various other things that were enough to give me a headache just thinking about them.
The good news is that Linux already runs, and runs quite well on the simulator. HP Labs was behind the porting of the kernel, and CERN ported libc. By the time the chips come out, Linux will be running on them, and very likely with SMP support. Because the development environment is finished, they are now working on trying to get large apps like emacs and X to run.
This was the last talk of the day, which meant it was time for everyone to board the bus to go to the Phoenix Multiplayer Gaming Facility. PMGF was a large place with booths for people to play huge games of Half-Life, Quake 2, Need For Speed, etc. It was the first time I'd played Half-Life, and I did quite well - I managed to actually win a round. But it got boring after a little while, so I was very happy to see Ryan Tilder and Mike Shaver show up to rescue Alan, Jes, myself and others. We all headed off to a nice restaurant called The Arrow and the Loon. We chatted for a few hours, and everyone had interesting stories to tell (especially Mike, but I don't think he wants me to go into the whole Vaseline incident...) Oh, and the waitress had quite an attitude, too ("I'll have a fuzzy navel" "What sort of fruit are you?", "Here you go, princess"). I sort of have to feel sorry for Zach...
I decided to go in a bit late on Saturday, so the first talk I went to was Zach's "Ninja Adventures in the Stratosphere" talk. Zach used some novel techniques and emphasized performance over portability to get some extremely fast servers. He explained what was right and what was wrong about his approaches. Basically, threading can be quite a pain in the ass. On a related note, I'm packaging hftpd for Debian, so there should be a package uploaded soon.
Next was lunch. We ate in the mall (it was connected to the hotel) at an interesting place. When you went in, you were given a ticket and then you could go to any of the little special booths and pick from whatever they had, and marked it on your card. I sat across from Arjan (khttpd guy) and David Huggins-Daines. We had an interesting chat about telco monopolies and high-speed internet links. Luckily, I only was a few feet from the table when I remembered my card. It's a good thing, too, since I didn't have $100...
After lunch was the much hyped FreeS/WAN talk (I believe there were a handful of CSA agents and maybe even an NSA person or two). It wasn't what I expected, but was still enjoyable nonetheless. The audience seemed to enjoy the "Analogy to Sex" chart. See, when you have no authentication and no encryption, that is like having sex with a stranger in public.
Then it was time for Alan's keynote. The presentation started with Gavriel State from Corel introducing Alan, but he took the opportunity to dispel myths about WINE. I probably turned bright red when the slide "Don't Believe Everything You Read On Slashdot" came up. I saw Ryan start looking for me as soon as he saw it. Everyone around me told me I should stand up and take a bow while everyone clapped, but I think I blew my chance (I'm only modest at all the wrong times ;)
Alan's talk was quite fascinating after everyone got over the laughter from the bluescreen he took a picture of on the departures screen at Heathrow. Alan discussed traditional proprietary software development models and free software development methodologies, and then compared them to each other. He discussed some of Brooks' lessons (and his law) from MMM (The Mythical Man Month). Brooks' law states that adding more programmers to a late project only makes it later. GNOME is a perfect counterexample. It started small and was going incredibly fast when it had over 200 people (as of Saturday, there were 319 CVS accounts). He also said that regardless of whether or not they officially have titles, there usually is a small set of core developers. He stressed that the way programmers communicate with each other is a key reason for free software working so well. In the proprietary software world, programmers must go through a management hierarchy instead of directly communicating with each other.
After the Alan finished and the prizes were given away and a short "presentation" by the president of rebel.com was finished, everyone headed to the Hard Rock for free food and beer (the beer was only free for 2 hours, due to the fact that they were figuring 5 drinks/person/hour). I left the Hard Rock early and headed down to meet Federico for a movie. Four of us (Federico, Ulf, Mark Steele, and myself) all went to go see "Lola Rennt", aka "Run Lola Run", a very cool German film. I'd explain more, but it's beyond the scope of this report and the IMDB has enough to get you started. Highly recommended.
After the movie, I headed over to the Vineyard and met Alex deVries, Zach, Mike, et al. We headed over to meet Jes and some others at a local pub(ish place). Had a nice chat with Matthew Wilcox, and finally met Mike Shaver's fiancee, Tyla. Went back and finally turned off the lights for sleep at about 2:30am
I had to miss dim sum at 11 since my plane left for Toronto at 6:45am. I met Federico, Jonathan Blandford, and Miguel at the hotel a little after five (ugh!). We ate a small breakfast and then went to the airport. We left Miguel in Ottawa, but Federico, Jonathan, and I all went to Toronto on the same flight. Jonathan was kind enough to help me with some customs forms, and also told me about the root of "aware-of-vacuity", his machine's name at Red Hat.
We then went our separate ways and I flew back to BWI on a small, ~50 passenger Dash 8. All in all, it was a most wonderful and amazing conference. I eagerly await next year's.