On the New Maintainer process
June 24th, 2009 by lucas
So, I decided to raise the topic of our New Maintainer process again. To summarize it, our process is the following:
- Applicant applies, and get advocated by an existing DD. (Takes a few days at most)
- An Application Manager is assigned to the applicant. Due to the shortage of people willing to help as Application Managers, it often takes several months to get an AM assigned.
- The Application Manager asks more than 50 questions to the applicant. The questions cover legal stuff, and more technical stuff about packaging and Debian procedures. For the curious, the templates that almost all Application Managers follow are available in the nm SVN repository (see nm_pp*.txt and nm_ts*.txt). Answering all the questions often takes several months, because after each set of questions, the applicant might have to wait for his AM to find the time to review his answers.
- After all the questions have been properly answered, the AM writes a report (about 1 hour of boring work), that is sent to the NM Front Desk.
- A member of the NM Front Desk reads the report, and ask additional questions or pass the report to the Debian Account Managers. This step used to take a very long time, but the situation has improved with the addition of new FD members.
- A member of the DAM read the report, and decides to allow the applicant to become a DD, or reject the applicant. This step still takes several months.
This process has two flaws:
- It doesn’t help to produce an OS: Debian is not about educating people, it is about producing an operating system. The process of asking questions doesn’t produce anything useful for Debian.
- It is long and boring, even for good candidates. Many people drop out of the process simply because they get too frustrated of waiting for their AM, FD or DAM. A DD once told me that when people get out of NM and become DD, most of their Debian life has already passed. This is quite true.
So, I proposed to change the process, to something a lot simpler:
When someone wants to become a DD, he seeks advocates amongst the current DDs. Each advocate writes a recommendation email stating under which conditions he worked with the applicant, and why he thinks the applicant should be made DD.
After a sufficient number of advocates have been found (5, for example), the applicant goes through a shorter NM process, only answering 5 or 10 questions, chosen amongst the 50+ from the templates.
Everything is then forwarded to DAM, who takes the final decision.
This proposal received strong opposition. Apparently, people feel that all (or most of) the questions are really necessary, and that relying on the judgement of random other DDs would lower the quality of Debian. Other people consider that it is not a problem if the NM process is taking more than a year for most applicants (even for very good applicants).
I personnally think that we should judge applicants on the skills that will matter when they will be DDs: social skills, technical skills (based on real work, not on their ability to understand documentation), and the consequence of both, the ability to ask for help when there’s something they don’t know. The current NM process mostly measures their ability to use google to search through existing documentation. My proposal didn’t make the process easier, it only made it shorter and less boring: finding 5 advocates is going to be very difficult, because the applicant will have to convince 5 different DDs to say: “I think that X is ready to be a DD now.”
Also, Debian is not the only project trying to recruit new developers, and we are clearly one of the less appealing currently. By not being more open to new contributors (by more open, I mean: shorter and less boring process, not process requiring less skills), we shoot ourselves in the foot. In the end, we reduce the relevance of Debian.
It is quite clear based on the discussion that we won’t get rid of the 50+ questions anytime soon. However, the suggestion to merge FD and DAM (one way or another) emerged from the discussion, which might help with the bottleneck at the end of the process. That would already be a good thing.
Finally, the discussions about the NM process are always interesting, because lots of people have lots of things to say about it, despite never having been an AM. So, to help reading the discussion, here is the full list of Application Managers who had at least one NM that became a DD over the last two years (yes, there are only 41 DDs in that case):
| Andreas Barth | Mohammed Adnène Trojette | Ana Beatriz Guerrero López | Anibal Monsalve Salazar |
| Alexander Sack | Bas Zoetekouw | Ben Hutchings | Bernhard R. Link |
| Bruno Barrera | Bernd Zeimetz | Don Armstrong | Enrico Zini |
| Felipe Augusto van de Wiel | Alexander Wirt | Francois Marier | Gunnar Wolf |
| Marc Brockschmidt | Simon Huggins | Joerg Jaspert | Kari Pahula |
| Cyril Brulebois | Kurt Roeckx | Lucas Nussbaum | Luk Claes |
| Pierre Habouzit | Martin Wuertele | Martin Meredith | Michael Koch |
| Christoph Berg | Jonathan McDowell | Paul Wise | Riku Voipio |
| Santiago Ruano Rincón | Patrick Schoenfeld | Reinhard Tartler | Martin Michlmayr |
| Thijs Kinkhorst | Thomas Viehmann | Steffen Joeris | Wouter Verhelst |
| Martin Zobel-Helas |
Recent ssh-agent problems?
June 18th, 2009 by lucas
I’ve recently expected several ssh-agent problems on my laptop using a mix of Debian testing and unstable.
- When I use offlineimap to fetch my mail, opening several (up to 5) SSH connections concurrently, sometimes one of the connection asks for a password. When I try again, it just works.
- Sometimes, the ssh-agent process starts refusing connections, so I’m always asked for the passphrase. The only way to fix that is to restart the ssh-agent, by restarting my GNOME session.
Has someone else experienced those problems? It looks like a fairly recent regression.
UDD and packages metrics
May 13th, 2009 by lucas
Peter Eisentraut played with Ultimate Debian Database, and wanted to create a “maintenance effort” metric by multiplying each package’s installed size by its popcon. His query is:
SELECT rank() OVER (ORDER BY score DESC), source,
sum(installed_size::numeric * insts) AS score
FROM packages JOIN popcon USING (package)
WHERE distribution = 'debian' AND release = 'sid'
AND component = 'main' AND architecture IN ('all', 'i386')
GROUP BY source, version ORDER BY score DESC LIMIT 30;
Besides all the interesting things that I learnt by looking at his query (rank(), and a bug in UDD because installed_size should really be numeric to avoid the conversion), Peter had a problem with his query: linux-2.6 is missing from the results, while it should obviously have a large popcon and a large install size.
The problem is that the binary packages for linux-2.6 often change, so they don’t get very high in popcon. The unstable kernel package gets a ridiculous popcon score:
select package, insts from popcon
where package in (select package from packages where source ='linux-2.6' and release='sid')
order by insts desc limit 30;
package | insts ----------------------------------+------- linux-libc-dev | 38703 linux-source-2.6.29 | 614 linux-headers-2.6.29-2-common | 256 linux-image-2.6.29-2-amd64 | 239
A solution could be to change the metric to be: MAX(insts over all binary packages from this source package) * SUM(installed_size)
The good thing is that UDD already offers a popcon_src view, that gives the popcon score for a source package. So the query becomes:
SELECT rank() OVER (ORDER BY score DESC), source,
sum(installed_size::numeric * insts) AS score
FROM packages JOIN popcon_src USING (source)
WHERE distribution = 'debian' AND release = 'sid'
AND component = 'main' AND architecture IN ('all', 'i386')
GROUP BY source ORDER BY score DESC LIMIT 30;
rank | source | score ------+---------------+------------- 1 | openoffice.org | 92177633504 2 | qt4-x11 | 18503941620 3 | linux-2.6 | 16036201020 4 | gcc-4.3 | 14369300376 5 | mesa | 12962475968 6 | eglibc | 12581290240 7 | gcc-4.4 | 11411296672 8 | samba | 10021083072 9 | xulrunner | 9037295424 10 | mysql-dfsg-5.0 | 8348333532
This time, linux-2.6 shows up near the top of the list.
Simple CMS for a simple website ?
May 1st, 2009 by lucas
Dear readers,
I’m looking for a simple CMS, that would be usable by a non-programmer to write a simple website with less than 10 pages, not updated too frequently.
Requirements:
- maintained/supported, but won’t force me to upgrade for security reasons every month
- good wysiwyg editor (including positioning of images). Wiki-like markup is not an option.
- easy to learn, easy to use.
- doesn’t look like a CMS or a blog for the visitors.
- usable by a non-programmer. Please suggest something that your parents would be able to use :-)
Bonus points if:
- documentation available in french
- available as a Debian package
- doesn’t expose many complex about publication workflow, user management, etc
So, suggestions ?
I hate thunderbird (and its HTML-only emails)
April 21st, 2009 by lucas
Apparently, since Thunderbird 2.0, the user now has an easy way to choose to send messages as HTML-only emails, instead of the sane defaults of doing “text only” or “text + HTML”. As a result, lots of Thunderbird users now send HTML-only emails, which are a PITA to read with mutt.
Does someone know if there’s an open bug about reverting that change?
Does someone know of a good strategy to convert HTML-only emails to text emails, preferably pluggable into procmail, so it happens at delivery time? It’s how course possible to read HTML emails using an external HTML viewer, but I can’t find a way to reply to a “stripped” version of the messages.
LWN article about the DPL election
April 4th, 2009 by lucas
In case you missed it: LWN article about the Debian Project Leader election.
Anomos: anonymous BitTorrent
March 14th, 2009 by lucas
The following information is based on Anomos’ website. Funnily, when you go to that website, the default page is a blog that doesn’t answer the “What’s anomos?” question. The answer to that question is available on the About page, on this blog post, and those slides.
So, Anomos seems like a good answer to the “it’s to easy to determine who is donwloading a file with BitTorrent” problem. It:
It is based on BitTorrent for performance, however, performance might be seriously affected by the mix network (which probably don’t resist too well to heavy load since most internet connections have asymmetric upload/download bandwidths).
A strange point is that it uses a central tracker. I’m not sure why the central tracker couldn’t be dropped, to simply use a DHT instead. (And traffic to the DHT could go through the mix network as well).
Make, tmpfs, and [amc]time granularity
March 8th, 2009 by lucas
As you might have guessed (or not), I’ve been playing with the idea of improving my Debian rebuild setup by building on tmpfs: disk I/O take a signifiant amount of time, that could easily be reduced by building (mostly) in memory.
Most packages build fine on tmpfs: only 8 packages fail only on tmpfs. Apparently, most of the failures are caused by old versions of autoconf: this version used /tmp to store temporary files ; for example, when generating Makefile, it would create it on /tmp, then move it to the current directory. The problem arises when /tmp is an ext3 filesystem, while the current directory is on tmpfs: when moving the file back to the current directory, the mtime of the file is truncated.
This can lead make to think that a given target needs to be rebuilt. A nice example of that is the smuxi package, that just loops when building.
Demo:
# cat Makefile
f2: f1
echo "Need to rebuild f2!"
First case: f1 and f2 are stored in the current directory. Make agrees that
f2 was created after f1:
# rm f1 f2 ; touch f1 ; touch f2 ; make make: `f2' is up to date.
Second case: f2 is created on /tmp, then moved to the current directory. Make thinks that f2 was created before f1 (and is right, according to stat).
# rm f1 f2 ; touch f1 ; touch /tmp/f2 ; mv /tmp/f2 f2 ; make echo "Need to rebuild f2!" Need to rebuild f2! # stat f1 f2 File: `f1' [..] Modify: 2009-03-08 18:21:08.900237000 +0100 File: `f2' [..] Modify: 2009-03-08 18:21:08.000000000 +0100
Wysiwyg tool to create simple websites?
March 7th, 2009 by lucas
Hi,
I’m looking for a tool to create simple websites (5-10 pages), only static content (no PHP). Think of the typical small business or sports club website: text + pictures about what they did/do, nothing really complex.
Requirements:
I’m asking for two different persons with different needs. So please don’t limit your replies to free software (although it would be nice): cheap proprietary applications might be adequate as well. Regarding platform, Linux, Mac OS X or Windows would all be suitable.
I don’t think that a CMS is the right tool here: the focus should be put on the content (which won’t be often modified anyway) and its presentation, not on the ease of modification. For example, I’d like to be able to position pictures in a precise way. However, I might be interested in a CMS that is:
In your comments, it would be great if you could include examples of what you did with those tools (yes, links are welcomed!)
Thank you.
PhD !
March 4th, 2009 by lucas
This blog post is long overdue, but like Lenny, it was finally released. Yes, I defended my PhD thesis on December 4th. So I’m officially a Doctor from the Université Joseph Fourier Grenoble.
The general context of my thesis is distributed systems, like peer-to-peer systems and applications running on HPC (High Performance Computing) cluster and grids. More specifically, I worked on methods and tools to study such systems, trying to answer the following questions: take a given application that will run on a distributed system. What can we learn or verify about its performance or its characteristics? Will it scale well, even with 1000 or 10000 nodes? Does this app perform better than this another app? Under which conditions? (that’s probably the hardest question, because you need to be able to run both apps under the same conditions if you want a fair comparison!)
My work involved studying basic building blocks that can be used to study distributed systems, like network emulators (Dummynet, Linux’s traffic control subsystem, NISTNet). I also designed P2PLab, which allows to emulate network-centric peer-to-peer systems using a cluster, targetting experiments with thousands of emulated instances of the application. For example, it allowed to run experiments with ~15000 emulated BitTorrent nodes using 160 real machines.
So what’s next? Well, my first-priority plan is to make use of my PhD to apply to an academic position (maitre de conférences, i.e assistant professor). If you know an open position where I would be a good fit, don’t hesitate to tell me! Of course, this plan might very well fail (I will know around end of June). In that case, I’ll probably be looking for a job, likely Free-Software-related. Again, if you hear of something for me, ping me!