Ottawa Linux Symposium 1999:
A Trip Report by Julie Lavoie and Dana Echtner

The growing acceptance of open-source software is one of the most revolutionary developments in the history of computing. The extensive peer review, unrestricted information flow and ability to benefit from the contributions of programmers all over the world that have characterised open-source software development are beginning to be recognised by more traditional business environments as consistently producing highly robust, secure and flexible software. It is truly an exciting time to be a geek.

Featuring conference t-shirts emblazoned sporting an Eric Raymond quote "I want to live in a world where software doesn't suck", the Ottawa Linux Symposium is a perfect example of the dedication to the sharing of knowledge that makes the hacker community such a dynamic and exciting place to be in. This report details Dana Echtner's and my experiences at this highly technical and rewarding conference.

Thursday Night, July 22nd:

Arrival; Settling In; Puffin Group Welcome Reception

(Dana)
The conference kicked off Thursday night with a reception hosted by the Puffin Group and HP. It was fairly quiet and mostly just people introducing each other and many of the locals running into old acquaintances. I was happy to see Ian D. Allen, the former NCF administrator. He was at freenet at the time that I got my very first internet account (a menu-driven freenet account - it wasn't much but it did have e-mail and netnews capability!) He was the one of the first to inspire me learn more about Unix and computers in general.

Friday, July 23rd:

The GNOME Mailer

(Dana)
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.

I am curious to try out the final product. It sounds like the GNOME people are very well organized and have things under control. One of the point that Nat made was that the whole framework under GNOME was very modular and thus enabled a lot of different people to work on various bits without stepping on each other's toes.

Kernel Programming and Debugging (Parts I and II)
Jes Sorensen, CERN

(Julie)
I was already familiar with the broad lines of this material from Steven's COMP 444 class, as well as Rubini's _Linux Device Driver_ book, but Jes Sorensen still had a lot of practical information to convey:

He went on to explain the various kernel subsystems, with a focus on those more relevant to device driver writing, which is how most people will start doing kernel programming. This was a very good introduction to kernel hacking. Some topics:

His talks were amply illustrated with code samples taken from his own code, and other code samples from the kernel. He repeatedly referred to the source for documentation purposes.

One quote was particularly memorable to me:

"I'm kind of an old-fashioned kind of guy. I prefer command line interfaces; if I have a question I look in the source, if I have a question the source can't answer, I ask the author. I'm not one to ask about user-friendliness issues."

I like that. :-)

Memory and File Management in the Linux Kernel
Pat Beirne, Corel Corporation

(Julie)
This was probably one of the most useful and interesting talks at the conference. The room was packed; I had to seat myself on the floor. Pat Beirne is an animated and knowledgeable speaker; he has a wry sense of humour that really shines thru. Apparently I was not the only one to appreciate his speaking style and subject matter: I later saw a group of people clustered around a whiteboard in the middle of hallway, with Pat explaining away about dynamic libraries.

Topics included:

Simple DirectMedia Layer (Loki)

(Dana)

In retrospect this was the best one of them all (along with the keynote) I wasn't all that interested in the first place (never though of programming games before) but in the end it turned out far more intriguing than all the others. (at least for me anyway) :) Sam had his talk very well prepared and used easy to understand examples - one of the elements that many of the other talks lacked. The whole lecture was coherent, interesting, and easy to understand, even for someone who has limited programming experience.

The talk was mostly about SDL, a library that Sam Lantinga had written (before Loki even existed). It allows for easy porting between Linux, Windows and BeOS. (and more operating systems are being worked on, including IRIX and MacOS)

After the conference I went home, downloaded the libraries and tried coding with them. I was quite impressed, I was able to get something on the screen in one night.

Implementation of a Linux IP Wormhole to Achieve Pseudonymous
Communication on the Internet
Ian Goldberg, Zero Knowledge Systems

(Julie)
I had already attended a talk on a similar topic, at a much lower technical level that this one, which hand-waved disappointingly on a lot of interesting areas. Fortunately, this talk was a lot more technical.

The talk was a technical overview of the Freedom Network currently being developed by Zero-Knowledge Systems. This network would provide users with complete pseudo-anonymity online, thru a client that anonymizes net traffic by encrypting it and routing it thru a succession of servers. http, ftp, email will appear only as coming from a pseudo-nym in the network that is untraceable to any real-life identity. This responds to a growing concern about privacy online, where sites like deja-news archive usenet posts and web sites can tailor their banner ads by looking at which web site you just came from. There a lot of existing technologies that address online privacy, like onion-routing, nym-servers and anonymous re-mailers, but nothing exists that is really usable by the general public. This is what they are trying to implement.

They are dealing with some highly interesting cryptographic and networking challenges. The IPSec development team sat in on this talk, and flooded Ian with questions. Notable answers include "That's a really hard problem: why do you think I'm getting a Ph.D out of this?" :-)

Gnome and Bonobo

(Dana)
This talk was very similar to the GNOME mailer talk but instead of focusing on the mailer itself it talked about Bonobo, the framework underneath. Miguel explained much about the various components and the importance of simple standard interfaces.

It sounds like once this is released Linux will be ready for the big desktop applications. (Basically Bonobo will make it possible for all applications and object to communicate in a standard way. The example that was given was a spread sheet embedded in a text document. Since both the text document and the spread sheet objects will have standard interfaces, it will be easy to make them work together) This will also allow things like drag-and-drop.

Again, modularity was shown to be very important in these large multi-people projects.

Porting Linux to IA-64

(Dana)
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.

Evening:

(Julie)
Attended Zero-Knowledge party. zks rented out an entire entertainment centre, and buses to take us there, so that we could party and play networked Half-Life. Cooool.

I had the opportunity to meet a number of people from Linux-Quebec that I knew from online, but had never met in person. One of the Linux-Quebec people, Benoit, is working at Corel for the summer, developing WINE. I played some Half-Life. To quote Paul Thompson on my Half-Life skills: "Wow Julie, you really suck". ;-)

Later that evening, I met Bill Haley, who worked with Mouse at McGill for a while.

Saturday, July 24th:

IP QoS
Jamal Hadi Salim, Nortel Networks

(Julie)
Jamal talked about his work with the traffic shaping capabilities of the 2.2.x kernels and how they can used to ensure IP quality of service, for example, giving priority to higher-paying client's packets during period of high traffic or putting limits on the bandwidth a particular client can consume. The functionality offered by the traffic shaping package is fairly advanced, and this talk was all the more valuable for the fact that he detailed features that are new and not very well documented. This talk was a really good opportunity to broaden my networking knowledge.

Will Code for Hardware

(Dana)
Quite interesting but not very well structured. It turned out all right because many people had questions which kept the talk going in interesting directions.

Nathan talked about the difficulties and the perks of writing drivers for new cards. His task was made much easier by the cooperation of the company but he pointed out that even if you do have the specs it's not so easy because of then the specs are not what's really in the hardware.

FreeS/WAN IPSec for Linux
Richard G. Briggs, FreeS/WAN

(Dana)
This one was the one which I wish all of SSG could have seen. It was basically about secure IP tunnelling. With this business of a secure path between here and RISQ, I can't help but think that this is just the thing we might need.

Richard gave us some basic guidelines about setting it up and then he explained some of the problems they had and how they deal with them.

(Julie)
Richard reports that FreeS/WAN runs well with the 2.0.x kernels, but that the 2.2.x series (as of this writing, the latest stable kernel releases) are experiencing problems with IPSec. Interestingly enough, one of the experimental distributions I run at home (kha0s linux (motto: "Better Living Thru Extreme Paranoia")), is in the middle of dealing with issues surrounding IPSec and the 2.2.x kernels, so I follow developments in this matter with a great deal of interest. One of the kha0s people reporting from Chaos Computer Camp in Germany this past weekend says he spoke with some of the IPSec people *there*, and the problems are being addressed. :-)

For more information on the FreeS/WAN project:

http://www.xs4all.nl/~freeswan/doc.html

Ninja Adventures in the Stratosphere, or Two Attempts At Server Optimisation
Zach A. Brown, Red Hat Software

(Dana)
As an exercise in programming optimised software, they have designed a super fast httpd and ftp server. Neither is production quality but it was interesting to hear what kind of approaches they took at make the software fly.

(Julie)
This was one of the more hard-core programming workshops that I attended. He was fairly honest about the production-readiness of the code ("well, this bit here is a really ugly hack".), but noted that, despite the fact that the servers were written more as "proof of concept" projects, some of the ideas he discovered in writing them have real potential to improve existing production code.

Inside the Lizard: A look at Mozilla Technology and Architecture
Mike Shaver, The Mozilla Organisation
Micheal Ang, The Mozilla Organisation

(Dana)
This one was also interesting but I had had enough of sitting and paying attention for one day so I saw only the beginning.

Again, the stress was on modularity and consistent interfaces. On the conceptual level this was exactly the same and the GNOME/Bonobo talk. Standalone object communicating via well defined interfaces.

(Julie)
I attended the first part of this, and finding it fairly boring, I decided to take a small break from a fairly hectic schedule to rest and hang out.

Keynote Address:
Brooke's Law Revisited: Software Engineering Lore in a free software world
Alan Cox, Building #3

(Dana)
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.

(Julie)
Some of the key advantages of open-source, according to Alan Cox:

Some of the risks of open-source:

I had already read the two seminal works on software development in the traditional and open-source software world: Frederic Brooke's_the Mythical Man-Month_ and Eric Raymond's_the Cathedral and the Bazaar_, before attending this talk. Alan's talk reflected his extensive software development experience and he both brought up new ideas, and cast new light on known ideas about software development. As I feel that the growing acceptance of open-source software is one of most revolutionary things to happen in our field, this talk was quite inspirational. It is truly an exciting time to be a geek. :-)

Evening:

(Dana)
That evening I got to go out for dinner with Gavriel State and Pat Beirne from Corel, Sam and Michael from Loki and a couple of other people whose names I didn't catch. That was also extremely educational. It's amazing how much more one can learn over good Thai food compared to a long boring class. (Gavi, Sam and Michael talked much about programming graphics - something I have very little clue about) (For now anyway)

The party Saturday night was also quite fun, though perhaps not quite as educational. :)

(Julie)
Rebel.com party: boring party. We ditched it to go play lasers from my hotel room in the storm. :-)

Sunday:

(Julie)
Dim Sum: I was attacked by squid.

Going back to Montreal:

Got extensive brain dump on group theory on the way back.

Notable Points:

(Julie)
A lot of the speakers made themselves available to answer further questions after their talks, with some even conducting impromptu tutorials in the hallways. It is this very type of dedication to the sharing of knowledge that makes the hacker community such an interesting and dynamic place to be in.

The high technical content of this conference makes it especially valuable for technical folk. I later learned that companies were *explicitly* asked to eschew the more marketing-related aspects of their material and focus entirely on the technical sides of their subject.

(Dana)
Overall this was a wonderful conference. Between the formal tutorials and meeting people in the same field with the same problems and idea, I must have learned more that weekend than in a good semester of school.

(Julie)
In fact, this conference was so good the hardest part was deciding what to attend and what to miss out on. Sending both Dana and me proved to be an excellent idea, since we were able to cover more talks between the both of us, and *none* of these talks were really worth missing.

I would *definitely* put this conference on the *must-attend* list for SSG/Unix folk.

(Dana)
Acknowledgements: Thanks for Justin Maurer of Slashdot for letting me recycle his descriptions of some of the tutorials!


jlv@alcor.concordia.ca Back to my home page.