Qu'est-ce qui motive les développeurs de logiciels libres ?

Auteur : Rishab Aiyer Ghosh, in First Monday ( version originale de ce document)
Traducteur : Sébastien Blondeel

mars 1998 ; traduit en avril 1999


Linus Torvalds a écrit le coeur de Linux, une version libre d'un système d'exploitation de type Unix. Il a beau être libre et n'être soutenu par aucune grande société de logiciels, Linux dispose maintenant d'une base installée comparable à celles des systèmes MacOS ou MS-Windows NT. Linux est très populaire parmi les développeurs de logiciel sur l'Internet, et le « modèle Linux » de développement décentralisé, disposant d'un copyright lâche, est traité dans trois des articles de ce numéro de First Monday. La décision de la société Netscape, prise en janvier, de publier le code source de son navigateur, montre que le logiciel commercial n'est pas lui non plus immunisé contre le modèle Linux. Ces deux dernières années, Linus Torvalds a dialogué par courrier électronique avec Rishab Aiyer Ghosh, de First Monday, et ils ont discuté de ce qui motive les gens à travailler sur du logiciel libre. Selon M. Torvalds, ce n'est pas exactement la quête de la gloire. C'est contribuer au marché de la marmite sur l'Internet qui compte, ce qui explique pourquoi le shareware ne l'intéresse pas. Les utilisateurs sont eux aussi des développeurs, en ce sens qu'ils contribuent de manière implicite. Et même si des utilisateurs passifs peuvent démotiver les programmeurs de logiciels libres, ce qui compte avant tout, pour les meilleurs programmes, ce qu'on s'amuse en programmant — ce sont des artistes, en quelque sorte.

First Monday : Que cherchiez-vous, la première fois, quand vous avez rendu Linux public ? Avez-vous trouvé ce que vous cherchiez ? S'agissait-il d'argent, de gloire — de « réputation » — d'un bon ensemble de bibliothèques de logiciels, écrites par d'autres et qui vous aideraient dans vos autres travaux ?

Linus Torvalds : À l'origine, il ne s'agissait de rien de tout cela, même si je me suis renseigné et si j'ai recherché d'autres travaux qui pourraient m'aider (c'est pourquoi il y avait une sorte de « quiproquo »). Au début, Linux était simplement quelque chose que j'avais fait, et le rendre disponible relevait plus du « regardez ce que j'ai fait —  n'est-ce pas formidable ? ». J'espérais que quelqu'un le trouverait utile, mais je cherchais certainement à m'en « enorgueillir » un peu.

Linus Torvalds : La « gloire et la réputation » sont venues plus tard, et ne m'ont jamais vraiment motivé, même si, d'une certaine manière, cela me permettait d'y travailler sans me sentir coupable de négliger mes études (« Hé, c'est bien mieux que d'étudier pour être diplômé plus vite »).

Linus Torvalds : En ce temps là, la meilleure motivation (et elle a rapidement pris place après la publication de Linux) était de savoir que des gens commençaient à l'utiliser, et on se sent bien quand on a fait quelque chose que d'autres aiment utiliser.

First Monday : Comment Linux, en tant que produit, a bénéficié du fait d'être ainsi publié ? Si vous étiez Bill Gates, auriez-vous pu faire de Linux un meilleur produit à travers un développement commercial, mené par votre société, ou le modèle développeur+utilisateur+distributeur « libre pour tout le monde » — que j'appelle le « marché de la marmite » — renferme-t-il quelque chose d'unique ?

Linus Torvalds : Rendre Linux librement disponible est la meilleure décision que j'aie jamais prise. Je suis fier de nombreux détails techniques, rondement menés, du noyau, mais tous pâlissent en comparaison.

First Monday : Voilà une belle citation, et vous avez défini de manière concise un bon modèle d'« économique » dont la société Netscape tente maintenant de voler les spécificités

question posée en octobre 1996 ; Netscape a, de fait, volé le modèle désormais.
.

Linus Torvalds : Le rendre libre a essentiellement fait la différence entre un système qu'une personne isolée peut écrire en six mois, et un système qui rivalise avec (et dépasse) des systèmes d'exploitation commerciaux.

Un système libre compte de nombreux avantages, dont le plus évident est qu'il permet à un plus grand nombre de développeurs d'y travailler et de l'étendre. Cependant, le fait que d'un seul coup d'un seul, j'aie disposé d'un grand nombre d'utilisateurs qui en testaient à la fois les bogues et l'utilisabilité, est encore plus important. L'« utilisabilité » provient du fait qu'une seule personne (ou même un groupe de personnes partageant un objectif technique quelconque) ne peut pas penser à tous les usages qu'une communauté d'utilisateurs plus importante peut faire d'un système généraliste.

Linus Torvalds : C'est pourquoi j'ai plus bénéficié du fait de disposer d'un grand nombre d'utilisateurs que du fait de disposer d'un grand nombre de développeurs, même si j'ai eu besoin de ces deux populations pour créer le système que Linux est aujourd'hui. Je n'avais aucune idée des spécificités dont les utilisateurs souhaiteraient disposer, et si j'avais continué à développer Linux de mon côté il aurait évolué en un système bien moins intéressant et complet.

First Monday : En quoi les utilisateurs de Linux bénéficient-ils de ce modèle (en dehors du fait qu'ils ne doivent rien débourser) ?

Linus Torvalds : Eh bien, la rapidité du développement est elle aussi très souvent importante. Ceux qui acceptent entièrement l'idée de payer un produit et une assistance trouvent que la manière de Linux de faire les choses est souvent supérieure à la « véritable » assistance commerciale, en partie parce qu'il y a moins d'« effet tampon » entre l'utilisateur et le développeur. L'utilisateur peut souvent être le développeur, et même quand il ne souhaite pas développer quoi que ce soit par lui même, il garde l'avantage de ne pas devoir se battre contre les services de mercatique et la direction pour obtenir l'attention des développeurs.

En fait, l'une des idées les plus importantes du logiciel libre n'est pas tant le côté du prix et le fait de ne rien avoir à débourser, que le fait qu'avec le logiciel libre nul n'est attaché à aucun distributeur commercial. On peut utiliser des logiciels commerciaux par dessus Linux, mais personne n'est obligé à cela, ni même à exécuter le noyau Linux standard, s'il ne souhaite pas. On peut mélanger les différents logiciels disponibles pour satisfaire ses besoins.

(Évidemment, on peut se contenter d'exécuter une installation standard, achetée chez un distributeur commercial de Linux, si on ne souhaite pas personnaliser son installation, mais le logiciel libre accorde le choix de faire ce que l'on souhaite de son ordinateur.)

Et avec tous les développements qui ont cours sur l'Internet, et tous les outils qu'on peut y trouver, quiconque rencontre un problème dispose d'une grande communauté pour lui porter secours (et en dernier recours il peut toujours contacter les développeurs principaux eux-mêmes, même si pour des raisons bien compréhensibles « nous autres, les développeurs » sommes souvent très occupés sur d'autres fronts et ne prêtons pas toujours l'attention qu'il faudrait aux besoins d'un simple utilisateur ;) )

First Monday : Si en termes de capital-réputation et d'une meilleure bibliothèque d'outils parmi lesquels choisir, vous avez été « payé » pour Linux, pouvez-vous échanger ces éléments contre de quoi vivre ? Le souhaitez-vous ? S'il ne vous est pas possible d'acheter des pizzas avec un capital-réputation et du code libre, que mangez-vous donc ?

Linus Torvalds : Eh bien, j'ai été engagé par l'université d'Helsinki

Note de l'éditeur : en octobre 1996.
, et ils ont été très heureux de me compter parmi leurs employés et de me voir continuer à travailler sur Linux. Je n'avais pas officiellement pour consigne de travailler sur Linux, mais c'est ce que j'ai fait, et il est évident que l'université le savait et s'en félicitait. Ainsi, d'une certaine manière, Linux me paye mes pizzas, indirectement.

Linus Torvalds : Qui plus est, je ne crains pas exactement la famine au cas où je quitterais l'université. « CV : Linux » a fière allure pour bien des sociétés

M. Torvalds travaille désormais pour la société Transmeta ; voir plus loin dans cette entrevue.
.

Linus Torvalds : C'est pourquoi, oui, je réponds qu'on peut marchander sa réputation et en retirer de l'argent. De plus, les réputations (et la propriété intellectuelle) ont ceci de bien qu'on en dispose toujours, même avoir les avoir échangées. Le beurre et l'argent du beurre...

First Monday : La barrière monétaire qui sépare le monde réel du monde de l'Internet importe-t-elle ? La plupart des « gains » que vous assurent des produits du monde de l'information, tels que Linux, ne sont-ils pas dépensés pour « acquérir » d'autres produits d'information (logiciels libres eux aussi) ?

Linus Torvalds : Ce n'est pas ainsi que cela fonctionne. J'obtiens gratuitement les autres produits d'information, que je travaille sur Linux ou non. Je touche les « gains » que j'obtiens de Linux dans le monde de l'Internet sous la forme d'un réseau de relations qui me connaissent et me font confiance, et sur lesquels, en retour, je peux compter. Ce type de réseau de confiance est très pratique, et pas seulement dans le monde de l'Internet.

First Monday : En fait, j'inclus des choses aussi informelles (mais appréciables) que ces « réseaux de confiance » dans le terme « produit » — ainsi, la plupart des « gains » que vous avez réalisés dans le monde de l'Internet y demeurent « stockés » sous forme de capital de réputation, et vous n'avez besoin que d'en convertir de petites quantités en dollars et en markkas.

Incidemment, dans mon modèle du « marché de la marmite », où les transactions implicites comptent, on n'obtient pas d'autres produits d'information — que ce soient des articles sur l'Usenet ou du code source — gratuitement. Si personne ne produisait des denrées libres sur le réseau, si tout le monde facturait toute son activité, je suppose que vous n'auriez probablement pas donné gratuitement Linux.

Linus Torvalds : Bien sûr. Sur l'Usenet, et dans le monde Unix en général, on a toujours trouvé une forte communauté « académique et ouverte ». C'est très différent de la mentalité des sharewares des mondes MS-DOS et MacOS. Et la différence est gigantesque pour ceux qui pourraient potentiellement rejoindre la communauté. C'est pourquoi le fait de rendre Linux librement disponible n'a pas été une décision torturée que je n'ai prise après y avoir longtemps et profondément réfléchi : c'était une décision naturelle au sein de la communauté dont je sentais que je voulais faire partie.

First Monday : Au début de CompuServe, on trouvait du shareware, jamais de freeware, et certainement pas de code source libre et gratuit.

Linus Torvalds : Je n'ai jamais envisagé la solution du shareware : je préfére appeler cela « guiltware»

NdT : jeu de mots sur « ware ». « shareware » signifie « ce qui est partagé », car « share » signifie « partager », alors que « guiltware », néologisme forgé par Linus Torvalds, pourrait se traduire par « ce qui provoque un sentiment de culpabilité ».
, car j'estime que ce nom représente bien mieux tout le concept. Le « share » de « shareware » implique une forme d'altruisme que la pratique, dans la réalité, dément. Et je ne souhaite pas jamais créer ce type de logiciel.

Je préfère de loin le logiciel ouvertement commercial, et qui l'admet sans détour. Et le logiciel commercial peut proposer des versions de démonstration disponibles gratuitement sur l'Internet, mais cela n'a rien à voir avec le « ``share''ware » (les versions de démonstration sont en général bridées d'une manière ou d'une autre, mais leur utilisation ne provoque aucun sentiment de culpabilité — on ne dispose pas de toutes les spécificités de la « véritable » version commerciale, tout simplement).

Linus Torvalds : Au début, Linux était simplement quelque chose que j'avais fait, et le rendre disponible relevait plus du « regardez ce que j'ai fait —  n'est-ce pas formidable ? ».

First Monday : Vous ne pensiez clairement pas perdre la moindre « propriété intellectuelle » en le publiant.

Linus Torvalds : Eh bien, j'ai évidemment conservé le copyright sur le code, et le copyright initial était assez strict. Il disait en substance : « Vous ne pouvez pas vendre ce code, et vous n'avez pas le droit d'y apporter la moindre modification sans me l'envoyer, afin que je puisse l'inclure dans mon code source à l'avenir ».

Je voulais ainsi me protéger de ceux qui utiliseraient mon code pour créer quelque chose que je ne pourrais pas moi-même utiliser, ou pour le revendre...

Ce copyright a changé après six mois : on m'a rapidement demandé la permission d'en faire des distributions sur disquette à l'intention de ceux qui n'avaient pas accès à l'Internet, et ceux qui se proposaient à cette intention n'avaient évidemment pas envie de se lancer dans une telle activité à perte (le copyright original n'autorisait même pas le fait de réclamer la compensation des frais de recopie).

Je dépendais énormément du compilateur du langage C de GNU pour travailler sur Linux, j'ai donc changé de copyright pour adopter le « copyleft » du projet GNU, la licence publique générale de GNU. Elle autorise la vente libre, ainsi que de faire ce qu'on souhaite du logiciel, mais exige explicitement que toute modification apportée soit elle aussi publiée.

First Monday : Qu'est-ce qui vous motive pour travailler sur Linux ? Vous avez dit plus haut que « La ``gloire et la réputation'' sont venues plus tard, et ne m'ont jamais vraiment motivé ». Vous avez également déclaré que « les gens commençaient à l'utiliser (Linux), et on se sent bien quand on a fait quelque chose que d'autres aiment utiliser. »

Voilà qui est altruiste, et de peu d'utilité pour bâtir un modèle économique ! En dehors de l'intangible — ou même de l'émotionnel — qu'est-ce que votre travail vous apporte : le « plaisir », la « réputation », « bien vous sentir », quoi d'autre ?

Linus Torvalds : Bien sûr, faire Linux m'a apporté énormément de valeur tangible indirecte. Je ne suis peut-être pas directement payé pour le projet Linux lui-même, mais mon emploi actuel est de manière évidente dû à Linux : sans Linux je ne me serais jamais fait le nom que j'ai aujourd'hui dans l'industrie de l'informatique, et sans Linux je n'aurais pas vu s'ouvrir les mêmes possibilités que celles dont j'ai disposé.

C'est pourquoi travailler sur Linux était très raisonnable, même d'un point de vue uniquement matérialiste. J'aurais pu, je l'accorde, gagner bien plus d'argent pendant les sept années que j'ai passées jusqu'à présent à travailler sur Linux si j'avais opté pour une autre carrière, mais il m'est à présent bien plus facile de gagner de l'argent en faisant d'autres choses (« d'autres choses » dont Linux, évidemment, fait partie, mais je souhaite continuer à éviter de gagner directement de l'argent à partir de Linux — cela me permet de rester concentré sur les côtés purement techniques du noyau Linux).

First Monday : Plus spécifiquement, êtes-vous disposé à « rendre » à l'Internet, en tant que paiement de tous les bénéfices gratuits — logiciels et services — qu'il vous a fournis ? Rendre à une communauté, après et pendant qu'on en bénéficie, semble bien plus tangible que « bien se sentir » — et quand on se « sent bien » de disposer de nombreux utilisateurs, il me semble qu'on souhaite implicitement « rendre » en forme de remerciement de la possibilité qu'on a eue de « prendre » ?

Linus Torvalds : Eh bien, j'ai beaucoup travaillé, et c'est là le coeur de la question : tout le monde travaille pour améliorer Linux, et chacun profite des efforts de tous les autres. Et c'est ce qui rend Linux si bon : on y met quelque chose, et cet effort est multiplié. Essentiellement, si on emploie le jargon de la théorie des jeux, on est bien loin d'un jeu à « bilan nul » : il s'agit là d'une rétroaction positive.

Imaginez dix personnes accordant chacune une heure quotidienne au projet. Chacun contribue à hauteur d'une heure de travail, mais puisqu'ils partage le résultat final, ils récupèrent gratuitement neuf heures du « travail des autres ». Cela semble injuste : obtenir neuf heures de travail en échange d'une. Mais ce c'est évidemment pas le cas.

Vous remarquerez que ce n'est seulement vrai des développeurs de Linux qui écrivent le code du noyau, c'est également vrai pour les utilisateurs finals. En particulier les premiers jours de Linux, où les utilisateurs servaient aussi de cobayes pour les nouvelles spécificités, etc., et ils ont fourni beaucoup d'efforts (pas toujours conscients) pour déterminer si quelque chose fonctionnait correctement ou s'il aurait dû fonctionner autrement. Et c'est pour ce travail qu'ils ont reçu la récompense de disposer de systèmes toujours meilleurs.

Ce que je cherche à dire, c'est qu'il n'y a nul besoin pour quiconque de tenter de rendre autant qu'il a reçu du projet Linux — cela ne veut pas dire grand'chose. Le projet tout entier est construit sur l'idée que tout le monde rend ce qu'il est capable de rendre — et sur l'idée que les petits efforts font les grands systèmes.

First Monday : Vous avez dit que vous pensiez que le grand nombre d'utilisateurs de Linux est plus important encore que son grand nombre de développeurs — parce que les utilisateurs, en détectant et en rendant compte des erreurs, ont autant de valeur que les développeurs ? En ce cas, vous ne considérez certes pas les utilisateurs comme des « consommateurs » de quelque chose que les développeurs (tels que vous ou tous ceux qui travaillent sur le code du coeur de Linux) « produisent ». Les utilisateurs produisent eux aussi — des rapports de bogues, des détections de bogues — et c'est cela que les développeurs consomment ?

J'ai écrit au sujet de la valeur des lecteurs. On suppose en général que les lecteurs (utilisateurs) devraient payer les auteurs (développeurs) mais cela fonctionne souvent dans l'autre sens. Dans le cas de Linux, comme dans de nombreux autres cas, cela a fonctionné dans les deux sens, de manière équilibrée, de telle sorte que personne ne paie personne ! Peut-être est-ce alors une transaction juste ? Le développement collaboratif entre un ensemble d'utilisateurs et un ensemble de développeurs, séparés par une frontière pour le moins floue ?

Linus Torvalds : Je pense que la distinction faite traditionnellement entre les « consommateurs » et les « producteurs » n'a pas grand sens dans le cas du logiciel. Un « consommateur » ne prend pas vraiment quoi que ce soit : il ne consomme rien, en fait. Cela ne coûte pas plus cher de donner le même produit à un millier de consommateurs que de le donner à un seul.

Et c'est pourquoi je ne vois pas tout ceci sous la forme d'une course opposant des consommateurs aux producteurs : les utilisateurs se comportent comme une autre forme de producteurs : ils ne produisent pas le code source du produit, mais des informations relatives au produit et une précieuse évaluation de la manière dont il peut être amélioré.

Remarquez que je ne prétends pas que tous les utilisateurs se comportent ainsi : on trouvera assurément des utilisateurs qui ne font rien remonter. Mais le logiciel a ceci de particulier qu'il ne coûte rien aux programmeurs de laisser de tels utilisateurs disposer du programme malgré tout. Ce qui est important, c'est d'encourager un nombre suffisant d'utilisateurs à faire des commentaires, afin de disposer d'un taux de retour correct.

First Monday : Que se passe-t-il si la frontière devient trop marquée, et que les utilisateurs arrêtent de rendre compte de leurs problèmes ou desiderata. Si un Linux à la MS-Windows 95 voyait le jour, avec un niveau comparable de « facilité d'utilisation » et une division clairement établie entre les utilisateurs finals — les consommateurs — et les producteurs-développeurs, la proportion d'utilisateurs actifs et participant au processus de développement — en contribuant sous la forme de rapports de bogues, par exemple — ne deviendrait-elle pas trop ténue pour que le modèle de développement de Linux continue à l'identique ?

Linus Torvalds : Eh bien, les développeurs de Linux en sont eux aussi des consommateurs : cela a toujours joué un rôle important pour Linux. Ce n'est pas toujours vrai des autres projets logiciels : la plupart des logiciels commerciaux ne sont pas établis par des gens qui les utilisent pour leur propre travail. Ainsi, même sans aucun utilisateur final externe, on trouverait encore ce type de relation entre utilisateur et développeur.

Ce qui rend les « véritables utilisateurs » si intéressants est qu'ils utilisent le système de manière radicalement différente de la plupart des développeurs, ce qui explique pourquoi un produit ciblant uniquement les développeurs ne dispose pas toujours d'une stabilité et d'une finition impeccables. Et je pense assurément que l'utilisateur habituel de Linux continuera à être présent et à aider le développeur, que cela soit conscient ou non...

First Monday : (Si le nombre d'utilisateurs rendant compte de problèmes devait diminuer énormément par rapport au nombre total d'utilisateurs) des développeurs tels que vous rechigneraient-ils à donner les choses ? Si vous pensiez « rendre » plus que ce que la communauté (importante, étendue, et principalement passive) vous donne ?

Linus Torvalds : En fait, il est très difficile pour un utilisateur de Linux de ne pas contribuer au pot commun. Il n'est pas nécessaire qu'il rende activement compte : c'est le fait de savoir que quelqu'un utilise Linux dans un certain domaine d'applications qui est une forme de compte-rendu. Et généralement, même les utilisateurs les plus silencieux sont malgré tout expressifs — ne serait-ce que par le type de questions qu'ils publient sur les groupes de discussion et sur les listes de diffusion.

First Monday : Une explication pour justifier le fait que le modèle Linux a le mieux fonctionné dans le cas de logiciels de type « développeur » — serveurs pour le web, compilateurs, le système lui-même — est qu'en ces domaines, les communautés des utilisateurs et des développeurs comptent beaucoup d'éléments communs. Les utilisateurs finals contribuent, participant activement à la communauté. Dans d'autres domaines — les logiciels de bureau tels que les traitements de texte professionnels — le modèle Linux a eu bien moins de réussite. ( StarOffice ne compte pas comme une création sur le « modèle Linux », car c'est un logiciel commercial et entièrement propriétaire.) N'est-ce pas à cause du fait qu'en de tels marchés les utilisateurs finals ont tendance à être des consommateurs complètement passifs ?

Linus Torvalds : Je suis tout à fait d'accord. Je pense que le modèle de développement ouvert tend à fonctionner le mieux dans les domaines où les développeurs sont eux-mêmes des utilisateurs (voir plus haut). Je ne pense pas que c'est vraiment fondamental, mais être un utilisateur et un développeur induit une motivation qui aurait sinon été remplacée par les questions financières du logiciel commercial.

Vous remarquerez que je ne pense pas que cela signifie nécessairement que le fait de développer des applications non techniques pose problème : de nombreux programmeurs sont aussi des utilisateurs de programmes assez peu techniques. Par exemple, on trouve maintenant de plus en plus d'applications libres, même dans le domaine de l'utilisateur final, telles que des applications graphiques, etc., car de nombreux programmeurs sont également très intéressés par de tels sujets.

First Monday : Je voulais exprimer le fait qu'un utilisateur de Emacs ou vi peut parfaitement trouver un bogue, l'identifier, fournir un rapport détaillé, et même modifier le code source. Mais il est peu probable qu'un utilisateur de traitement de texte dans un environnement de bureau

  1. remarque d'obscurs bogues ;
  2. les identifie ;
  3. les décrive de manière précise ;
  4. les corrige,

même s'il disposait du code source.

Dans ce cas, l'utilisateur ne contribue-t-il pas bien moins ? La valeur du développement n'est-elle pas beaucoup plus concentrée dans l'équipe de développement principale ? Puisque le flux de valeur semble moins bien distribué, plus unidirectionnel, cela ne réduit-il pas la propension des développeurs à publier du code libre dans de tels domaines du logiciel ?

Linus Torvalds : Oui. D'un autre côté, de nombreux programmeurs utilisent aussi des outils de traitement de texte ou d'autres outils, et si vous pouvez aussi obtenir de utilisateurs qu'ils discutent plus ouvertement de leurs problèmes ou autres sur un forum public tel qu'un groupe de discussion, vous perdrez la plus grande partie de la mentalité « fermée » du « bureau ».

C'est pourquoi on constate que des projets tels que GIMP et Wine — qui ciblent sans aucun doute les utilisateurs finals — se comportent fort bien en tant que projets Open Source : car ce sont des applications pour utilisateur final que les programmeurs trouvent intéressantes également.

Je pense donc que cela dépend principalement du fait que les programmeurs sont plus enclins à travailler sur des projets techniques tels que des noyaux, des serveurs pour le web, des compilateurs, etc., mais que rien de les empêche, fondamentalement, de participer à des projets plus « mondains ».

First Monday : Je veux en venir à ceci : si le flux de valeur n'est pas équilibré au sein de la communauté, et si certaines personnes contribuent beaucoup beaucoup plus que la plupart, pendant que la majorité ne contribue en rien, qu'est-ce qui motive encore les contributions libres de cette petite minorité ? « La gloire et la réputation », pour la plupart des développeurs, ne comptent que lorsqu'ils proviennent d'une communauté de pairs. C'est-à-dire qu'on apprécie d'autant mieux une réputation qu'en en jouit au sein d'utilisateurs-développeurs qui contribuent eux aussi au système. Nul ne souhaite être célèbre chez les parasites ! Aussi, alors que dans le marché actuel de Linux, les contributeurs — si on inclut les utilisateurs actifs — sont assez largement dispersés, prendre en compte le respect qu'ils vouent dans le calcul de la « gloire et de la réputation », attribuant en cela à votre ego un coup de fouet et vous faisant vous sentir bien par la même occasion, si le flux de valeur était plus unidirectionnel, le développement libre pourrait-il fonctionner ?

Dans le cas limite, si vous étiez seul à travailler sur le code, et que le reste du monde l'utilisait de manière silencieuse, cela aurait-il un sens de le donner gratuitement ? À moins que vous ne soyez particulièrement reconnaissant des autres biens gratuits que vous avez tirés du réseau, la réponse serait-elle « non » ?

Linus Torvalds : Pas nécessairement, je ne pense pas. Cela pourrait être vrai dans certains marchés de niche, mais presque tous les projets feront qu'un développeur se « sente bien » s'il compte des utilisateurs et s'il a l'impression qu'il fait quelque chose qui en vaut la peine. Je ne pense pas vraiment qu'on ait besoin de tout ce « quiproquo » dans la programmation — la plupart des bons programmeurs ne programment pas parce qu'ils s'attendent à un salaire ou à être adulés par les foules, mais parce qu'on s'amuse en programmant.

First Monday : Nous avons discuté de la manière dont on peut « convertir » une réputation en dollars, et combien la valeur que vous contribuez sans être payé pour cela « rend » de la valeur dans les communautés de l'Internet auxquelles vous appartenez. Cela signifie clairement, n'est-ce-pas, qu'on ne peut s'attendre qu'à ce que seule une partie de la valeur créée soit convertie en biens matériels ? Auquel cas la réputation n'a pas besoin d'être « pleinement convertible » en argent comptant, et la plupart du temps elle serait purement échangée au sein du monde de l'Internet...

Linus Torvalds : Remarquez que je crois qu'alors même que la réputation que je me suis construite est convertible, elle ne m''en laisse pas moins un nombre respectables de raisons purement personnelles de programmer, même sans réel gain matériel — direct ou indirect.

Nombreux sont ceux qui apprécient l'interaction sur l'Internet, tout simplement, ainsi que le sentiment d'appartenir à un groupe qui fait quelque chose d'intéressant : c'est ainsi que certains projets logiciels ont vu le jour.

Aussi pensé-je que oui, on peut réfléchir au fait de « récupérer la valeur » de son investissement dans tout projet sur l'Internet, et je pense qu'il faut prendre cela en compte, mais je ne pense pas que cette considération doit l'emporter sur toutes les autres. Ce que chacun devrait se demander, c'est s'il aimerait le faire même s'il n'en retirait rien. Et si on répond « oui » à cette question, alors il s'agit probablement d'un projet qu'on a du plaisir à mener, et où des considérations comme la valeur qu'on en retire concrètement, et personnellement, sont plutôt secondaires.

First Monday : Vous avez maintenant quitté l'université d'Helsinki depuis plus d'un an. De nombreux autres développeurs de Linux n'appartenaient pas à une institution gouvernementale ou académique quand ils ont travaillé sur Linux, mais avaient un « travail de jour ». Maintenant que vous aussi avez un « travail de jour », on peut espérer que les soupçons selon lesquels Linux est un exemple de projet subventionné par le gouvernement ou les académies prendront fin.

Linus Torvalds : Peut-être. Je pense que cette rumeur a commencé à perdre de son ampleur bien avant que je ne quitte l'université — Linux commençait à rendre de trop fiers services pour que les sociétés commerciales continuent à ne pas s'y intéresser. Aussi pensé-je que le fait que j'aie changé d'emploi pour travailler dans une société commerciale n'a pas une si grande importance que cela.

First Monday : Mais combien vous êtes-vous servi de votre réputation (CV : Linux) pour obtenir votre emploi au sein de la société Transmeta ? J'ai cru comprendre que cette société travaillait principalement sur des questions de matériel et de VLSI. Vous avez dit au magazine Wired que vous travailliez en partie sur Linux, que cela fait partie des termes de votre contrat de travail. Vous pouvez nous en dire plus ?

Pourquoi une société sponsoriserait-elle quelqu'un qui travaille sur du logiciel libre ? Pour « rendre » de la valeur au réseau ? Pour se faire une réputation ? Cela non plus ne semble pas probable — et je n'ai pas entendu parler de projets de changer le nom Linux en Transmetux ! Ou peut-être cela était-il l'une de vos conditions pour accepter ce poste ? Il serait intéressant de savoir...

Linus Torvalds : Pouvoir continuer à travailler sur Linux sans que Transmeta n'en accapare quoi que ce soit faisait, oui, partie de mes conditions. J'ai reçu plusieurs offres en réalité, et toutes m'auraient autorisé à continuer mon travail sur Linux, aussi cela n'a-t-il jamais vraiment été un problème pour moi.

Dans le cas de Transmeta, alors même que nous ne vendont pas Linux (et ne vous en faites pas, il ne s'agit pas de ce genre de société), Linux est très largement employé de façon interne, aussi les bénéfices directs du fait de me laisser continuer à travailler sur Linux sont-ils patents. Et je pense qu'il s'agit également de relations publiques — elle n'aurait pas fière allure la société qui aurait tué Linux en ne m'autorisant pas à continuer à travailler dessus ;)

Ce que je cherche à dire, c'est qu'il n'y a nul besoin pour quiconque de tenter de rendre autant qu'il a reçu du projet Linux — cela ne veut pas dire grand'chose. Le projet tout entier est construit sur l'idée que tout le monde rend ce qu'il est capable de rendre — et sur l'idée que les petits efforts font les grands systèmes.

First Monday : Bien sûr ! Voyez plus bas mon argument traitant de la reproduction sur le réseau. Permettez-moi d'exprimer cela différemment : maintenant que vous disposez de Linux, et d'une importante communauté, vous avez de nombreuses raisons pour travailler sur Linux. Mais avant que cette communauté n'existe, qu'est-ce qui vous poussait à proposer gratuitement Linux à une communauté plus importante (dans le cas présent, le réseau tout entier), à partir de laquelle on verrait émerger une communauté Linux ? Qu'est-ce qui incite, au début d'un tel projet, de le donner à une communauté plus importante ? Vous nous avez dit que les questions de gloire et de réputation n'entraient pas en ligne de compte — vous ne pouviez pas évidemment prévoir le succès fulgurant de Linux ! — qu'est-ce donc qui vous a incité à « rendre » au réseau ?

Linus Torvalds : Ahh... je vous avais mal compris.

Dans mon cas particulier, plusieurs facteurs sont entrés en ligne de compte : l'un d'entre eux était que j'avais été très déçu par les problèmes que j'avais personnellement rencontrés en tentant de trouver un système Unix pour mon usage personnel. Je sentais très fortement qu'on avait grand besoin d'une version bien moins onéreuse et bien plus facilement disponible d'Unix, car j'avais moi-même effectué des recherches en vain.

C'est ainsi que lorsque je me suis retrouvé à écrire mon propre système, mon expérience antérieure m'a motivé à le publier sur l'Internet, car c'est ce que j'aurais désiré six mois plus tôt. « Fais aux autres ce que tu souhaiterais qu'ils te fassent », en quelque sorte.

De plus, je ne me suis jamais vraiment retrouvé dans la position de devoir programmer pour gagner de l'argent — mon travail consistait peut-être à programmer, mais bien avant cela programmer était pour moi un plaisir. Aussi le concept de gagner de l'argent ou même une réputation grâce au logiciel m'a-t-il semblé assez secondaire, et passait derrière le fait que je souhaitais programmer de toutes manières.

Il n'était pas vraiment question de rendre quoi que ce soit à l'Internet, même si plus tard, le fait de modifier mon copyright en la GPL fut effectivement un geste dans le but de rendre quelque chose à ceux qui m'avaient laissé utiliser et jouer avec gcc.

Imaginez dix personnes accordant chacune une heure quotidienne au projet. Chacun contribue à hauteur d'une heure de travail, mais puisqu'ils partage le résultat final, ils récupèrent gratuitement neuf heures du « travail des autres ». Cela semble injuste : obtenir neuf heures de travail en échange d'une. Mais ce c'est évidemment pas le cas.

First Monday : Non. Et cela ne fonctionne que parce que sur le réseau (c'est-à-dire avec le logiciel), on peut dupliquer indéfiniment le résultat produit, de telle sorte que de nombreuses personnes peuvent en bénéficier pour un coût supplémentaire nul ou dérisoire. De même, cela ne fonctionne que si ces personnes comprennent que cet échange de valeurs de type troc, et injectent chacun leur heure de travail personnel dans la machine, même s'ils profitent des neuf heures des autres. Après tout, aucune agence de planification centrale ne coordonne ces gens, pas même la main invisible d'un marché libre (aux prix déterminés) ; le système dépend de la réaction instinctive de ces gens qui injectent ces heures, en comprenant qu'à moins que la plupart d'entre eux ne « donnent » une heure, ils perdraient rapidement ces neuf autres heures... C'est un troc — « marché de la marmite », sans transactions individuelles.

Linus Torvalds : Oui. C'est aussi la raison pour laquelle cela il n'est pas surprenant que la personne la plus riche du monde est une personne qui vend des logiciels — et qui fait de l'argent sur un produit qu'il ne coûte rien de dupliquer. Il n'est pas facile de battre une telle combinaison ;)

Linus Torvalds : Je ne pense pas vraiment qu'on ait besoin de tout ce « quiproquo » dans la programmation — la plupart des bons programmeurs ne programment pas parce qu'ils s'attendent à un salaire ou à être adulés par les foules, mais parce qu'on s'amuse en programmant.

First Monday : Oui. Cela signifie donc que cela est perçu comme une forme d'expression personnelle, pas comme une forme de production — un jeu, pas un travail — et que par conséquent toute valeur reçue de la part d'autres en échange de sa propre programmation est un bonus.

Linus Torvalds : Oui. Un peu de la manière dont travaillent les artistes : en général ils ne gagnent pas d'argent, et conservent leur passe-temps artistique en dépit de l'argent plutôt qu'à cause de l'argent.

Les programmeurs se trouvent dans cette position enviable, non seulement d'obtenir ce qu'ils recherchent, mais le résultat final est si important qu'on les paye pour l'obtenir. On trouve d'autres professions obéissant à ce schéma, mais elles ne sont pas si nombreuses que cela.

First Monday : Je vous l'accorde. Cependant, je dirais la quantité de programmation qu'on est prêt à faire pour le « plaisir » est très subjective, et varie selon des gens. Les programmeurs de tout premier plan peuvent en effet souhaiter s'acquitter de leur travail par « plaisir », de même que les meilleurs violoncellistes, par exemple — pour peu, bien sûr, qu'ils ne souffrent pas de la faim. Mais je pense qu'en regardant en-dessous du sommet de la pyramide, les programmeurs souhaitent de plus en plus que leur travail leur rapporte une réputation de « quiproquo », même la distribution de contributions parmi des utilisateurs-développeurs, « prenant » ce qu'eux « mettent » — alors qu'à la base on trouve des programmeurs qui ne travaillent que pour l'artgent... ce qu'on peut qualifier de forme d'art !

Linus Torvalds : Peut-être. Et peut-être est-ce pourquoi le logiciel libre tend à être si bon : les seuls qui peuvent se « permettre » de créer des produits libres se trouvent au sommet de la pyramide et le font par plaisir et non par devoir. Cela ne surprendra personne que le logiciel libre surclasse techniquement tous les autres, au point d'être seul dans sa catégorie.