Ten years of collective practice make for an outstanding conference
Celebrating its 10th Anniversary, EuroBSDCon is the longest-running BSD Conference and a reminder that BSD is not a Silicon Valley phenomena like so many other aspects of computing and networking.
I arrived in Maarssen two days early to orient and acclimate myself before the start of the conference. Maarssen is about 40 kilometers Southeast of Amsterdam and is just outside of Utrecht. On my first full day, I took a bus into Utrecht to have lunch with local developer Jasper Lievisse Adriaanse. After a bit of tech shopping at Media Markt near the central bus and train station, we went to a great cafe on the canal and caught up: Jasper is one of the main porters of GNOME to OpenBSD and offers a wealth of knowledge on topics including international export controls and their application to software. Jasper kindly gave me an update on the OpenBSD project and it seems that all is well with that unique group of hikers that is passionate about improving Unix.
One exciting bit of news that Jasper shared is the ARM architecture hackathon scheduled for later this year. Their focus will be on the BeagleBoard and Plug Computers and hopefully will lay the groundwork for the many handheld devices that are coming onto the market. Jasper also reported that suspend and resume on
macppc is making progress, giving a brighter future to the millions of PowerPC-based Macintosh computers that are rapidly being abandoned by Apple. I shared with him Ubuntu's Allison Randal's comment: "We discontinued PowerPC support at a meeting at the Intel campus in Hillsboro." With so many of these systems in schools around the world, it's good to see that a project is taking them seriously.
Jasper also reaffirmed that OpenBSD is a largely what-you-see-is-what-you-get project: They spell out their priorities and really do prefer that individuals to help out by buying CD sets and merchandise, and that they genuinely benefit when a company steps in with the few thousand dollars it takes to support a hackathon. The invitation-only hackathons allow developers to come together and take on a challenge like ARM and other distinct subsystems.
Back in Maarssen, the FreeBSD Developer Summit began early the next morning and continued in one form or another for the next four days. The first day was devoted to three separate tracks, the second to a group track and the remaining days to single tracks during EuroBSDCon proper. I would like to thank the organizer Páli Gábor János for allowing me to attend this invitation-only Summit as a guest. If you haven't been to a Developer Summit, they are a very democratic series of presentations and group discussions, padded with hacking in a dedicated lounge and any available space within the venue.
On day one of the Developer Summit I attended the Documentation, Toolchain and PC-BSD sessions. On the Documentation front, my impression is that a committed team of people with many new faces is in full agreement that they need to take on the daunting challenge of updating the FreeBSD Handbook in preparation for the upcoming FreeBSD 9.0 release. The Documentation group is moving from CVS to SVN along with the FreeBSD base, and are also moving from DocBook to pure XML for easier repurposing of materials. Ports will remain in CVS for the time being. My compliments to Benedict Reuschling for making an effort to reach out to individuals to improve the documentation for the projects they are working on, however small the project is.
The Toolchain discussion attracted almost as many commercial developers as volunteer ones and the main theme was the gradual move from the GNU toolchain to LLVM, the Low Level Virtual Machine compiler infrastructure. Brooks Davis gave a history of how this long-term effort began in 2006 with the BSDElfTools project and took on a new sense of urgency with the introduction of the GPLv3 in 2007. The LLVM project was announced that same year but neither it nor FreeBSD were ready for the inclusion of LLVM in the 2009 release of FreeBSD 8.0. The upcoming FreeBSD 9.0 release however has given adequate time for LLVM to mature and for the FreeBSD developers to incorporate it. While the base OS can be built with LLVM, it appears unlikely that the final release will be built using the new toolchain. The heavy lifting for the migration to LLVM is complete but the structure does not yet exist to specify the ports compiler or to choose between LLVM and GCC on a architecture by architecture basis. Another factor in this long-term move is that LLVM is incomplete as a toolchain: it's debugger is not as full featured as
gdb and it lacks a linker. An improved LLDB debugger is the preferred choice but the developers are also considering the CDDL-licensed PathDB debugger.
I found the linker discussion to be the most interesting part of the session as they literally took out a large blank piece of paper and started adding building a wish list of features they would like to see. This kind of fresh brainstorming is a rarity in the Unix world considering the decades of code they're usually dealing with! Highlights include a desire to use the LLVM-style coding style to facilitate inclusion in LLVM, incremental linking, various optimization strategies and of course compatibility with, but not dependency on existing tools. Kudos to Jörg Sonnenberger of the NetBSD project for participating heavily in the Toolchain discussion.
The full list of desired linker features according to Brooks Davis' EuroBSDCon trip report:
Finally, the PC-BSD session simply highlighted the many ways that Kris Moore is making an easier desktop for both the user and the developers who maintain it. In a way, he personifies the lazy developer who is willing go to a great effort to eventually be even lazier: he has written both his own installer in shell and a package management system that virtually eliminates dependency issues at the cost of a little extra disk space. Architecturally, Kris has made PC-BSD window manager-agnostic and has completely decoupled it all from FreeBSD – going as far as giving the user a choice whether they want to install PC-BSD or FreeBSD during installation. This approach also means that the PC-BSD framework could theoretically be ported to other operating systems.
One drawback of this robustly agnostic approach is that PC-BSD inherits a notable shortcoming from FreeBSD: it's inconsistent suspend and resume support. The developers in the session asked Kris for better suspend and resume but he simply pointed out that he is at their mercy. Hopefully this shortcoming will be resolved in a timely manner and is evidence of FreeBSD's traditional focus as a server OS. Send hikers!
Day two of the Developer Summit started with Work In Progress reports from most of the other sessions and moved on to the Vendor Discussion, a FreeBSD and Virtualization discussion and a FreeBSD 10.0 brainstorming session. Robert Watson gave an overview of his progress moving many Cambridge researchers to FreeBSD, ironically at times with DARPA funding – BSD's original source of funding at Berkeley. He would like to see more handheld devices available to researchers and considers Android compatibility a good place to start. Debian GNU/kFreeBSD and compat_linux may offer solutions here. He also reported on the preference of researchers to deploy systems using pre-configured images. A portable FreeBSD tinderbox build host is one example of such an image, but a move to this model of distribution may require an agreement between the project and a Content Delivery Network due to the significant bandwidth requirements.
Jeroen van Nieuwenhuizen then gave a talk on Why We are not Using FreeBSD that highlighted a need for long-term releases, better support for proprietary software such as Oracle and an overall better support network with mind share and the requisite "butts to kick"/"necks to strangle". Jeroen's key point is that ultimately, clients do not care if a solution is BSD-based or even open source, as long as an adequate support infrastructure is in place and allows for the occasional NDA and proprietary binaries.
The FreeBSD and Virtualization session was highlighted by reports that two vendors are stepping up to complete Xen Dom0 support and UFS resizing. Developers made calls for non-x86/amd64 virtualization support and a management API not-unlike Linux's libvirt. It was also suggested that the installer could be updated to produce guest images for virtualization solutions like jail, Xen and BHyVe. The organizers kindly let me give a presentation and demo on BHyVe, the new hypervisor that Neel Natu and Peter Grehan announced at BSDCan in May. Finally, a good summary of the FreeBSD 10.0 discussion can be found online.
At last came the actual conference.
The schedule of talks is online as are many of the corresponding presentations and slides. The opening keynote described how the Dutch certificate authority DigiNotar was hacked and did not handle the situation responsibly, ultimately resulting in its control by the Dutch government. The speaker took Henning Brauer's mild heckling in stride and confessed that there is no simple solution to the problem. The subsequent talks provided just about the best balance of FreeBSD, NetBSD and OpenBSD topics I have seen at a BSDCon. Even the timing allowed for a good cross-pollination of developers, making for many packed rooms. While the BSD projects are often perceived as silos of development and usage, this really isn't the case. The mutual respect between developers was genuine, even when overtly questioning one another. When face-to-face, this rapid interplay can make lasting impressions on the projects from firm technical decisions to subtle adjustments of strategy. As Jasper highlighted about the Hackathons, it is critical for developers and users to work together in person. EuroBSDCon provided this opportunity, delivering just as much value between the sessions as during them.
Wrapping up the first day was Kirk's History of BSD keynote which was fun as always and if you haven't see it, you may want to check out the short version or consider buying the feature-length version.
That evening, the social event was held at the very cool Railway Museum in Utrecht in honor of EuroBSDCon's 10th anniversary. The organizers kept the location of the party secret and surprised everyone with the vast space and good food. Tours were offered in English and Dutch and all in all it was as nice, low-key event. I cannot imagine the soft-spoken Dutch hosting an awards ceremony and live music or something.
The next day continued much like the first and I will do my best to tell the story of it and the social event in photos.
We should all thank everyone who helped make EuroBSDCon 2011 and the FreeBSD Developer Summit such a success because of the significant long-term impact that events like these have on the projects. Program Chair Paul Schenkeveld deserves our special gratitude for his humble leadership and good humor despite his exhaustion. Paul is unique in that he has attended every EuroBSDCon and sported the hands-down best Unix beard at the event.
Finally, EuroBSDCon would not be possible without its sponsors, the Platinum and Gold sponsors being:
See also EuroBSDCon 2011 in Photos
Copyright © 2011 – 2014 Michael Dexter unless specified otherwise. Feedback and corrections welcome.