Quand Linus Torvalds se trompe

En février 2002, Linus Torvalds (le créateur et le chef de projet du noyau Linux) commença a utiliser le gratuiciel BitKeeper pour gérer le développement du noyau. BitKeeper est un logiciel de gestion de versions (et de configuration) pour des codes sources, fait par BitMover. Son code source est fermé. Il existait des outils concurrents tels que CVS, GNU Arch ou Subversion, mais Torvalds choisit BitKeeper parce que c’était « le meilleur outil pour ce boulot ».

Alors que certains développeurs principaux adoptaient BitKeeper, d’autres développeurs clefs (dont Alan Cox) ont refusé de le faire, mettant en exergue la licence de Bitmover, et indiquant que le projet cédait du contrôle à un développeur propriétaire. La décision d’utiliser BitKeeper pour le développement du noyau Linux a soulevé beaucoup de protestations dans la communauté du logiciel libre. Pour diminuer ces problèmes, Bitmover ajouta des passerelles qui permettent une interaction limitée entre les serveurs BitKeeper de Linux (maintenus par Bitmover) et les développeurs utilisant CVS et Subversion. Même après cet ajout, des flamewars sont apparues occasionnellement sur la liste de diffusion du noyau Linux (LKML), souvent impliquant des développeurs clefs et le président de Bitmover Larry McVoy, lui-même développeur de Linux. Un groupe est même allé jusqu’à lancer une pétition contre l’utilisation de l’outil. Certains voulaient bannir Richard Stallman de LKML. Un avertissement concernant BitKeeper a été envoyé sur la liste de développement de Debian.

Le 5 avril 2005, BitMover a annoncé qu’il allait s’arrêter de fournir une version gratuite de BitKeeper à la communauté, pour cause de supposée rétro-ingénieurie effectuée par Andrew Tridgell, un développeur employé par OSDL. Quelques jours plus tard, Linus Torvalds a réagi très rapidement et a déclaré qu’il commençait à travailler sur une solution temporaire appelée Git. Cependant, ce problème aurait pu avoir stoppé le développement du noyau Linux pendant un certain temps. Et Linus avait été averti par de nombreuses personnes.

C’est une grande leçon pour la communauté du logiciel libre. C’est un beau revers pour les « personnes pragmatiques » qui accordent plus d’importance à la qualité technique qu’à la liberté et la communauté. S’il vous plaît, ne suivez pas un meneur charismatique sans vous demander s’il a raison ou pas, même si c’est un génie. S’il vous plaît, n’oubliez pas que les programmes non libres sont dangereux. Ne pensez pas que la philosophie du logiciel libre est juste quelque chose pour les intégristes, quand cette philosophie a créé vos logiciels et votre communauté. Si vous l’oubliez, vous allez à l’encontre de mauvaises surprises.

When Linus Torvalds goes wrong

In February of 2002, Linus Torvalds (the Linux kernel creator and project coordinator) started using the freeware BitKeeper to manage the mainline kernel. BitKeeper is a software tool for revision control (configuration management etc.) of computer source code, made by BitMover. It is a closed-source product. Some competing tools such as CVS, GNU Arch or Subversion were existing, but Torvalds chose BitKeeper because it was ‘the best tool for the job’.

While some core developers adopted BitKeeper, several key developers (including Alan Cox) refused to do so, citing the Bitmover licence, and voicing concern that the project was ceding some control to a proprietary developer. The decision to use BitKeeper for Linux kernel development raised a lot of protestations in the free software community. To mitigate these concerns, Bitmover added gateways which allowed limited interoperation between the Linux BitKeeper servers (maintained by Bitmover) and developers using CVS and Subversion. Even after this addition, flamewars occasionally broke out on the Linux kernel mailing list (LKML), often involving key kernel developers and Bitmover CEO Larry McVoy, who is also a Linux developer. A group went so far as to start a petition against the usage of the tool. Some wanted to ban Richard Stallman from the LKML. A warning regarding BitKeeper was sent on the Debian devel list.

On April 5th, 2005, BitMover announced that it would stop providing a version of BitKeeper free of charge to the community, the reason being alleged reverse-engineering efforts by Andrew Tridgell, a developer employed by OSDL. Some days later, Linus Torvalds reacted very fast saying that he began working on an interim solution called Git. But, this issue could have a really hard time stopping for the Linux kernel development. And Linus was warned by several people.

This is a big lesson for the free software community. This is a big ‘back-hand’ for ‘pragmatic people’ who value technical advantage above freedom and community. Please, don’t follow a charismatic leader without ask yourself if he/she’s right or not, even if he/she’s a genius. Please, don’t forget that non-free programs are dangerous. Don’t think that free software philosophy is something just for integrists, when this philosophy created your softwares and your community. If you forget it, you will encounter some bad surprises.