This year's annual BSD conference was held in gorgeous San Francisco. While the conference itself was great fun, I have to admit my initial attraction was to San Francisco. I left Detroit in an ice storm, and I landed in seventy-degree evenings and warm ocean breezes. While this was the biggest gathering of BSD's Free, Net, and Open camps, plus BSD/OS and Mac OS X, it was a nice bonus to be able to walk around in shorts and a T-shirt.
The conference started with two days of tutorials. Alan Clegg does a wonderful security tutorial, which I highly recommend. Kirk McKusick gave his classic, two-day BSD Kernel Internals class, which is a great way to learn exactly how the kernel hangs together. Apple presented an OS X programming tutorial. I wound up in Greg Lehey's kernel debugging workshop.
Greg certainly knows his stuff and was able to communicate it well. The most useful part for a systems administrator was the first section of the class, in which he demonstrated various ways to look into the kernel. I've been running BSD systems for several years now, and I still gleaned a few nuggets of cross-platform wisdom from this initial couple of hours. Greg demonstrated how to debug a running kernel and how to capture and examine a panic. A good chunk of the class was devoted to GDB macros, a useful but poorly understood topic that lacks any useful documentation. Kernel debugging is one of those topics for which, in Greg's words, "you must know everything at once." I left with a thousand different facts sloshing around in my brain. At least my head hurt less than it did after McKusick's class last year! The day seemed dogged by Murphy's Law, but we persevered and learned a lot.
Oddly, the first Birds of a Feather sessions were scheduled for Tuesday night. The conference started Wednesday. As you might imagine, attendance was nonexistent.
I'm not going to rehash every single talk in this column; you can get a full set of conference proceedings from USENIX. Here are some of the highlights, though. Many of the presentations were excellent and demonstrated what we already know: NetBSD is vastly portable; Mac OS X is easy to use. While these talks were interesting, here are some of the presentations I found most impressive.
The main conference opened with John Mashey's keynote on software engineering. He reprised talks he gave in the late 70s and early 80s, with the original slides. It was both funny and painful. Advice that was considered heretical in those days is commonplace today. On the other hand, he demonstrated just how little software engineering has changed. We're making the same mistakes we made twenty years ago, and we're still failing to fix these problems. I'm left with a definite impression that we have a problem, with no real idea about how to fix this problem in the real world.
Warner Losh discussed upgrading FreeBSD's PC Card system to support PCI connections as well as ISA. Warner's talks are always fascinating and can usually be summed up this way: "I've just returned from a six-month tour of Hell. Would you like to see my pictures?" This was an impressive sketch of what free software authors go through to provide their work to the public.
One of the talks I found most interesting was Hiroki Sato's discussion of translations of the FreeBSD documentation. Hiroki doesn't converse well in English, but he made a great effort to bring the needs and requests of the translators to us. As a result of his presentation, those of us in the Documentation Project are paying more attention to the needs of our translators. This was one example in which a face-to-face meeting caused greater action than email ever could.
Of course, my talk on the FreeBSD Documentation Project was the best in the show. In the interest of modesty, however, I won't dwell upon it other than to say that the dancing elephants, cancan dancers, and open bar were well received. You should check it out next time.
Wednesday night we had another round of Birds of a Feather sessions, which were much better attended than the first round. I spent the evening with the documentation crew, first discussing how to get a handle on the Doc Project and then retiring to a bar to discuss everything else. Of course, I was up far too late and missed the following day's keynote.
The most exciting presentation wasn't from a BSD hacker, but a user. Dr. Gunther Schadow, of the Regenstrief Institute for Health Care, put together a remote access IPSec VPN for the doctors of the clinic. Dr. Schadow isn't a programmer; he's just an interested person who was able to use freely-available BSD tools to produce an inexpensive and reliable video-conferencing solution. Thanks to us, doctors can now see their patients from home. Using FreeBSD over a comparable proprietary solution saved them thousands and thousands of dollars. While I'm excited to know that our work helps people, I'm somewhat disturbed at medical facilities' response to this sort of technology; it's frequently used as an excuse to fire nurses, aides, and support staff. (Anyone who has visited a hospital knows that the last thing they need to do is cut staff.)
For me, the best part of the conference was the BSD Status reports. Kirk McKusick moderated a panel with representatives from NetBSD, OpenBSD, FreeBSD, and Apple. Each panelist had fifteen minutes to discuss various projects and recent efforts. The rather basic panel had the most exciting moment of the whole conference: In a discussion of SMP APIs and conflicts between the various BSD branches, the author of NetBSD's SMP system stood up and asked if the FreeBSD-BSD/OS SMP API supported certain types of locks. When he found out it did, he said he'd use it. This is the sort of cooperation that takes days to settle over email, and is almost instantaneous face-to-face.
My only real complaint with the conference was the anticlimactic ending. The last presentations ended, and the conference was over. There was no farewell or wrap-up. Still, overall it was very educational, informative, and productive, both for me and the Project. If you have the opportunity to go to the next BSDCon, I'd highly recommend it.
Read more Big Scary Daemons columns.
Return to the BSD DevCenter.