Supporting those who support us
For eleven months every year, Tarsnap, my online backup service, supports me. (Occasionally people express surprise that Tarsnap has grown large enough to be my full-time job; suffice it to say that business is good.) December is special: in December, Tarsnap supports FreeBSD. Every year since 2009, I've made donations to the FreeBSD Foundation equal to Tarsnap's profits for December; this year I decided that it was time for Tarsnap to become a sponsor of BSDCan — a conference I've been attending annually since 2005 — but the rest of the money is still going to the FreeBSD Foundation.Why do I make these donations? I've written in the past about how, as a FreeBSD developer, I care about the success of FreeBSD, and contributing money is partly a substitute for the fact that I can't contribute as much time as I would like to; and last year I wrote about how donating to charities is largely about helping to create the world we want to live in. This year I'd like to talk about another reason for donating: Supporting those who support us.
Aside from my time as FreeBSD Security Officer, I'm probably best known within FreeBSD as the guy responsible for getting FreeBSD to run on EC2 — like most FreeBSD development, this was a case of satisfying my own needs, since Tarsnap runs completely within Amazon Web Services. One of the common problems users of virtualization systems (EC2 included) complain about is fixed disk sizes: Rather than providing an install image and allowing users to partition their disks, as we do for "normal" FreeBSD installs, I provide a pre-installed FreeBSD image — on a pre-determined size of disk. Thanks to the flexibility of Amazon Elastic Block Store, you can always attach more disks; but there are times when it would be more convenient to simply have a larger root partition. As a result, I'm very happy to note that in 2012 the FreeBSD Foundation awarded Edward Tomasz Napierala a grant to implement growing of mounted UFS and ZFS filesystems — in the future it will be possible to launch a FreeBSD EC2 instance with a larger root disk and resize the filesystem (from inside the instance, while FreeBSD is running) to use the extra space.
The FreeBSD Foundation has also funded development work which affects me personally. In addition to being a FreeBSD developer, I'm also a FreeBSD user — not just on servers, but also on my laptop. As such, I was very happy to see Konstantin Belousov's work on GEM, KMS, and DRI to allow the full functionality of Intel graphics chipsets to be used. While I was able to use FreeBSD and X on my laptop previously, via the vesa driver, using the Intel driver makes everything feel much "snappier", and also reduces the CPU usage (since graphics are now being rendered by the GPU, not the CPU) with a resulting improvement in my laptop's battery life.
Most of my work with FreeBSD — and a large part of why I use FreeBSD rather than any other operating system — has been in relation to security, and there too the FreeBSD Foundation has been recently involved, funding Pawel Jakub Dawidek to work on two projects: one developing a userspace framework for Capsicum-based applications, and the other for secure distribution of system audit records. I've always believed in making systems more secure by designing them so that even if an attacker manages to exploit a vulnerability they lack the capability to cause serious damage, and these two projects are a significant step in that direction.
Beyond directly funding FreeBSD development, the FreeBSD Foundation also plays an active role in supporting FreeBSD development indirectly. One of the most important contributions they make is by sponsoring conferences where FreeBSD (and occasionally other BSDs) are discussed. Of these, BSDCan is the longest-running, and is particularly close to my heart, as I've spoken there eight times; but they have also sponsored EuroBSDCon, AsiaBSDCon, BSD-Day (Vienna), KyivBSD, NYCBSDCon, MeetBSD California, and BSDday Argentina over the past few years. While BSDCan is the only one of these I've attended, I've seen enough discussion on IRC to know that they are all useful venues for planning out what work needs to be done and who will be doing it; and I hope that in the coming year I'll manage to attend at least one other BSD conference.
As I write this, the FreeBSD Foundation's "fundraising thermometer" stands at $461,199 raised in 2012 out of a target of $500,000. This is already a record — last year the Foundation raised $428,169, which was itself a record — but we can still do better. Whether you use FreeBSD on your laptop at home, use FreeBSD to run servers at work, build and sell products which incorporate FreeBSD, or help to write FreeBSD, the FreeBSD Foundation is helping to support what you do; if you haven't done so already, maybe you should consider supporting the great work which the FreeBSD Foundation does.