Périls pour l'Open Source

La plupart des éditeurs de logiciels, comme la plupart des entreprises scientifiques, échouent parfois. En matière d'édition de logiciels, rappelle Bob Young, les principes grâce auxquelles on mène l'entreprise vers le succès varient peu de ceux qui profitent à leurs concurrents plus classiques. Dans les deux cas, le réel succès s'avère rare et les meilleurs innovateurs tirent les leçons de leurs erreurs.

La créativité, qui mène à l'innovation tant dans le domaine de la science que dans celui du logiciel, n'est possible qu'à un certain prix. Garder le contrôle sur un projet Open Source dynamique peut s'avérer difficile. Cette peur de perdre le contrôle empêche certaines personnes et beaucoup d'entreprises de fournir une réelle participation. En particulier une inquiétude courante lors de l'adhésion à un projet Open Source est qu'un concurrent ou un groupe de gens y entre également et ne crée ce qui est appelé un embranchement dans le code source. De même qu'un embranchement sur la route, une base de code source peut à certain moment se diviser en deux routes séparées et incompatibles qui ne se croiseront plus. Ce n'est pas une vaine inquiétude ; observez, par exemple, les multiples embranchements que les systèmes BSD ont empruntés pour mener vers NetBSD, OpenBSD, FreeBSD et de nombreux autres. Seule la méthode ouverte utilisée pour le développement de Linux garantit qu'il ne subira pas le même sort.

Linus Torvalds, Alan Cox et d'autres développeurs forment une équipe unie et demeurent l'autorité centrale de gestion de l'évolution du noyau. Le mode de gestion du noyau Linux a été appelé « dictature bon enfant » , avec Linus en tant que dictateur éclairé, et il a jusqu'à présent produit un noyau bien écrit et cohérent.

Il est amusant de constater que Linux a subi extrêmement peu de réels embranchements. Il existe des patches importants qui convertissent le noyau de Linux en un noyau temp-réel, adapté au contrôle précis de périphériques rapides, et aussi des versions capables de fonctionner au sein d'architectures très inhabituelles. Ces variations peuvent être considérées comme des embranchements dans la mesure où elles concernent une version du noyau et évoluent à partir de là, mais elles occupent des niches d'applications très particulières et n'ont pas un effet de scission sur la communauté Linux.

Considérons, par analogie, une théorie scientifique appliquée à certains cas particuliers. La plus grande partie du monde se débrouille parfaitement en utilisant les lois de Newton du mouvement pour les calculs mécaniques. Un contexte particulier où entrent en jeu de très grandes masses ou des vitesses élevées nous obligent à recourir à relativité. La théorie d'Einstein pourrait progresser et s'étendre sans ébranler l'application de la base théorique newtonienne plus ancienne.

Mais, bien souvent, des entreprises logicielles compétitives s'opposent, exactement comme certaines théories scientifiques. L'histoire de Lucid, par exemple, en offre un belle illustration. Cette entreprise développait et exploitait une version adaptée de l'éditeur Emacs afin de le vendre à la communauté des développeurs en tant que remplacement de l'Emacs original, écrit par Richard Stallman. Cette version fut appelée Lucid Emacs puis XEmacs. Lorsque l'équipe de Lucid lança XEmacs auprès de différentes entreprises, ils se rendirent compte que les résultats produits grâce à XEmacs n'étaient pas très différents de ceux d'Emacs. La situation terne du marché informatique à cette époque, combinée à ce fait, écourta l'existence de Lucid.

Il est intéressant de constater que Lucid rendit public le code de XEmacs sous GPL. Même l'échec de cette entreprise est une indication de la longévité qu'assure le modèle Open Source aux logiciels concernés. Tant que des gens apprécieront ce logiciel, Lucid fournira la maintenance nécessaire pour qu'il fonctionne sur les nouveaux systèmes et architectures. XEmacs profite d'une extraordinaire popularité, et on peut lancer un débat intéressant parmi les hackers d'Emacs en leur demandant quelle version ils préfèrent. XEmacs, même avec très peu de personnes y travaillant, est encore un produit important et vivant, modifié, maintenu, et peu à peu adapté aux nouvelles époques et architectures.