Over the past two months or so I have become
a contributor to the Debian
Project. This is something that I’ve wanted to do for a while.
Firstly, just because I’ve got so much out of Debian over the last
five or six years—both as a day-to-day operating system and a place
to learn about computing—and I wanted to contribute something back.
And secondly, in following
the work of Joey Hess for the past
three or four years I’ve come to share various technical and social
values with Debian. Of course, I’ve
long valued the project of making it
possible for people to run their computers entirely on Free Software,
but more recently I’ve come to appreciate how Debian’s mature
technical and social infrastructure makes it possible for a large
number of people to work together to produce and maintain high quality
packages. The end result is that the work of making a powerful
software package work well with other packages on a Debian system is
carried out by one person or a small team, and then as many users who
want to make use of that software need only apt-get
it. It’s hard
to get the systems and processes to make this possible right,
especially without a team being paid full-time to set it all up.
Debian has managed it on the backs of volunteers. That’s something I
want to be a part of.
So far, most of my efforts have been confined to packaging addons for the Emacs text editor and the Firefox web browser. Debian has common frameworks for packaging these and lots of scripts that make it pretty easy to produce new packages (I did one yesterday in about 30 minutes). It’s valuable to package these addons because there are a great many advantages for a user in obtaining them from their local Debian mirror rather than downloading them from the de facto Emacs addons repository or the Mozilla addons site. Users know that trusted Debian project volunteers have reviewed the software—I cannot yet upload my packages to the Debian archive by myself—and the whole Debian infrastructure for reporting and classifying bugs can be brought to bear. The quality assurance standards built into these processes are higher than your average addon author’s, not that I mean to suggest anything about authors of the particular addons I’ve packaged so far. And automating the installation of such addons is easy as there are all sorts of tools to automate installations of Debian systems and package sets.
I hope that I can expand my work beyond packaging Emacs and Firefox addons in the future. It’s been great, though, to build my general knowledge of the Debian toolchain and the project’s social organisation while working on something that is both relatively simple and valuable to package. Now I said at the beginning of this post that it was following the work of Joey Hess that brought me to Debian development. One thing that worries me about becoming involved in more contentious parts of the Debian project is the dysfunction that he saw in the Debian decision-making process, dysfunction which eventually led to his resignation from the project in 2014. I hope that I can avoid getting quagmired and demotivated.