Page suivante Page précédente Table des matières

3. De l'importance d'avoir des utilisateurs

C'est ainsi que j'héritai de popclient. De même, et c'est tout aussi important, c'est ainsi que j'héritai de l'ensemble des utilisateurs de popclient. Il est merveilleux de disposer d'utilisateurs, et pas seulement parce qu'ils vous rappellent que vous remplissez un besoin et que vous avez fait une bonne chose. Éduqués de façon appropriée, ils peuvent devenir vos co-développeurs.

Le fait que beaucoup d'utilisateurs sont également des bidouilleurs est une autre force de la tradition Unix, et c'est une caractéristique que Linux a poussée avec bonheur dans ses derniers retranchements. De plus, la libre disponibilité du code source en fait des bidouilleurs efficaces. Ceci peut se révéler incroyablement utile pour réduire le temps de débogage. Avec un peu d'encouragement (ils n'en réclament pas beaucoup), vos utilisateurs diagnostiqueront les problèmes, suggéreront des corrections, et vous aideront à améliorer le code bien plus rapidement que vous n'auriez pu le faire, si vous étiez laissé à vous même.

6. Traiter vos utilisateurs en tant que co-développeurs est le chemin le moins semé d'embûches vers une amélioration rapide du code et un débogage efficace.

Il est facile de sous-estimer la puissance de ce phénomène. En fait, la quasi-totalité d'entre nous, appartenant au monde du logiciel dont le code source est ouvert, sous-estimions effroyablement la facilité avec laquelle il s'adapterait à l'augmentation du nombre d'utilisateurs et de la complexité des systèmes, jusqu'à ce que Linus Torvalds ne nous démontre le contraire.

En réalité, je pense que la bidouille la plus ingénieuse de Linus, et celle qui a eu le plus de conséquences, n'a pas été la construction du noyau de Linux en lui-même, mais plutôt son invention du modèle de développement de Linux. Un jour où j'exprimais cette opinion en sa présence, il souria et répéta tranquillement cette pensée qu'il a si souvent exprimée: ``Je suis tout simplement une personne très paresseuse, qui aime se faire remercier pour le travail effectué par d'autres.'' Paresseux comme un renard. Ou, comme Robert Heinlein aurait pu le dire, trop paresseux pour pouvoir échouer.

Rétrospectivement, on peut voir dans le développement des bibliothèques Lisp et des archives de code Lisp pour GNU Emacs un précédent aux méthodes et au succès de Linux. Au contraire du coeur d'Emacs, construit en C à la manière des cathédrales, et au contraire de la plupart des autres outils proposés par la FSF (Free Software Foundation, Fondation pour le Logiciel Libre), l'évolution de l'ensemble du code Lisp a été très fluide et très dirigée par les utilisateurs. On a souvent réécrit les idées et les prototypes des modes trois ou quatre fois avant d'atteindre une forme finale stable. Et les exemples de collaborations occasionnelles rendues possibles par l'Internet, à la manière de Linux, ne manquent pas.

En fait, ma bidouille personnelle qui a rencontré le plus de succès, avant fetchmail, fut probablement le mode VC pour Emacs, issu d'une collaboration par courrier électronique à la Linux avec trois autres personnes, et je n'ai toujours rencontré que l'une d'entre elles (Richard Stallman, l'auteur d'Emacs et le fondateur de la FSF) à ce jour. C'était une interface sous Emacs pour SCCS, RCS et plus tard pour CVS, qui fournissait toutes les opérations de contrôle de version avec un seul bouton. Il était parti d'un mode sccs.el très rudimentaire et tout petit, écrit par quelqu'un d'autre. Et le développement de VC fut réussi parce que, à la différence d'Emacs lui-même, le code Lisp pour Emacs pouvait traverser très rapidement les cycles de mise à jour/test/amélioration.


Page suivante Page précédente Table des matières