Christian Perrier: People behind Debian: Rapha l Hertzog, dpkg maintainer, book author
It's about time that Rapha l is interviewed in the "People behind
Debian" series he initiated on his
blog.
Indeed, when he interviews people, Rapha l asks about other people
they could suggest for next interviews. So, during mine, I suggested
him to be a next "victim". As he couldn't interview himself, I
volunteered for this.
As you'll see below, Rapha l (who's a friend of mine as I'm a friend
of his) likes to speak and that shows in the length of his answers
:-) but you always know more about Debian when reading his blog posts,
books, mails, etc. I personnally think that he is among the best
promoters of the project for years and it was a pleasure for me to
conduct this interview.
My questions are in bold, the rest is by Rapha l.
Who are you?
Hi, Rapha l Hertzog, I'm a 32 years old French Debian developer who is
married and who has a 2-year old son. I'm running my own company (Freexian) since 2005, I started
it 3 years after the end of my computer science studies. I'm also a very
proud author of the Cahier de
l'Admin Debian, a French book about Debian.
You often wrote about your attempts to make your living partly, if
not completely, out of your Debian work. Can you describe the way
you're trying to do this?
My first try has been with Freexian. I always advertised this company
as being specialized in Debian GNU/Linux. While Freexian is successful
enough to provide me a decent income, I'm not really satisfied with the
result because very few of my contracts are about improving Debian. I
use Debian daily for the benefit of my customers, writing new customer
specific (embedded) software, deploying a service on Debian servers, etc.
But except for the occasional bugfix, all this work does not improve
Debian (the only exception has been the dpkg multiarch implementation
work sponsored by Linaro).
The positive side is that I don't need to fill my entire schedule to earn
enough money to live. So I'm regularly taking some days off work to be
able to contribute to Debian. This is a freedom that I enjoy...
My French book has also been a bestseller and depending on the years
the royalties represented between 1 and 2 months of supplementary time
that I can spend on Debian (that is between 2000 and 4000 EUR of income).
Now since last year, I decided to actively work towards my goal of making
a living out of my Debian work. I want to build on what has been most
successful for me up to now, that is my book. My strategy has been to
build an audience around my blog: with a direct contact with my readers I
have the opportunity to sell e-books, and without any intermediary taking
the biggest part of the price, I don't need a very large audience to be
successful.
I have also been experiencing micro-donations with Flattr, people who are
enjoying my articles on my blog can use it to give a few cents for each
article they find useful. With a large enough userbase, this could fund
free documentation and would avoid the need for commercial e-books but
we're not there currently and I don't know if it will ever reach the
critical mass.
Last but not least, I'm soliciting donations for my Debian work on the
sidebar of my blog, and I have the chance to a have a few (regular) donators.
You're a proud father since last year. How do you manage your
commitment to the project with your family life?
There are few things that I put above Debian in my life, but my family
certainly is. I try to handle most of my Debian duties during work
hours so that I can spend time with my family on evenings and during
week-ends but in truth I never really disconnect from Debian. It happens
quite often that I say to my wife I'll come in a few minutes, let me
finish this and then I end up responding to a Debian mail, or an IRC
query and take 30 minutes instead of the 5 expected ones. I try hard to
avoid this but it's difficult. Luckily for me, my wife is very supportive
of my Debian involvement and knows me well...
By the way my wife is using Debian on her computer, and my son has already played
with DoudouLinux (a Debian derivative!).
Have you already been accused of self-promotion in your writings? If
that would ever happen, what would you answer to that?
Yes, more than once. I am proud of what I do for Debian, I enjoy sharing
the result of my work. Because of this, some people believe that I'm
selfish and egocentric. And this has somewhat increased since I have been
soliciting donations: for me it's important to be transparent towards
donators so that they see what I really do for Debian. But some people
have the feeling that I'm getting undeserved attention and that I bring
everything towards my own person. On the other side, as an author, I'm a
public figure who is definitely seeking some attention...
I don't have any miraculous answer, we are a large and diverse community,
it's next to impossible to please everybody. I listen to all the concerns
that people bring forward, I take them into account as much as possible,
in particular when I believe they are reasonable/well justified, or when
they come from people that I highly respect. But sometimes I have to plainly
ignore them too... in particular when they are trying to impose their
own political view on a topic that's not directly related to the only
value that we all share: the social contract.
Contributing to Debian is a challenge, we all have to make efforts to
put aside our differences and to concentrate on the work that brings
us closer to the best free software operating system ever built.
You recently launched a campaign to free out the soon-to-be-published
"Debian Administrator Handbook", an English version of your
well-known book about Debian in French. Can you tell us more about
this project?
My French book has been very successful at helping people to get started
with Debian, and like I already explained, it was also effective to fund a
part of my Debian work. So I wanted to make it available world-wide by
publishing an English translation of it. I tried to find an
English-speaking editor willing to take on the challenge but I found none
interested.
Not put off by a setback, Roland (my co-author) and I decided to negotiate
with our French editor Eyrolles to recuperate the necessary rights to
translate the book into English. Handling everything ourselves represents
a lot of work, but it also means that we have the freedom required to decide
of the license of the resulting book. We would love to see it under
a license compatible with the Debian Free Software Guidelines.
But at the same time we firmly believe that we deserve a reasonable
monetary compensation for the work on the book, so we conditioned its
liberation to a predefined amount of money (25 K ) in what we call the
"liberation fund". And since we wanted to be sure that we would have the
required means to complete the translation, we used a crowfunding platform
to seek support of people interested by the book. With such a platform
you're only debited if the minimal requested amount is reached. Anyone
can participate, pre-order the book and/or put some money in the
liberation fund.
As of today, we already reached the minimal funding goal (15 K ) so the
book translation will happen. But the liberation target has not yet been
reached so we don't know yet if the book will be free from the start...
you can follow the progress right on the fundraising page or
on the website dedicated to the
book.
PS: If you want to contribute to this project and also make a donation
to Debian at the same time, you should check out this page.
You're one of the main developers of dpkg, a critical tool for
Debian systems. Can you tell us more about the current development
challenges it is facing? What will be the new dpkg features for
wheezy?
The current challenges are not really technical. dpkg is a relatively
mature piece of software and it will continue to work for the foreseeable
future without needing much maintenance work.
The real challenge is trying to setup a healthy developement community
around it so that we can keep tackling new interesting problems (there are
many listed in the roadmap and in
the 225 wishlist bugs).
There is a real problem of leadership and communication in the current
team. We used to be three, and we're only two nowadays. Guillem is the
legitimate leader since he's involved in dpkg's developement since early
2006 while I joined only in late 2007. But in the last 4 years, we did not manage to recruit anyone
else on the team. Some persons tried to contribute significant new
features (like Sean Finney with a rework of the way we handle
configuration files) but they gave up frustrated after a while because we
did not manage to review their work (and discuss the design) in any
reasonable timeframe. Another famous case is Ian Jackson with his trigger
work. His work got merged, but so late that in the mean time he blew up
while trying to hijack
the maintenance of dpkg.
For a long time I was concentrating my work on the Perl part of dpkg (aka
dpkg-dev mainly), so I did not feel qualified to review and merge work
related to the C part and I was just a worried observator of this
situation. I tried to improve it by setting up some basic
review
infrastructure, it should have brought some lisibility to the status
of each change left to be reviewed... but it has not been used
and it changed nothing.
Over the years, I became much more interested in the C part. My first big
contribution in C has been the rewrite of update-alternatives (from Perl
to C). I made other small changes in between, but at the start of this
year I had this great opportunity to work on the multiarch implementation
(FYI, multiarch is the
possibility to mix packages from several architectures on a single
system). This really forced me to jump into the C codebase and learn a lot about
how dpkg is implemented. Thanks to this I have been able to tackle other
small projects (like the improved triggers).
This would be all great if my multiarch work was already merged, but
it's not. It's a large work, I do not mind waiting a bit in particular
since Guillem is a highly skilled C programmer. His sharp analysis of new
designs are invaluable, when he reviews code he always finds something to
improve. I learnt a lot just by reviewing the code he wrote over the
years.
That said I have been waiting since April without almost no updates from
him. With the release team asking us
to hurry up, the situation is getting somewhat strained as I really
want to see multiarch in Wheezy and I do not really want to short-circuit
Guillem.
Hum, I may have drifted a bit from your original question... what great
new features can people expect? Well multiarch is supposed to be the big
new feature, apart from that there aren't many things that matter to the
end users. But there are already quite a few changes
that are of interest to package maintainers (like hardened build
flags, source package improvements, improved triggers, ).
What's the biggest problem of Debian?
Manicheism and a tendency to quickly polarize the discussions. In reality,
there are very few situations where everything is all good or all bad.
Ever since I have read The 7
Habits of Highly Effective People I try hard to put into practice the
habits of interdependence . Instead of having only my point of view in
mind, I try to understand the motivations from the other party ( Seek
First to Understand, Then to be Understood ) in order to be able to put
forward solutions acceptable to both parties ( Think Win-Win ).
I highly recommend this book to anyone. And I invite everybody to
at least try to follow those simple advices.
Is there someone in Debian you admire for their contributions?
There are many and I can't give an exhaustive list... here are some
that I would like to highlight (in no particular order):
- Niels Thykier for the work he puts into Lintian, and his recent work on a britney test-suite (the software that creates testing out of unstable);
- Joachim Breitner for his britney reimplementation using a SAT solver;
- Adam D. Barrat for his work on britney2;
- All the release team members who take care of an endless stream of transitions;
- Christoph Berg for his continuous work over the years on various QA infrastructure (DDPO, Mole, );
- Enrico Zini for the way he helped reform the New Member process without any big disruption;
- Russ Allbery for his Debian Policy work and for being a model in terms of how we should interact on Debian mailing lists;
- Stefano Zacchiroli for being the most active leader that I have ever seen, and for the way he tries to steer important discussions to a constructive conclusion.
- etc.