p.1Le 27 septembre 1983, les programmeurs se connectant au groupe de discussion Usenet net.unix-wizards reçurent un message peu habituel. Posté aux premières heures du jour, à minuit et demi exactement, et signé rms@mit-oz, l’objet du message était laconique mais attirait l’attention. « Nouvelle implémentation d’Unix », pouvait-on lire.
p.2Pourtant, au lieu de présenter une version fraîchement disponible d’Unix, le premier paragraphe du
message était en fait un appel à contribution :
Dès le Thanksgiving prochain, je commencerai à écrire un système logiciel complet, compatible Unix, appelé GNU (pour GNU N'est pas Unix), et le distribuer librement à tous ceux qui souhaitent l'utiliser. Je fais appel à toute contribution en temps, en argent, en programmes et en matériel pour faire avancer ce projet.
p.3Pour un développeur Unix expérimenté, le message traduisait un mélange d’idéalisme et d’orgueil
démesuré. Non content de s’engager à repartir de zéro dans la reconstruction du système d’exploitation Unix déjà abouti, l’auteur proposait en plus de l’améliorer par endroits. Le nouveau système
GNU, prédisait-il, intégrerait tous les composants essentiels : un éditeur de texte, un shell pour lancer des applications compatibles Unix, un
compilateur, « et diverses autres choses ». À cela s’ajouteraient de nombreuses
fonctions particulièrement séduisantes, pas encore disponibles dans les autres systèmes Unix : une interface graphique basée sur le langage de programmation Lisp, un
système de fichiers résistant aux pannes et des protocoles réseaux prenant modèle sur ceux du MIT.
p.4« GNU sera capable d’exécuter des programmes Unix, mais ne sera pas identique à Unix, écrivait l’auteur. Nous ferons toutes les améliorations utiles, d’après notre expérience au contact d’autres systèmes d’exploitation. »
p.5Prévoyant une réaction sceptique de la part de certains lecteurs, l’auteur poursuivait l’exposé de
son ébauche de système d’exploitation avec une brève note biographique intitulée « Qui suis-je ? » :
Je suis Richard Stallman, l'inventeur de l'éditeur Emacs si souvent imité, et je travaille actuellement au Laboratoire d’intelligence artificielle du MIT. J'ai beaucoup travaillé sur des compilateurs, des éditeurs, des débogueurs, des interpréteurs de commandes, ainsi que sur l'ITS et le système d'exploitation des machines Lisp. J'ai été le premier à mettre au point un affichage indépendant du terminal pour ITS. De plus, j'ai mis en place un système de fichiers résistant aux pannes et deux systèmes de fenêtrage pour machines Lisp.
p.6Le destin a finalement voulu que le projet fou de Stallman, le projet GNU, ne soit pas lancé en ce
jour de Thanksgiving. Ce ne fut qu’en janvier 1984 que Stallman, tenant sa promesse, s’immergea entièrement dans le développement de programmes Unix. Pour un architecte logiciel nourri au lait de
l’ITS, c’était comme concevoir un petit centre commercial en banlieue après avoir rêvé de palais mauresques. Néanmoins, bâtir un système d’exploitation de type Unix avait certains avantages
insoupçonnés. Car malgré sa puissance, l’ITS avait également un talon d’Achille : les développeurs du MIT l’avaient écrit spécifiquement pour la puissante architecture
du PDP-10. Quand les administrateurs du AI Lab choisirent de remplacer cette machine au début des années 1980, le système d’exploitation, comparé jusqu’alors par les hackers
à une cité grouillante d’activité, ne fut subitement plus qu’une ville fantôme.
p.7Unix, à l’inverse, avait été conçu pour le portage, ce qui l’immunisait contre un tel danger. À
l’origine développé par les jeunes chercheurs d’AT&T, le programme avait échappé au contrôle des dirigeants de l’entreprise et trouvé la terre promise dans le monde des
systèmes informatiques universitaires, moins soucieux des contingences matérielles. Disposant de ressources plus limitées que celles de leurs frères du MIT, les développeurs d’Unix avaient adapté le
logiciel pour qu’il puisse piloter un assortiment de matériels des plus divers : le PDP-11 16 bits, tout d’abord, considéré par les hackers du AI Lab comme une machine adaptée uniquement
aux petits travaux, mais aussi, plus tard, les unités centrales 32 bits telles le VAX 11/780. En 1983, quelques sociétés, parmi lesquelles Sun Microsystems, notamment, avaient lancé le développement d’une génération d’ordinateurs de bureau plus puissants baptisés « stations de travail », afin de
tirer profit de ce système d’exploitation toujours plus présent sur les machines de capacités équivalentes à l’ancien PDP-10.
p.8Pour faciliter le portage, les développeurs d’Unix ajoutèrent une couche
d’abstraction entre le logiciel et la machine. Plutôt que d’écrire du code spécifiquement pour une machine donnée – comme cela avait été le cas avec l’ITS et le PDP-10 – ils utilisèrent un langage de haut niveau appelé C. Ils se concentrèrent sur les interfaces et les spécifications liant entre eux les nombreux
sous-composants du système d’exploitation, au lieu de s’attacher exclusivement aux composants eux-mêmes. Ainsi créèrent-ils un système qui pouvait facilement être adapté pour s’exécuter sur n’importe
quel type de machine. Si un utilisateur n’était pas satisfait d’un composant, il lui était alors possible, via ces interfaces, d’en retirer une partie spécifique pour le corriger, ou de le remplacer.
En bref, l’approche d’Unix mettait en avant flexibilité et économie, d’où son adoption rapide.
p.9La décision d’amorcer le développement du système GNU avait été provoquée par l’abandon de l’ITS,
système que les hackers du AI Lab avaient passé tant de temps à perfectionner. La mort du programme, qui signifait aussi celle de la communauté qui le soutenait, fut un coup dur pour Stallman. Si
l’épisode de l’imprimante laser Xerox lui avait ouvert les yeux sur l’iniquité de la privatisation des logiciels, l’anéantissement de la communauté le mettait face à un choix cornélien :
capituler et rejoindre le camp privateur, ou s’y opposer.
p.10À l’instar de son code source, les causes de la mort de l’ITS étaient
profondément enracinées dans le passé. En 1980, la plupart des hackers du AI Lab travaillaient déjà sur le développement de la machine Lisp et son système
d’exploitation.
p.11Inventé par John McCarthy, chercheur pionnier en
intelligence artificielle au MIT à la fin des années 1950, Lisp était un langage élégant, bien adapté à l’écriture de programmes complexes pour le traitement de données à structure irrégulière. Le
nom du langage est la contraction de LISt Processing (traitement de liste). Après le départ de McCarthy pour le laboratoire d’intelligence artificielle de
Stanford, les hackers du MIT perfectionnèrent le langage en créant un dialecte local dénommé MacLisp. Ce nom faisait référence au projet MAC, projet de
recherche de la DARPA qui avait donné naissance au AI Lab et au Laboratoire de sciences
informatiques. Menés par Richard Greenblatt, ils fabriquèrent à la fin des années 1970 un ordinateur spécialement optimisé pour Lisp, la machine Lisp, avant de lui dédier un système d’exploitation complet, lui aussi basé sur Lisp.
p.12Toujours en 1980, deux compagnies, formées par deux groupes rivaux de hackers, avaient vu le
jour dans le but de fabriquer et de vendre des copies de la machine Lisp. Greenblatt avait lancé Lisp
Machines Inc. (LMI), comptant se passer d’investissements extérieurs pour former une pure « compagnie de hackers ». Mais la plupart d’entre eux rejoignirent Symbolics Inc., start-up plus conventionnelle dirigée par Russell Noftsker, un ancien administrateur du AI Lab. Dès 1982,
toutes ces recrues cessèrent de travailler au MIT.
p.13Seuls quelques hackers étant restés pour tenir la boutique, les délais de maintenance des
programmes et des machines s’allongèrent – si tant est qu’ils fussent mis à jour. Pire encore, selon Stallman, le labo amorçait un « changement démographique ». Les hackers qui formaient
autrefois une minorité active au sein du AI Lab étaient presque tous partis, tandis que « les professeurs et les étudiants qui n’aimaient pas vraiment le PDP-10
étaient tout aussi nombreux qu’auparavant. »
p.14C’est aussi en 1982 que le AI Lab reçut la machine qui devait remplacer son principal
ordinateur, le PDP-10, alors âgé de plus de douze ans. Or si le modèle de Digital (DEC) alors en cours, le Decsystem 20, était compatible avec les programmes des utilisateurs, il aurait fallu récrire en profondeur l’ITS, ou du moins le « porter » à nouveau, pour
que les hackers puissent continuer à l’utiliser. Craignant que le labo n’ait perdu un nombre trop important de ses programmeurs de talent, les membres de la faculté firent pression pour obtenir
Twenex, un système d’exploitation commercial développé par Digital. Minoritaires, les hackers n’eurent d’autre choix que de s’incliner.
p.15« Sans hackers pour maintenir le système, nous allons droit au désastre ; il nous faut
un logiciel commercial. » Stallman se souviendrait de ces mots prononcés par les membres de la faculté quelques années plus tard. « ‘Nous pouvons compter sur la société [Digital] pour en
assurer la maintenance’, affirmaient-ils. La suite a prouvé qu’ils se trompaient lourdement, mais c’est pourtant ça qu’ils ont fait. »
p.16Au début, les hackers considérèrent le système Twenex comme un
nouveau symbole d’autorité ne demandant qu’à être détourné. Le nom même du système était une provocation. Officiellement dénommé TOPS-20 par DEC, il se
présentait comme le successeur du TOPS-10, le système d’exploitation non libre distribué pour le PDP-10. Or, en réalité, le TOPS-20 n’avait pas grand chose à voir avec le
TOPS-10. C’était un dérivé du système Tenex que Bolt Beranek Newman avait développé pour le PDP-10. Stallman, qui était à l’origine du nom « Twenex », explique qu’il l’a inventé pour éviter d’utiliser celui de TOPS-20. « Ce système était loin d’être le
meilleur, il était donc hors de question de lui donner un nom aussi flatteur, se souvient-il. C’est pourquoi j’ai décidé de glisser un W dans son nom et de l’appeler Twenex. »
p.17La machine sur laquelle tournait le système Twenex/TOPS-20 fut elle aussi dotée d’un
sobriquet : Oz. Elle avait hérité ce surnom car elle avait besoin d’un petit PDP-11 pour faire fonctionner son terminal, dit la légende. Un hacker, voyant fonctionner pour la première fois le
tandem KL-10–PDP-11 aurait fait référence à l’entrée en scène de l’orgueilleux magicien du film Le Magicien d’Oz : « Je suis le grand, le puissant Oz,
entonna-t-il, ne faites pas attention au PDP-11 qui se cache derrière la console ! »
p.18Si la découverte du KL-10 ne manqua pas de provoquer les rires des
hackers, leur premier contact avec Twenex leur fit rapidement perdre tout sens de l’humour. Non content de se prévaloir d’une sécurité intégrée, le système de sécurité était devenu une obsession pour
les ingénieurs qui avaient conçu les utilitaires et les applications. Avec Twenex, ce qui revenait autrefois à jouer au chat
et à la souris avec les mots de passe dans le cadre du dispositif de sécurité en vigueur au laboratoire de sciences informatiques s’apparentait désormais à une guerre ouverte pour l’administration du
système. Les administrateurs arguaient du fait que sans sécurité, le système Oz était davantage enclin aux pannes accidentelles. Les hackers répliquaient que de tels accidents pourraient être évités
grâce à la refonte du code source. Malheureusement, le nombre d’entre eux ayant le temps et l’envie de procéder à ce type de vérification avait diminué, à tel point que c’est l’argument des
administrateurs système qui eut le dessus.
p.19La politique initiale voulait que tout membre du AI Lab ait les droits pour contourner les
restrictions de sécurité. Or toute personne se dotant de ces privilèges était en mesure d’en priver n’importe quelle autre, qui se trouvait alors dans l’impossibilité de les restaurer. Naturellement,
une poignée de hackers fut tentée de prendre le contrôle total du système en gardant pour eux seuls ces privilèges…
p.20Détournant des mots de passe et à l’aide du débogueur lancé dès le démarrage, Stallman réussit à
déjouer ces tentatives. Après avoir mis en échec un second « coup d’état » de ce type, il envoya un message d’alerte à tout le personnel du AI Lab : « Une nouvelle tentative de
prise de pouvoir a eu lieu, écrivit-il. Jusqu’ici, les forces aristocratiques ont été défaites. » Afin de protéger son identité, il signa son message « Radio Free OZ ».
p.21Mais le déguisement était bien mince. En 1982, l’aversion de Stallman pour les mots de passe et
le secret était d’une telle notoriété que des utilisateurs externes au AI Lab employaient son compte comme passerelle pour accéder à l’Arpanet – le réseau informatique financé par la recherche,
ancêtre de l’Internet actuel. Parmi ces « touristes » du début des années 1980, on compte Don Hopkins, un programmeur de Californie. Grâce au
téléphone arabe des réseaux de hackers, il avait appris que tout ce qu’un intrus avait à faire pour accéder au célèbre système ITS du MIT était d’ouvrir une session sous
les initiales RMS et de répéter ce même monogramme de trois lettres en guise de mot de passe.
p.22« Je serai éternellement reconnaissant au MIT de m’avoir, comme de nombreux autres, laissé
utiliser librement ses ordinateurs, déclare Hopkins. Cela a beaucoup compté pour un grand nombre d’entre nous. »
p.23Cependant, cette politique « touristique », ouvertement tolérée par les responsables
du MIT au cours des années ITS, tourna court quand Oz devint le premier maillon de
raccordement du labo à l’Arpanet. Les premiers temps, Stallman poursuivit sa stratégie qui consistait à reprendre son identifiant de connexion comme mot de passe, permettant ainsi aux utilisateurs
extérieurs d’avoir un accès via son propre compte. Mais la fragilité d’Oz incita par la suite les administrateurs à interdire l’accès aux intrus qui, par pure maladresse ou par malveillance
délibérée, auraient pu endommager le système. Lorsque ces mêmes administrateurs exigèrent par la suite de Stallman qu’il cesse de diffuser son mot de passe, ce dernier, invoquant son éthique
personnelle, préféra cesser complètement d’utiliser Oz.
p.24« [Lorsque] les mots de passe ont fait leur première apparition au AI Lab, j’ai [décidé] de
suivre ma conviction selon laquelle il ne devrait pas y avoir de mots de passe. Dans la mesure où je ne crois pas qu’il soit vraiment souhaitable d’avoir une quelconque sécurité sur un ordinateur, je
ne vois pas pourquoi j’aurais dû collaborer avec ce régime sécuritaire. »
p.25Le refus de Stallman de s’incliner devant le grand et puissant Oz était représentatif de la
tension croissante entre hackers et responsables du AI Lab au début des années 1980. Une tension qui allait malgré tout passer au second plan, occultée par le conflit qui faisait rage au sein même de
la communauté des hackers… À l’arrivée du Decsystem 20, celle-ci était bel et bien divisée en deux camps, fédérés chacun autour d’une des sociétés LMI ou Symbolics.
p.26Symbolics, grâce à ses investissements externes, avait recruté des développeurs du AI Lab et les
faisait travailler à l’amélioration de divers composants du système d’exploitation de la machine Lisp, hors du giron du laboratoire. Fin 1980, la société avait
recruté quatorze hackers du laboratoire comme conseillers à temps partiel pour le développement de sa version de la machine Lisp. Les quelques autres qui restaient se mirent à travailler pour
LMI. Quant à Stallman, préférant la vie sans contraintes du laboratoire et non enclin à
prendre parti, il fit le choix de ne rejoindre aucune des deux sociétés.
p.27Les premiers temps, les hackers continuèrent à passer une partie de leur temps au MIT,
contribuant au développement de la machine Lisp. Les deux sociétés, Symbolics et LMI, avaient acquis du MIT la licence du code source. Cette licence les obligeait à retourner leurs modifications au
MIT, sans toutefois les contraindre à laisser l’institut redistribuer leurs modifications. Malgré cela, au milieu de l’année 1981, elles donnèrent leur accord de principe autorisant cette
redistribution. Ainsi, toutes leurs améliorations du système furent intégrées à la version du MIT et partagées entre tous les utilisateurs de machines Lisp. C’est ce qui permit à ceux restés au
centre de conserver leur neutralité.
p.28Or, le 16 mars 1982, date mémorable pour Stallman car c’était son anniversaire, les cadres de
Symbolics mirent fin à cet accord. La raison de cette décision était simple : porter atteinte à LMI. En effet, du fait qu’elle employait un nombre plus restreint de programmeurs et de personnel
en général, c’est LMI qui aurait tiré les principaux bénéfices du partage des améliorations, selon Symbolics. En mettant fin au partage du code, les cadres de Symbolics espéraient ainsi liquider leur
rivale. C’est pourquoi ils décidèrent d’appliquer la licence à la lettre.
p.29Désormais, au lieu de contribuer directement aux améliorations de la version du MIT, ce dont LMI
pouvait profiter, ils se contentèrent de fournir une copie de leur version complète du système à l’usage des employés du MIT. Tout utilisateur se retrouvait alors à tester cette version dans l’unique
intérêt de Symbolics et, s’il y apportait des améliorations, il était plus que probable qu’elles soient utiles avant tout à Symbolics.
p.30En tant qu’administrateur responsable de la machine Lisp du laboratoire (assisté de Greenblatt, dans les premiers mois), Stallman était fou de rage. Les programmeurs de Symbolics avaient en effet laissé dans le code des centaines de
modifications inachevées, à l’origine de nombreuses erreurs. Considérant cette annonce comme un ultimatum, il riposta en coupant la liaison sans fil entre la société et le laboratoire. Il se jura
ensuite de ne jamais plus travailler sur la machine de Symbolics et s’engagea à poursuivre le développement du système du MIT, de manière à défendre LMI contre sa rivale. « De mon point de vue,
le AI Lab était un pays neutre, tout comme la Belgique durant la Première Guerre mondiale, explique Stallman. Si l’Allemagne envahit la Belgique, la Belgique déclare la guerre à l’Allemagne aux côtés
de la Grande-Bretagne et de la France. »
p.31Lorsque les cadres de Symbolics prirent conscience que leurs dernières fonctionnalités étaient
encore implémentées systématiquement dans la machine Lisp du AI Lab et, par extension, dans celle de LMI, cela ne les enchanta guère. Mais Stallman, qui connaissait les implications de la loi sur le
copyright, repartait de zéro dans la récriture des fonctionnalités. Tirant parti de la lecture du code source fourni au MIT par Symbolics, il faisait en sorte de comprendre les erreurs et leurs
corrections de manière à produire un code source aussi différent que possible.
p.32Inutile de dire que les cadres de Symbolics n’en croyaient pas un mot. Ils installèrent un
programme espion sur la machine de Stallman afin d’obtenir des preuves contre lui. Pourtant, lorsqu’ils plaidèrent leur cause auprès de l’administration du MIT, au début de l’année 1983, les preuves
avancées étaient bien minces : à peine une douzaine d’occurrences dans le code source où les deux versions apparaissaient modifiées de manière similaire.
p.33Lorsque les administrateurs du AI Lab présentèrent ces preuves à Stallman, ce dernier les réfuta
en démontrant que les similarités dataient en fait d’avant la séparation. Il en profita pour retourner l’argument contre ses accusateurs : si, après les milliers de lignes de code qu’il avait
réécrites, Symbolics n’avait pas de preuves plus convaincantes, cela démontrait qu’il s’était véritablement appliqué à éviter toute copie de code. Son travail ayant été approuvé par l’administration
du AI Lab, il continua à intégrer les changements effectués par Symbolics jusqu’à la fin de l’année 1983.
p.34Stallman modifia néanmoins sa manière de procéder : « Pour plus de sûreté, j’ai cessé
de lire leur code source [pour y chercher les nouvelles fonctionnalités ou changements majeurs]. Je ne me suis plus référé qu’à la documentation, en partant d’elle pour écrire le code. » Quant
aux améliorations les plus importantes, il les concevait seul, sans attendre la publication de la nouvelle documentation. Une fois celle-ci disponible, il modifiait alors ses ajouts de façon à les
rendre compatibles avec l’interface de Symbolics. Enfin, la lecture du code source fourni par la compagnie lui permettait d’y trouver la correction des bogues mineurs, et ainsi de les corriger à son
tour, de manière différente.
p.35Cette expérience conforta Stallman dans sa détermination. Tout à la création des nouvelles
fonctions destinées à remplacer celles de Symbolics, il engagea les membres du AI Lab à poursuivre leur travail sur le sytème du MIT, de manière à fournir un flux soutenu de rapports de bogues. Il
s’assura par la même occasion que les programmeurs de LMI disposent toujours d’un accès direct à ces modifications. « Je devais punir Symbolics coûte que coûte, serait-ce la dernière chose que
je dusse faire », affirme Stallman.
p.36De telles déclarations sont riches d’enseignement. Non seulement mettent-elles en lumière le
tempérament quelque peu belliciste de Stallman, mais elles reflètent également l’intensité émotionnelle du conflit.
p.37Si le désespoir de Stallman atteignait un tel degré, c’est qu’il ressentait comme la
« destruction » de son « foyer », la disparition de la sous-culture très unie des hackers au AI Lab. Au cours d’un entretien par courrier électronique avec Levy, il allait par la suite se comparer à la figure historique d’Ishi, le dernier survivant des Yahis, une tribu du nord-ouest de la côte Pacifique qui fut décimée
lors des guerres indiennes des années 1860 et 1870. Une analogie qui élève sa lutte pour la survie à un niveau épique, aux frontières du mythe.
p.38Du côté de Symbolics, on envisageait les choses différemment. En effet, plutôt que de considérer
leur entreprise comme une force exterminatrice, nombre des collègues de Stallman y voyaient l’occasion tardive de trouver enfin leur place. En commercialisant la machine Lisp, la compagnie exportait
les principes d’ingénierie logicielle des hackers hors de la tour d’ivoire du AI Lab, pour les faire pénétrer le domaine commercial, où les principes de conception étaient dictés par des
gestionnaires. Au lieu de voir en Stallman un résistant, beaucoup le considéraient comme un rétrograde.
p.39À tout cela s’additionnaient des conflits personnels. Bien avant que Symbolics n’ait débauché la
majeure partie des hackers du AI Lab, Stallman indique que plusieurs d’entre eux l’évitaient déjà. « On ne m’invitait plus à Chinatown, se souvient-il. La coutume inaugurée par Greenblatt voulait que si vous partiez dîner en ville, vous fassiez le tour ou envoyiez un message pour proposer à tous ceux du laboratoire de vous accompagner.
C’est vers 1980-1981 que l’on a cessé de m’inviter. Comme si cela ne suffisait pas, quelqu’un m’avoua même plus tard qu’on l’avait poussé à me mentir pour tenir leurs dîners sans moi
secrets. »
p.40Stallman avait été blessé par cet ostracisme mesquin, mais il ne pouvait rien y faire.
L’ultimatum de Symbolics fit passer le problème d’un rejet personnel à une plus grande injustice. Lorsque la société cessa de redistribuer ses améliorations de code source à seule fin de mettre en
faillite sa concurrente, Stallman décida de contre-attaquer. En se terrant dans les bureaux du MIT pour y réécrire chaque nouvelle fonctionnalité, chaque nouvel outil, il donnait à tous les
utilisateurs de machines Lisp, y compris les clients de LMI, un accès aux mêmes fonctions que celles fournies par Symbolics.
p.41Son statut de légende vivante n’en fut que renforcé au sein de la communauté. Déjà consacrée
lors de son travail sur Emacs, la capacité de Stallman à produire seul un travail équivalent à celui de toute l’équipe des programmeurs de Symbolics (équipe au sein de laquelle on comptait plus d’un
hacker légendaire), constitue l’un des plus grands exploits humains de l’ère de l’information.
p.42Y voyant le « coup de maître [d’un] John Henry virtuel de la programmation », l’auteur
Steven Levy remarque que nombre des rivaux de Stallman, chez Symbolics, ne pouvaient faire autrement que de tenir en estime, même à contrecœur, leur ancien
camarade idéaliste. Levy rapporte les propos de Bill Gosper, qui finira par travailler pour Symbolics dans les bureaux de Palo Alto, exprimant son
émerveillement pour le travail fourni par son ex-collègue durant cette période :
p.43« S’il aurait pu m’arriver de trouver mauvais quelque chose écrit par Stallman (cela est
peu probable, mais quelqu’un aurait pu m’en convaincre…), eh bien même alors, j’aurais continué à dire : ‘Attendez une minute ! Stallman n’avait personne avec qui débattre des nuits
entières, là-bas. Il a travaillé seul ! C’est tout bonnement incroyable que quelqu’un ait pu réaliser tout cela tout seul !’ »
p.44Les mois passés à lutter contre Symbolics laissèrent à
Stallman un mélange de fierté et de profonde tristesse. Libéral convaincu dont le père avait servi pendant la Deuxième Guerre mondiale, il n’avait rien d’un pacifiste. De bien des manières, la guerre
contre Symbolics représentait le rite de passage auquel il s’était préparé depuis qu’il avait rejoint le personnel du AI Lab, dix ans plus tôt.
p.45Mais en même temps, ce conflit coïncidait avec la traumatisante destruction de la culture
hacker, au sein de laquelle Stallman avait évolué depuis son adolescence. Un jour, raconte-t-il, alors qu’il faisait une pause dans l’écriture du code, il éprouva un sentiment bouleversant au moment
de traverser la salle des machines du laboratoire. Il y faisait face à la carcasse massive du PDP-10 abandonné. Saisi par les voyants éteints, voyants qui autrefois
clignotaient silencieusement pour indiquer l’état du programme en cours, il ressentit une émotion similaire à celle que lui aurait inspirée la vision d’un être cher défunt.
p.46« Je me mis à pleurer d’un coup, là en plein milieu de la salle des machines. Voir cette
machine-là, morte, sans plus personne pour s’en occuper, me remémora ô combien ma communauté avait été détruite. »
p.47Mais Stallman n’aurait guère le temps de pleurer. En dépit de toutes les passions qu’elle avait
provoquées et de tout le travail consacré à son élaboration, la machine Lisp n’avait donné lieu qu’à une escarmouche sur le champ des grandes batailles en cours sur le marché des nouvelles
technologies. La course implacable vers la miniaturisation des ordinateurs apportait avec elle de nouveaux microprocesseurs plus puissants, qui n’allaient pas tarder à contenir toutes les capacités
matérielles et logicielles de la machine, à l’image d’une métropole moderne dévorant les ruines d’un vieux village fantôme.
p.48Surfant sur cette vague du microprocesseur, des centaines, pour ne pas dire des milliers, de
logiciels non libres, chacun protégé par un patchwork de licences utilisateur et de clauses de confidentialité, interdisaient aux développeurs l’examen ou le partage du code source. Les licences
furent d’abord rudimentaires et mal taillées, mais en 1983, elles étaient devenues assez solides pour satisfaire les tribunaux et dissuader tout contrevenant potentiel. Le logiciel, autrefois
considéré comme une forme de garniture offerte par les fabricants pour donner plus de saveur à leurs coûteux systèmes informatiques, devint rapidement le plat principal. Toujours plus affamés de jeux
et de nouveautés, les utilisateurs en omettaient de demander la recette, comme on le fait traditionnellement après chaque repas.
p.49Nulle part cet état de fait n’était plus évident qu’au royaume de l’ordinateur individuel. Des
compagnies comme Apple ou Commodore faisaient la fortune de jeunes entrepreneurs grâce à la vente de machines dotées de systèmes
d’exploitation intégrés. Ignorant tout de la culture hacker et de son aversion pour le logiciel pré-compilé, la plupart des utilisateurs n’éprouvèrent pas le besoin de protester lorsque ces
compagnies cessèrent de fournir leurs programmes accompagnés des fichiers contenant le code source. Et si quelques adeptes rebelles de l’éthique hacker réussirent à lui donner une petite place sur le
nouveau marché, le fait est que ce dernier ne récompensait, pour l’essentiel, que les programmeurs suffisamment prompts pour créer de nouveaux logiciels et assez futés pour écrire des licences (CLUF)
et en verrouiller l’usage.
p.50Parmi les plus célèbres d’entre eux figurait Bill Gates.
Ayant rapidement abandonné ses études à Harvard, Gates était un jeune chef d’entreprise, co-fondateur de la société de logiciels Micro-Soft (qui s’écrirait plus tard
Microsoft), établie à Albuquerque. Bien que Stallman, de deux ans son aîné, ne l’ait pas su alors, Gates avait, sept ans avant l’envoi du message de rms au
groupe net.unix-wizards, adressé lui aussi une lettre ouverte à la communauté des développeurs. Sa « lettre ouverte aux amateurs », du 3 février
1976, destinée aux utilisateurs de PC copiant les programmes de Micro-Soft, condamnait sans appel la notion de développement communautaire des logiciels.
p.51« Qui peut se permettre d’effectuer un travail professionnel pour rien ? Quel amateur
peut-il investir trois années de sa vie à développer, trouver tous les bogues et documenter son produit, pour ensuite le distribuer gratuitement ? » demandait Bill Gates.
p.52Bien que peu de hackers du AI Lab l’aient lue, cette lettre illustre néanmoins le changement
d’attitude qui s’est opéré à l’égard des logiciels, tant de la part des compagnies qui les vendent que de celle des développeurs commerciaux. Pourquoi traiter le logiciel comme un produit sans valeur
alors que le marché en a décidé autrement ?
p.53Au tournant des années 1980, la vente de programmes ne constituait plus seulement un moyen
d’amortir les coûts : c’était devenu un enjeu politique. À l’heure où l’administration Reagan s’empressait de démanteler nombre de règlements fédéraux et suspendait les projets publics
échafaudés durant le demi-siècle qui avait fait suite à la Grande Dépression, plus d’un programmeur considérait l’éthique des hackers comme anti-compétitive et, par extension, anti-patriotique. Au
mieux, c’était un retour aux attitudes anti-corporatistes de la fin des années 1960 et du début des années 1970. Tel un banquier de Wall Street découvrant un de ses vieux T-shirts hippies caché entre
ses chemises Cardin et ses costumes trois-pièces, nombre d’informaticiens ne regardaient plus l’éthique des hackers que comme le rappel embarrassant d’une époque idéaliste.
p.54Pour un homme qui avait vécu toutes les années 1960 tourné vers les années 1950, Stallman
n’avait que faire de vivre en décalage par rapport à ses pairs. Cependant, programmeur habitué à travailler avec les meilleures machines et les meilleurs logiciels, il se retrouvait face à ce qu’il
ne pouvait qu’appeler un « choix moral cornélien » : soit il ravalait ses objections contre les logiciels « propriétaires » – terme alors employé par Stallman et ses pairs
pour qualifier les programmes dont les termes de copyright ou de licence en restreignent la copie ou la modification – soit il consacrait son existence à l’élaboration d’un autre système libre de
logiciels.
p.55Après deux années de lutte contre Symbolics, Stallman
avait suffisamment gagné en confiance pour choisir la seconde solution. « J’aurais pu tout aussi bien arrêter toute activité informatique, indique-t-il. Je ne suis pas spécialement doué, mais je
suis sûr que j’aurais pu faire serveur. Probablement pas dans un restaurant chic, mais j’aurais bien trouvé une place quelque part. »
p.56Mais laisser tomber complètement la programmation pour devenir serveur, cela aurait voulu dire
abandonner une activité qui lui tenait tant à cœur. Stallman devait admettre que, depuis son entrée à Cambridge, le développement logiciel avait bien souvent été sa seule source de plaisir. Plutôt
que de tout lâcher, il décida de s’accrocher.
p.57Athée, Stallman refuse les notions de destin, de karma ou autre vocation divine, qui
influeraient sur le cours de notre existence. Il a le réel sentiment, néanmoins, que sa décision de combattre les logiciels non libres en créant un système d’exploitation qui aiderait les autres à
faire de même, est toute naturelle. Après tout, c’était bien la combinaison de son obstination, de son intuition et de sa virtuosité dans l’écriture du code, qui lui avait permis d’envisager cette
alternative que nombre d’autres n’auraient même pas pu imaginer. Dans son article intitulé « Le projet GNU », il affirme son adhésion aux idéaux contenus dans les mots du sage juif
Hillel : « Si je ne suis pas pour moi, qui le sera ? Et si je ne suis que pour moi, qui suis-je ? Et si pas maintenant, quand ? »
p.58En public, Stallman évite toute référence religieuse et relate sa décision en termes
pragmatiques.
p.59« Je me suis demandé, que pourrais-je faire, moi, développeur de systèmes d’exploitation,
pour améliorer la situation ? Ce n’est qu’après avoir longuement examiné la question que j’ai pris conscience qu’un développeur de systèmes d’exploitation était précisément ce qu’il fallait pour
résoudre le problème. »
p.60Dès lors, tout le reste allait, selon ses propres mots, « se mettre en place ». En
1983, le MIT fit l’acquisition, auprès de Symbolics, de machines Lisp de seconde génération. Sur ces modèles, le système
interne n’avait aucune chance de fonctionner. Et une fois la plupart des machines remplacées, Stallman aurait dû tout arrêter, dans l’incapacité de maintenir le système de manière efficace, par
manque de rapports de bogues de la part des utilisateurs. Quoi qu’il en fût, il ne souhaitait pas poursuivre. Le système du MIT n’était pas libre, et même si les utilisateurs avaient accès au code
source, ils ne pouvaient pas le redistribuer. Sans compter qu’il avait réussi son pari : LMI avait survécu et développait désormais seule ses
logiciels.
p.61Plutôt que de passer sa vie à châtier ceux qui avaient détruit son ancienne communauté, Stallman
préféra en fonder une nouvelle. Ainsi décida-t-il de refuser tout programme qui le forcerait à compromettre ses convictions morales, et de consacrer sa vie à la création de logiciels permettant
d’éviter ce genre d’écueil, à lui comme aux autres. S’engageant à bâtir un système d’exploitation libre « ou [à] mourir à la tâche… de vieillesse, bien entendu », plaisantait-il, Stallman
démissionna du MIT en janvier 1984, afin de se lancer dans le projet GNU.
p.62Sa démission le soustrayait du giron légal du MIT. Mais il avait encore suffisamment d’amis et
d’alliés au AI Lab pour conserver un accès gracieux à son bureau. Il parvint également à s’assurer des missions en tant que consultant externe pour soutenir les phases initiales du projet GNU.
p.63En démissionnant, Stallman n’en avait pas moins tué dans l’œuf tout débat sur un éventuel
conflit d’intérêt ou sur l’appartenance au MIT du logiciel en question. Lui que la crainte de l’isolement social avait conduit à se réfugier tant et plus au sein du AI Lab en tant que jeune adulte,
construisait désormais un pare-feu légal entre cet environnement et lui.
p.64Les premiers mois, il travailla également à l’écart de la communauté Unix. Bien que son annonce au groupe net.unix-wizards ait attiré des messages de sympathie, peu de volontaires s’engagèrent à rejoindre la
croisade dès la première heure.
p.65« La réaction de la communauté fut assez unanime, se rappelle Rich Morin, alors à la tête d’un groupe d’utilisateurs Unix. ‘Quelle superbe idée ! disait-on. Maintenant, nous voulons voir votre code. Montrez-nous qu’on peut le
faire’. »
p.66Conscient de l’ampleur du travail, Stallman décida d’essayer de réutiliser des logiciels libres
existants partout où cela était possible. Il commença par rechercher les programmes et outils libres susceptibles d’être convertis en programmes et outils GNU. L’un des premiers candidats fut un
compilateur appelé Vuck, qui convertissait des programmes écrits en langage C, très populaire à l’époque, en code compréhensible pour une
machine. Traduit du néerlandais, l’acronyme du programme signifiait « Kit de compilation de l’université libre ». Plein d’optimisme, Stallman s’enquit de savoir si le programme était libre.
Quelle ne fut pas sa déception lorsque l’auteur l’informa que l’expression « université libre » faisait référence à la Vrije Universiteit Amsterdam (Université Libre
d’Amsterdam) !
p.67« Il m’a répondu, moqueur, que si l’université était libre, le compilateur, lui, ne l’était
pas », se souvient Stallman. L’auteur de Vuck ne se contenta d’ailleurs pas d’un refus. Il suggéra même à son interlocuteur d’abandonner le projet GNU pour développer des modules complémentaires
qui amélioreraient les ventes de Vuck, en prenant part aux bénéfices. « C’est pourquoi j’ai décidé que mon premier programme pour le projet GNU serait un compilateur multi-langage et
multi-plate-forme », ajoute Stallman.
p.68À défaut de Vuck, il trouva un compilateur Pastel, écrit par des programmeurs du Lawrence Livermore National
Lab. Ils lui en donnèrent une copie et, selon leurs dires, le compilateur était libre d’être copié et modifié. Malheureusement, le programme ne convenait pas, nécessitant des ressources bien trop
importantes en mémoire. Il analysait en effet la totalité d’un fichier en mémoire centrale, ce qui avait pour effet d’empêcher les autres données de circuler tant que la compilation n’était pas
terminée. Sur de gros ordinateurs, ce défaut de conception était pardonnable. Sur les systèmes Unix, en revanche, il constituait une barrière infranchissable, les machines
32 bits étant alors elles-mêmes souvent trop peu puissantes pour fournir autant de mémoire à un seul programme.
p.69Dans un premier temps, Stallman fit faire au programme des progrès considérables. Il ajouta au
compilateur un frontal compatible C et le testa sur le gros Vax, dont le système pouvait dédier davantage de place à la mémoire. Mais lorsqu’il tenta de le porter sur le processeur 68010 et investiga
la raison du plantage, il comprit que le problème de taille de mémoire l’obligerait à récrire entièrement un nouveau compilateur à partir de zéro. C’est d’ailleurs ce qu’il finirait par faire plus
tard, en créant le GNU C Compiler, plus connu sous le nom de GCC. Mais en 1984, il était encore trop tôt pour aviser quoi faire avec
le compilateur ; Stallman mit donc cette tâche en attente et préféra concentrer toute son attention sur le reste du projet GNU.
p.70Ainsi commença-t-il, dès septembre 1984, le développement d’une version GNU d’Emacs, le
programme qu’il avait lui-même maintenu une décennie durant. Au sein du monde Unix, les deux éditeurs de texte alors disponibles étaient vi, écrit par Bill Joy, cofondateur de Sun Microsystems, et ed, de Ken Thompson, des laboratoires Bell, par ailleurs co-créateur d’Unix. Tout aussi utiles que populaires, aucun de ces deux programmes
n’offrait pourtant les possibilités d’extension sans limites d’Emacs.
p.71En y repensant, Stallman déclare qu’il n’y avait rien de stratégique dans sa décision :
« Je voulais un Emacs et c’était l’occasion d’en développer un. »
p.72Une fois de plus, il avait trouvé un code préexistant grâce auquel il espérait gagner du temps.
En écrivant une version Unix d’Emacs, il se retrouva vite sur les pas de James Gosling, un diplômé de Carnegie Mellon, auteur
d’une version d’Emacs en C baptisée Gosling Emacs ou Gosmacs. La
version de Gosling incluait un interpréteur de langage Lisp simplifié, appelé Mocklisp. Bien que son auteur ait placé Gosmacs sous
copyright et vendu les droits à UniPress, une compagnie logicielle privée, Stallman fut conforté dans ses intentions par l’un de ses collègues qui avait participé aux
premières phases de développement de Gosmacs. Celui-ci assurait en effet que Gosling, alors encore doctorant à Carnegie, lui avait donné par courriel la permission de distribuer sa propre version de
Gosmacs, en échange de sa contribution au développement.
p.73Stallman avait pensé en premier lieu ne modifier que les commandes utilisateur, afin d’offrir
une compatibilité parfaite avec l’Emacs original tournant sur PDP-10. Pourtant, s’apercevant combien Mocklisp était faible en comparaison du vrai Lisp, il se sentit vite
contraint d’en revenir à l’original. Tout naturellement, l’envie lui vint de récrire la plus grande partie du cœur de Gosmacs, mais d’une manière totalement différente, afin de tirer parti de la
puissance et de la flexibilité de Lisp. Ainsi, dans le programme GNU Emacs disponible sur l’Internet au milieu de l’année 1985, seuls quelques fichiers contenaient encore
du code de Gosmacs.
p.74Cela n’empêcha pas que lorsqu’elle eut vent du projet, la firme UniPress nia les affirmations du
développeur qui prétendait avoir reçu le droit de distribuer sa propre version du programme. Hélas, celui-ci ne put remettre la main sur l’ancien e-mail en question pour se défendre. Stallman coupa
court en récrivant tout bonnement le code des quelques modules résiduels de Gosmacs.
p.75Néanmoins, la simple idée que des développeurs puissent liquider leurs droits – et, au-delà,
l’idée même qu’un développeur dispose de tels pouvoirs commerciaux – lui était intolérable. Dans le discours qu’il prononça en 1986 à l’Institut technique royal suédois, il montra du doigt l’incident
d’UniPress comme un nouvel exemple des dangers liés à la privatisation des logiciels.
p.76« Parfois, je me dis que l’une des meilleures choses que je pourrais faire dans ma vie
serait de dégotter une quantité gigantesque de logiciels couverts par le secret commercial, et d’en distribuer des copies au coin de la rue. Ainsi, il n’y aurait plus de secret commercial, dit
Stallman. Ce serait sans doute une manière beaucoup plus efficace d’offrir aux gens de nouveaux logiciels libres plutôt que de tout écrire moi-même ; mais les gens seraient encore trop lâches
pour les prendre. »
p.77En dépit de la tension qu’elle avait provoquée, la controverse sur le code de Gosling aida en fait Stallman et le mouvement pour le logiciel libre sur le long terme. Stallman fut ainsi forcé de trouver des solutions aux faiblesses de la
« Commune Emacs » et du contrat de confiance informel qui laissait la porte
ouverte aux abus. Cela l’obligea aussi à préciser les objectifs politiques du mouvement du logiciel libre.
p.78Suivant la sortie de GNU Emacs en 1985, Stallman publia « Le
manifeste GNU », un complément à l’annonce initiale de septembre 1983. Une importante section de ce document était consacrée aux nombreux argumentaires déployés par les programmeurs des secteurs
privés et universitaires pour justifier de la prolifération des logiciels privateurs. L’un des arguments avancés, en particulier, « Les programmeurs ne méritent-ils pas une récompense pour leur
créativité ? », recevait une réponse qui contenait en elle toute la colère de Stallman à la suite de l’affaire Gosling : « Si quelque chose mérite une récompense, c’est bien la
contribution à la société, écrivait Stallman. La créativité peut être un apport à la société, mais uniquement dans le cas où cette dernière est libre d’en
utiliser le produit. Si des programmeurs méritent d’être récompensés pour la création de programmes novateurs, ils méritent tout autant d’être punis s’ils en limitent l’utilisation. »
p.79Avec la publication de GNU Emacs, le projet GNU avait enfin du code
à montrer. S’ensuivirent tous les soucis propres à n’importe quelle entreprise produisant du logiciel. En effet, de plus en plus de concepteurs Unix se frottaient au logiciel, et l’argent, les
cadeaux ou les demandes de copies sur bande commencèrent à affluer. Pour gérer les aspects commerciaux, Stallman réunit quelques-uns de ses collègues pour former la Free Software Foundation (FSF), une organisation à but non lucratif pour aider le projet GNU à atteindre son but le plus rapidement possible. Avec Stallman comme président,
et quelques amis et collègues hackers comme membres du conseil, la FSF permit de donner une vitrine publique au projet.
p.80Robert Chassell, à l’époque programmeur chez
LMI, devint l’un des cinq membres du conseil de la FSF à la suite d’une conversation avec Stallman alors qu’ils dînaient ensemble. Il endossa également
le rôle de trésorier de l’organisation, un rôle initialement modeste mais qui prit rapidement en importance.
p.81« Je pense qu’en 1985, le total de nos transactions, recettes et dépenses comprises,
s’élevait à environ 23 000 dollars, évoque Chassell. Richard avait son bureau et, pour le reste, nous occupions tout l’espace disponible. Tout le fourbi, et surtout les bandes, était rangé
sous mon bureau. Cela dura jusqu’à ce que, un peu plus tard, LMI nous prête un local pour stocker les bandes et autres choses de ce genre. »
p.82Au-delà de son rôle de vitrine, la FSF était devenue également le centre de gravitation de tous
les programmeurs désabusés. Sur le marché d’Unix, d’apparence encore si collégiale, même lors de l’annonce initiale du projet GNU, la concurrence faisait rage. Tentant de resserrer leur emprise sur
les clients, des compagnies commençaient à refuser l’accès au code source d’Unix, tendance qui ne fit qu’accroître le nombre de requêtes concernant les projets de logiciels GNU en cours. Les Unixiens
de la première heure, qui avaient par le passé considéré Stallman comme un hurluberlu turbulent, commencèrent à voir en lui un prophète ou une Cassandre du logiciel, selon l’état d’esprit – espérance
ou désespoir – avec lequel chacun d’entre eux abordait l’issue du problème.
p.83« Beaucoup ne réalisent pas, jusqu’à ce que cela leur arrive, la frustration qu’il peut y
avoir à travailler plusieurs années sur un programme pour se le voir finalement enlever, explique Chassell, résumant par là les sentiments et opinions exprimés dans la correspondance reçue par la FSF
pendant les premières années. Quand cela vous arrive une seconde fois, vous commencez à vous dire que cela commence à bien faire ! »
p.84C’est l’expérience de sa propre spoliation qui décida Chassel à prendre part à la FSF. Avant de
travailler pour LMI, il avait été engagé pour écrire un livre d’introduction à Unix, pour Cadmus, une compagnie de logiciels située dans la région de Cambridge. Mais lorsque l’entreprise ferma ses portes, emportant dans sa chute les droits du livre, Chassell tenta en
vain de les racheter.
p.85« Pour ce que j’en sais, raconte-t-il, ce livre repose toujours sur une étagère quelque
part, inutilisable, incopiable, tout simplement hors système. C’était vraiment une bonne introduction, si je puis me permettre. Cela n’aurait pris que trois ou quatre mois, peut-être, pour la
transformer en une introduction parfaitement adaptée à GNU/Linux aujourd’hui. Tout ce travail, hormis ce qu’il me reste en mémoire, a été perdu. »
p.86Condamné à voir le fruit de son labeur partir à vau-l’eau pendant que son employeur d’autrefois
luttait contre la faillite, Chassell déclare avoir eu alors un avant-goût de la colère qui menait Stallman au bord de l’apoplexie.
p.87« Le plus clair à mes yeux, c’est que si on veut avoir une vie convenable, on ne peut
accepter de s’en voir interdire l’accès à certains fragments. Toute cette idée d’être libre d’entrer, de rectifier quelque chose et de le modifier, quoi que cela puisse être, voilà qui change
tout ! On peut alors se réjouir du fait qu’après avoir vécu quelques années, ce que l’on a accompli reste valable. Parce que sans cette liberté, votre travail est juste bon à vous être retiré,
pour être ensuite rejeté, abandonné ou tout du moins dénué de tout lien avec votre personne. C’est un peu comme perdre un bout de sa vie. »