Ultimate Debian Database talk at FOSDEM

Of course, I was in Brussels this week-end, for FOSDEM. I gave a talk about Ultimate Debian Database (slides here) in the Debian devroom. The conclusion was “UDD is ready, go play with it!” so you know what you should do now! FOSDEM in general was great and huge (see the video from Quim Gil if you still doubt that) as usual.

On a more sad note, the worst talk of the week-end was without any possible doubt Frans Pop’s release team bashing. Nobody is claiming that the release management of the lenny release cycle was perfect: there’s always room for improvement. But given the context and the constraints, I think that they did a very good job. Frans’ talk boiled down to: “The release team doesn’t know what they are doing, I would have done much better because I’m so qualified.” Giving such talks at FOSDEM, in front of an audience with many people not involved in Debian development, is really insulting. To make things worse, he finished the talk late, not leaving any time for questions/discussion, so the audience might be left with the impression that his opinions are representative of the opinions of DDs.

Why are french universities on strike today (and from next monday)?

Sorry, this post will be in french. I don’t think it will be interesting for many non-french-speaking readers, and the matters are a bit too technical to write it in english. If I have time, I’ll translate it, I promise.


Au milieu de la journée de mobilisation d’aujourd’hui, un grand nombre des personnels des universités françaises sont aussi en grève. De plus, un appel à une grève reconductible a été lancé à partir du 2 février, et il est probable qu’il soit suivi dans de nombreuses universités. Malheureusement, le pouvoir de nuisance des universités étant assez faible, cela passe souvent inaperçu dans les médias, ou alors des mots-clés sont balancés pour décrire les revendications, sans les expliquer. Je vais tenter d’y remédier un peu.

Avant de commencer, je vais me présenter: je suis demi-ATER. J’ai un diplôme d’ingénieur en informatique (de l’ENSIMAG), une thèse (depuis décembre, de l’UJF Grenoble), et je suis actuellement enseignant-chercheur en CDD à l’université de Lyon 1. Mon poste est en théorie à mi-temps (d’où le “demi-“). En pratique, je travaille à plein temps. Le poste à mi-temps me permet juste d’avoir le temps de faire autre chose que de l’enseignement (finir ma thèse, faire de la recherche, préparer mes dossiers de candidature). Je suis payé 1180 euros/mois (cf Wikipédia pour les détails). Je ne prétends pas être expert de toutes les questions que je vais aborder ici, mais je vais faire de mon mieux, et au moins donner un éclairage “de l’intérieur”.

Alors, pourquoi cette colère ?

La colère est dûe à plusieurs lois, décrets, processus et événements plus ou moins récents :

  • La Loi relative aux libertés et responsabilités des universités, aussi connue sous les noms de “loi LRU” et “loi d’autonomie des universités”. Cette loi transfère de nombreuses compétences aux universités, leur donnant beaucoup de libertés notamment pour gérer leur budget, leurs ressources humaines, et leur patrimoine immobilier.
  • Le décret modifiant le statut des EC (enseignants-chercheurs). Ce décret modifie profondément les conditions de travail des EC.
  • La réforme des IUFM (“mastérisation de la formation des maîtres”), qui forment les enseignants du primaire et du secondaire.
  • Récemment, l’annonce d’un Contrat Doctoral Unique, pour remplacer certains (pas tous!) des contrats des doctorants (=”thésards”).
  • La réorganisation des organismes de recherche, en particulier du CNRS.
  • Les budgets des universités annoncés récemment, globalement en baisse, et en contradiction avec les réformes annoncées ou déjà mises en place qui sont coûteuses en heures d’enseignement. (voir ici par exemple)
  • L’accord entre la France et le Vatican sur l’équivalence des diplômes des universités catholiques
  • Le discours de Nicolas Sarkozy du 22 janvier (cf Elysée et réponse de SLR), perçu comme une énorme provocation.

Tout d’abord, il faut se souvenir que le monde de l’enseignement supérieur et de la recherche est extrèmement compliqué. Il y a un nombre très important d’acteurs et de statuts différents, qui sont malheureusement quasiment tous nécessaires ou utiles. Vu de l’extérieur, évidemment, c’est pas facile, et ça ressemble à une usine à gaz, mais il faut garder en tête qu’on ne parle pas d’une PME, et qu’il faut être capable de dialoguer avec de très nombreux autres acteurs, aussi bien en France qu’à l’étranger. En pratique, vu de l’intérieur, ça ne fonctionne pas si mal que ça, surtout vu les moyens qu’on a.

La plupart des réformes récentes du gouvernement sont construites sur le même modèle:

  • on part d’une constatation avec laquelle (presque) tout le monde est d’accord.
  • on propose une réforme pour corriger le problème. De préférence, la réforme est baclée, et oublie complètement certains aspects ou acteurs importants.
  • au passage, on fait passer des micro-réformes sans rapport avec le reste, de préférence permettant d’économiser de l’argent en diminuant fortement la qualité de la formation ou les conditions de travail.
  • on fait semblant d’organiser une concertation, en ignorant les retours.
  • on annonce la réforme en expliquant à quel point elle va révolutionner le monde, si possible en truquant un peu les chiffres pour augmenter l’effet d’annonce.
  • on passe à la réforme suivante.

La majorité des EC ne s’opposent pas aux réformes proposées: toutes ont des bons côtés, et certains de leurs changements sont nécessaires et bienvenus. Ils s’opposent à des “détails” techniques qui n’en sont pas, des bugs absolument critiques qu’il faut corriger, et que le gouvernement ignore, volontairement ou involontairement, par précipitation.

Prenons la réforme du statut des EC.
Actuellement, un EC fait 192h d’enseignement en heures équivalent-TD par an (ce sont les heures de présence effectives devant les étudiants, qui excluent absolument tout le reste — préparation des cours, surveillances d’examen, correction de copies, jurys, et les autres rôles des enseignants-chercheurs: recherche et responsabilités administratives). 1h de cours vaut 1.5h de TD, et 1h de TP vaut 2/3h de TD.
Après la réforme:
– 1h de TP vaut 1h de TD, ce qui est un bon point: cela évite de privilégier des TD car ils sont plus rentables, alors que des TP sont souvent plus utiles au étudiants. Problème: comment financer les heures supplémentaires, si les budgets baissent ?
– Il n’y aura plus de service “standard” de 192h eqTD. Le service de chaque EC est modulé. Par qui? Le président de l’université, tout seul. En fonction de quoi? En théorie de l’activité de recherche de l’EC (très difficile à évaluer de manière juste), et le décret est très flou sur la mise en oeuvre. Avec quelles possibilités de recours? Aucune, a priori.

Autre réforme: la loi sur l’autonomie des universités, qui deviennent maîtres de leurs budgets.
Oui, mais certains établissements à l’intérieurs des universités étaient mieux dotés jusqu’à présent, en raison de leurs spécificités: les IUT (filière avec sélection à l’entrée, diplôme au programme national, très bon encadrement des étudiants …). Et les IUT réussissent plutôt beaucoup mieux que le reste de l’université, (notamment) grâce aux moyens supplémentaires.
Après la réforme: la dotation des IUT va être gérée par leurs universités de rattachement, avec un nouveau mode de calcul qui va entrainer une énorme baisse de la dotation (-30% à -40%). Cela annonce la mort des IUT à moyen terme, ou au moins leur “entrée dans le rang”. (voir ici pour qqes exemples concrets). Pourquoi casser ce qui marche bien ?

Finalement, la réforme des IUFM: (attention, c’est le sujet que je connais le moins bien)
D’après ce que j’ai compris, les modalités des concours (CAPES, etc) changeront en 2010, et, au lieu de sanctionner la fin des études dans un IUFM, seront accessibles au niveau master (bac+5). Du coup, de nouveaux masters vont être créés au sein des universités pour acceuillir les étudiants se destinant à ce concours.
Je crois comprendre que les revendications portent sur:
– le problème de la baisse de qualité de la formation des maîtres (notamment, pour faire des économies, la suppression du stage obligatoire en deuxieme année d’IUFM)
– une réforme faite dans la précipitation
Voir ce site, par exemple.

En résumé, espérons que cette mobilisation débouche sur une amélioration des réformes, avec une vraie concertation permettant de résoudre les différents points de conflits, et pas sur un passage en force en l’état, ou sur une suppression pure et simple de la réforme… Mais c’est beaucoup plus difficile que de faire des annonces bien visibles pour passer au 20h…

En tout cas, après m’être plongé dedans aujourd’hui, j’ai l’impression qu’il y a un gros déficit d’information et de vulgarisation de la part des différentes organisations syndicales et des associations… Ca n’est finalement pas si étonnant que les journalistes communiquent si mal sur les revendications.

Liens:
Sauvons l’Université (SLU)
Sauvons la recherche (SLR)
Conférence des présidents d’université (CPU) (La CPU est une organisation plutôt proche du pouvoir, et plutôt mesurée. Si la CPU communique son désaccord, c’est que c’est très grave.)

On Debian membership

The more I think about it, The more I’m convinced that the both approaches that have been proposed to change the way we deal with Debian membership (Joerg’s new statuses for non-developing contributors, and Lars’ counting of advocates) are both steps in the wrong direction.

I really would like something simpler, and less technical, to become a Debian Developer. After all, what matters is that we trust new developers to make the right decisions (for example, not touch something that they are not confortable with). We currently verify that they know each and every technical bit about things that they may never encounter during their DD life, but that doesn’t say anything about their ability to work with others inside a community, or their judgement when touching packages that they don’t maintain.

For example, we could have something inspired by the current process to become a Debian Maintainer: instead of going through 50+ questions, we could rely on advocations from existing Debian Developers to judge new applicants. The advocation wouldn’t simply be “+1” emails (as in Lars’ proposal), but would instead contain a detailed description of what the applicant did. A group of DDs (DAMs, basically) would then read the advocation emails, and decide whether there’s sufficient proof that the applicant can be granted DD status.

That would allow a much faster process, removing the load from the Application Managers and NM Frontdesk Members. And it probably wouldn’t reduce the quality of new DDs, because of the need to collect advocation emails from several DDs.

Probably the best way to move forward with that would be to work on a document (DEP?) that would list all the changes and explain them, and then ask all the developers to vote on it, like it was done for the Debian Maintainers GR. Are there some people interested on working on a first draft of such a document?

Date/time anecdotes

If you don’t know that leap years don’t always happen every 4 years, you really should read about the switch from the Julian to the Gregorian calendar. PostgreSQL’s documentation on the topic is also interesting, as well as the output of ncal -p.

On a related subject, the insertion of a leap second triggered a few interesting blog posts from Dave Jones (1, 2, 3), and also a Linux bug, reported on slashdot, and already fixed.

(Yes, that post was mostly an I-need-to-bookmark-this post.)

membership status results

So, in the Membership Status GR, we sent a clear message that we wanted those decisions to be postponed. Now, we have a responsibility to prove that we were not just rejecting any change, but that our vote was really a vote against the way those decisions were announced, and/or those particular decisions. I’m convinced that our management of membership needs to be improved.

I hope that in the next weeks/months, we will be able to discuss proposals about membership status. There’s Joerg’s, there’s Lars’, there’s Raphael’s, and there might be other ideas. Ideally, each of them would be discussed and improved separately (because we can’t be expected to agree on one proposal right from the start), and finally we would get to vote on a coherent set of proposals (with an unbiaised ballot ;) to choose in which direction we want to change our management of membership. It would be great to use the DEP process or something similar for that.

It is also interesting to compare this whole story with our current issue: a secretary that ignored valid criticism about a ballot and went on with asking to vote on it. In both cases, someone that is generally trusted and respected by the project made a mistake, and failed to acknowledge it, requiring strong actions from other DDs. I wonder how the secretary crisis will end…

Debian on a Dell E4300

I received a new laptop, a Dell Latitude E4300. I was a bit anxious with its level of support on Linux, because it only recently started being shipping, and it’s full of recent Intel hardware. Also, with lenny being frozen for 5 months, we are currently a bit behind regarding hardware support.

I installed lenny on it, as I usually run testing+APT pinning. What I’m describing here is what is unsupported in lenny out of the box.

Wireless:
Needs a 2.6.27 kernel (iwlagn driver), Lenny only has 2.6.26. Downloaded from the kernel team’s unofficial repo. Firmware isn’t packaged in Debian (firmware-iwlwifi needs an update). Needed to download it from Intel.

Graphics:
Intel device, unsupported with lenny’s driver (but vesa works surprisingly well, oI only noticed that I was using vesa when I tried to play a video and found out I had no xv support).
Works with experimental’s Xorg and the experimental intel driver, but that Xorg needs some polishing. The evdev driver now handles all inputs, so the keymap has to be configured differently (as usual, #debian-x people were very helpful).

Suspend/Resume:
Works out of the box using pm-utils. No need for quirks.

All in all, it was easier than I expected, and support will probably be perfect for lenny+1/2 ;)

The Project membership procedures GR

So, the call for vote on the “Project membership procedures” GR was sent. Since I took part in the discussions that lead to that GR, I feel obliged to explain my point of view.

What this GR isn’t about
This GR isn’t about the merits of Joerg Jaspert’s proposal. I personally don’t think that the changes he wants to implement are what we need in Debian, but even if I fully agreed with those changes, I would still disagree with the process that led to those changes. Also, this GR isn’t about Joerg Jaspert himself. I deeply respect him and his awesome work for Debian. And I’m sure that this vote could have been triggered by decisions announced by someone else.

What this GR is about
I think that the question we are asked to vote on is:

Some people in Debian have a special role, and special privileges. Does it allow them to change important aspects of our project, without the approval of all the other developers?

Or, put differently:

Where is our limit between Doocracy and Democracy?

I’m all for listening to developers who contribute(d) a lot. I think that most people, when skimming through posts in a big thread on -devel@, will look for posts from people who did a lot of work for Debian, or who usually post interesting ideas. However, that doesn’t mean that those people should feel empowered to decide changes to important parts of our project, without first discussing those changes with all other developers, and making sure that those changes are consensual.

So, I hope that we will send a clear message that says: you are very welcome to propose changes, but please make sure that they are properly discussed within the developers before they are implemented.

Joerg’s initial mail on d-d-a, with a few s/decision/proposal/, and a final question phrased like “Any comments? Suggestions? Other ideas?”, could have been the start of an interesting discussion about how we can integrate non-developing contributors in Debian. And if too many developers disagreed, we could have had an opinion poll (it would be great to have an infrastructure for running polls inside Debian, like what Jeroen did three times a long time ago), or even a GR, like we did for Debian Maintainers.

For this actual vote, there are two similar options on the ballot (choices 1 and 2, respectively “amendment text A” and the original text on the vote page). I proposed this amendement (choice 1) because the original text is unclear, and mixes several different questions, forcing voters to answer several (secondary) questions at once, like:

  • Do we recognize that there are contributors that can’t become members of the project currently, and that should?
  • Do we want to thank DAM for bringing this up? (implicit question or not: … now that we are trying to release?)
  • Do we want DAM to work on a new proposal?

The amendment aims at going straight to the point. And yes, it is only asking the DAMs, but if the developers ask the DAMs not to do something, and the DAMs do it anyway, we clearly have a bigger problem. I believe that the way those decisions were announced was a mistake (that unfortunately none of the people involved have been willing to admit), not that the DAMs are trying to take-over Debian, so there’s no need for a stronger wording.

State of hardware support in Linux

I’m getting increasingly annoyed by the state of some aspects of hardware support in Linux.

My laptop (old Dell Latitude D610, Intel-based with ATI graphics) used to suspend/resume correctly with Linux 2.6.24 (ie, > 95% success rate). Later changes made the success rate drop significantly, and added a problem with kacpid taking 100% CPU because of an interrupt storm. And now, with 2.6.28-rc6, it’s completely broken. (partially documented in bug 11563, but I admit I gave up on this bug, because I’m going to change my laptop soon).

My desktop used to wake-on-lan correctly with 2.6.24 (but required some hacks, because it wouldn’t wake up if the NIC was DOWNed before shutdown), but changes in the r8169 driver broke it. (documented in bug 9512).

As a result, I’m forced to run old kernel versions on the two systems I have at home. I can understand that those issues aren’t considered high priority (not everybody use WoL), but the fact that in both cases, they are regressions, worries me a bit.

How many things are routinely broken during each kernel release cycle? Hardware support is difficult, of course, but are we really doing everything we could to make it suck less? Some things I really would like to see:

  • Distro packages for development kernel versions. For Debian, there’s this repository, but it doesn’t always contain the latest kernel versions. Maybe that’s something that should be moved to a kernel.org umbrella and generalized to all distributions, to provide beta-testers with easy-to-install packages. git bisect isn’t that user-friendly.
  • Funding for driver developers to buy specific hardware. Many drivers cover a wide range of chips/cards, and developers often only have on a small subset of them, making it difficult to debug issues specific to one chip.
  • Better/updated bugzilla on kernel.org. Many bug logs are totally confusing, and cover different issues. They could maybe benefit from new or specifically developed bugzilla features (and more bug triagers, of course).

-vote@ discussions on DFSG violations

There have been 470 mails during the last month in the DFSG violations threads on -vote@, but only 10 posters have contributed more than 10 mails so far:

85 Robert Millan
51 Manoj Srivastava
18 Pierre Habouzit
18 Josselin Mouette
16 Thomas Bushnell BSG
14 Stephen Gran
13 Frans Pop
13 Ean Schuessler
13 Adeodato Simo
12 Russ Allbery

Is someone working on a summary of the discussions? I would really hate it if we were asked to vote on this, with a “for details, see the -vote@ archives” footnote. (Robert Millan sounds like a perfect candidate for this task :-) )