[Traduit de l'anglais]

En quoi l'open source perd de vue l'éthique du logiciel libre

Les termes « logiciel libre » et « open source » recouvrent à peu près la même gamme de logiciels. Cependant, ils disent des choses profondément différentes sur ces logiciels, car ils se basent sur des valeurs différentes. Le mouvement du logiciel libre fait campagne pour la liberté des utilisateurs de l'informatique ; c'est un mouvement qui lutte pour la liberté et la justice. L'idéologie open source, par contre, met surtout l'accent sur les avantages pratiques et ne fait pas campagne pour des principes. C'est pourquoi nous ne sommes pas d'accord avec l'open source et n'utilisons pas ce terme.

Quand on dit qu'un logiciel est « libre » [free], on entend par là qu'il respecte les libertés essentielles de l'utilisateur : la liberté de l'utiliser, de l'étudier, de le modifier et d'en redistribuer des copies, modifiées ou non. C'est une question de liberté, pas de prix – pensez à « liberté d'expression » et pas à « entrée libre » [think of “free speech”, not “free beer”].1

Ces libertés sont d'une importance vitale. Elles sont essentielles, pas uniquement pour les enjeux individuels des utilisateurs, mais parce qu'elles favorisent le partage et la coopération qui fondent la solidarité sociale. Elles prennent encore plus d'importance alors que notre culture et nos activités quotidiennes se numérisent. Dans un monde de sons, d'images et de mots numériques, le logiciel libre devient de plus en plus nécessaire pour la liberté en général.

Des dizaines de millions de personnes de par le monde utilisent maintenant le logiciel libre ; les écoles publiques de quelques régions d'Inde et d'Espagne enseignent à tous les élèves l'utilisation du système d'exploitation libre GNU/Linux. Mais la plupart des utilisateurs n'ont jamais entendu parler des raisons éthiques pour lesquelles nous avons développé ce système et bâti la communauté du logiciel libre, parce qu'aujourd'hui ce système et la communauté sont le plus souvent décrits comme « open source »2 et attribués à une philosophie différente dans laquelle ces libertés sont à peine mentionnées.

Le mouvement du logiciel libre fait campagne pour la liberté des utilisateurs de l'informatique depuis 1983. En 1984 nous avons lancé le développement du système d'exploitation libre GNU, afin de pouvoir éviter les systèmes d'exploitation non libres qui refusent la liberté à leurs utilisateurs. Durant les années 80, nous avons développé la majeure partie des composants essentiels de ce système et conçu la licence publique générale GNU (GNU GPL), une licence destinée spécifiquement à protéger la liberté de tous les utilisateurs d'un programme.

Cependant, tous les utilisateurs et développeurs de logiciel libre n'étaient pas en accord avec les buts du mouvement du logiciel libre. En 1998, une partie de la communauté du libre a formé un groupe dissident et commencé à faire campagne au nom de l'« open source ». Cette dénomination fut proposée à l'origine pour éviter une possible incompréhension de free software, mais on l'associa bientôt à des points de vue philosophiques complètement différents de ceux du mouvement du logiciel libre.

Certains des partisans de l'open source considéraient cela comme « une campagne marketing pour le logiciel libre » qui séduirait les cadres des entreprises en mettant en relief ses avantages pratiques, tout en évitant les idées de bien et de mal que ces cadres pouvaient ne pas apprécier. D'autres partisans rejetaient catégoriquement les valeurs morales et sociétales du mouvement du logiciel libre. Quel que fût leur point de vue, ils n'ont ni mentionné ni préconisé ces valeurs pendant leur campagne pour l'open source. On associa rapidement « open source » à des idées et des arguments basés sur des valeurs utilitaires comme la fabrication ou la possession de logiciels puissants et fiables. La plupart des défenseurs de l'open source se sont depuis ralliés à ces idées et ils continuent à faire cette association. La plupart des discussions sur l'open source ne s'intéressent pas au bien et au mal, seulement à la popularité et au succès. En voici un exemple typique. Il est vrai qu'une minorité de partisans de l'open source disent maintenant que la liberté est en jeu, mais ils ne sont pas très visibles parmi ceux qui disent le contraire.

Les deux expressions décrivent à peu près la même catégorie de logiciel, mais elles représentent des points de vue basés sur des valeurs fondamentalement différentes. L'open source est une méthodologie de développement ; le logiciel libre est un mouvement de société. Pour le mouvement du logiciel libre, ce dernier représente un impératif éthique, l'indispensable respect de la liberté de l'utilisateur. La philosophie de l'open source, pour sa part, envisage uniquement les enjeux pratiques, en termes de performance. Elle dit que le logiciel non libre est une solution sous-optimale au problème pratique à résoudre.

Pour le mouvement du logiciel libre, au contraire, le logiciel non libre est un problème sociétal, et la solution consiste à cesser de l'utiliser et à migrer vers le logiciel libre.

« Logiciel libre ». « Open source ». Si ce sont les mêmes logiciels (ou presque), le nom utilisé pour les qualifier est-il important ? Oui, parce que des mots différents véhiculent des idées différentes. Bien qu'un programme libre, si on l'appelle autrement, vous donne la même liberté aujourd'hui, établir la liberté de manière durable exige comme condition première d'enseigner la valeur de la liberté. Si vous voulez y contribuer, il est essentiel de parler de « logiciel libre ».

Nous qui militons au mouvement du logiciel libre, nous ne considérons pas le camp de l'open source comme un ennemi ; l'ennemi est le logiciel privateur.3 Mais nous voulons faire savoir aux gens que nous défendons la liberté, c'est pourquoi nous n'acceptons pas d'être incorrectement assimilés aux partisans de l'open source. Ce que nous défendons n'est pas le code source « ouvert » [open source], et ce que à quoi nous nous opposons n'est pas le code source « fermé » [closed source]. Pour éviter les malentendus, nous évitons ces deux termes.

Différences pratiques entre logiciel libre et open source

En pratique, l'open source défend des critères un peu moins stricts que ceux du logiciel libre. À notre connaissance, le code source de tous les logiciels libres publiés existants répond aux critères de l'open source. Presque tous les logiciels open source sont des logiciels libres, mais il y a des exceptions.

Premièrement, certaines licences open source sont trop restrictives, donc se disqualifient en tant que licences libres. Par exemple, Open Watcom est non libre parce que sa licence ne permet pas d'en faire une version modifiée et de l'utiliser en privé. Heureusement, les programmes utilisant ces licences sont rares.

Deuxièmement, des exigences supplémentaires liées à une marque déposée, superposées à la licence de copyright du code, peuvent rendre un programme non libre. Par exemple, le compilateur de Rust est peut-être non libre parce que sa licence inclut des conditions interdisant la vente de copies à moins de supprimer complètement tous les usages de la marque. Ce que cela implique en pratique n'est pas clair.

Troisièmement, les critères de l'open source s'intéressent uniquement à l'utilisation du code source. En effet, presque tous les articles de la définition de l'open source sont formulés comme des conditions portant sur la licence du code source du logiciel et non sur ce que les utilisateurs sont libres de faire. Cependant, on décrit souvent un exécutable comme « open source » lorsque son code source est disponible de cette façon. Cela crée de la confusion dans des situations paradoxales où le code source est open source (et libre) mais l'exécutable n'est pas libre.

Le cas trivial de ce paradoxe est celui d'un code source qui porte une licence libre faible, sans copyleft, mais dont les exécutables ont des conditions additionnelles non libres. À supposer que ces exécutables correspondent exactement aux sources publiées (ce qui peut être le cas, ou non), les utilisateurs peuvent recompiler les sources et distribuer les exécutables résultants sous licence libre. C'est pourquoi ce cas est trivial ; ce n'est pas un problème grave.

En revanche, le cas non trivial est préjudiciable et important. Beaucoup de produits manufacturés embarquant des ordinateurs vérifient les signatures de leurs programmes exécutables de manière à empêcher les utilisateurs d'utiliser effectivement des exécutables différents ; seule une entreprise agréée peut faire des exécutables pouvant fonctionner dans l'appareil et utiliser l'ensemble de ses capacités. Nous donnons à ces appareils le nom de « tyrans », et la pratique en question s'appelle « tivoïsation » d'après le produit (Tivo) dans lequel nous l'avons observée pour la première fois. Même si l'exécutable provient d'un code source libre, les utilisateurs ne peuvent pas en faire fonctionner de version modifiée ; l'exécutable n'est donc pas libre, de fait.

De nombreux produits Android contiennent des exécutables de Linux tivoïsés, bien que la licence de leur code source soit la GNU GPL, version 2. (Nous avons fait en sorte d'interdire cette pratique dans la version 3 ; c'est dommage que Linux ne l'ait pas adoptée.) Ces exécutables, construits à partir de code source à la fois open source et libre, sont généralement qualifiés d'« open source », mais ils ne sont pas libres.

Malentendus courants sur le « logiciel libre » et l'« open source »

L'expression free software souffre d'un problème de mauvaise interprétation : une signification fortuite, « un logiciel que vous pouvez avoir gratuitement », lui correspond aussi bien que la signification voulue, « un logiciel qui donne certaines libertés à l'utilisateur ». Nous traitons ce problème en publiant la définition du logiciel libre et en disant : « Think of “free speech”, not “free beer”.» Ce n'est pas une solution parfaite, cela ne peut pas complètement éliminer le problème. Une expression correcte non ambiguë serait meilleure si elle n'avait pas d'autres problèmes.

Malheureusement, toutes les dénominations alternatives en anglais ont leurs problèmes. Nous avons étudié un grand nombre de suggestions, mais aucune ne s'impose assez clairement pour qu'il soit souhaitable de l'adopter (par exemple, le mot français ou espagnol « libre » peut être utilisé dans certains contextes, mais en Inde les gens ne le reconnaissent pas du tout). Toutes les expressions suggérées pour remplacer free software ont des problèmes sémantiques, y compris open source software.

La définition officielle du logiciel open source (publiée par l'Open Source Initiative et trop longue pour être citée ici) dérive indirectement de nos critères pour le logiciel libre. Elle est différente, car un peu plus laxiste à certains égards. Néanmoins, cette définition est en accord avec la nôtre dans la plupart des cas.

Cependant, la signification évidente de « logiciel open source » est « vous pouvez regarder le code source. » C'est apparemment ce que comprennent la plupart des gens, à tort (l'expression « source disponible » serait plus explicite si c'était le cas). Ce critère est beaucoup beaucoup plus faible que celui du logiciel libre, et aussi beaucoup plus faible que la définition officielle de l'open source. Il inclut beaucoup de programmes qui ne sont ni libres, ni open source.

Pourquoi les gens font-ils cette erreur d'interprétation ? Parce que c'est la signification naturelle des mots « open source » (source ouverte). Mais le concept pour lequel les défenseurs de l'open source cherchaient un autre nom était une variante de celui de logiciel libre.

La signification évidente d'« open source » n'étant pas celle qu'entendent ses défenseurs, la plupart des gens comprennent mal cette expression. Selon Neal Stephenson, « “Linux est un logiciel open source” signifie simplement que n'importe qui peut obtenir des copies de son code source ». Je ne pense pas qu'il ait délibérément cherché à rejeter ou à remettre en cause la définition officielle. Je pense plutôt qu'il s'est simplement basé sur les conventions de la langue anglaise pour trouver un sens à cette expression. L'état du Kansas a publié une définition similaire : « Utiliser des logiciels open source (OSS). Les logiciels open source sont des logiciels pour lesquels le code est librement et publiquement disponible, bien que les accords de licence spécifiques varient sur ce que l'on peut faire avec ce code. »

Le New York Times a fait paraître un article qui élargit le sens de cette expression jusqu'à l'appliquer aux bêta tests (laisser quelques utilisateurs essayer une pré-version et donner un retour confidentiel), ce que les développeurs de logiciels privateurs pratiquent depuis des décennies.

La signification d'« open source » a été élargie au point d'englober les plans d'équipements qui sont publiés sans brevet. Les plans d'équipements libres de brevets peuvent être des contributions louables à la société, mais l'expression « code source » ne peut pas leur être appliquée.

Les partisans de l'open source essaient de traiter le problème en rappelant leur définition officielle, mais cette approche corrective est moins efficace pour eux qu'elle ne l'est pour nous. Free software a deux significations naturelles, l'une d'entre elle étant la signification escomptée ; ainsi une personne qui aura saisi l'idée de free speech, not free beer ne pourra plus dès lors se tromper sur son sens. Mais le terme « open source » n'a qu'une seule signification naturelle, qui est différente de la signification voulue par ses partisans. Aussi n'y a-t-il aucune manière succincte d'expliquer et de justifier sa définition officielle. Cela ne fait qu'augmenter la confusion.

Autre malentendu de l'open source : l'idée que cela signifie « ne pas utiliser la GNU GPL » ; cette idée va souvent de pair avec la confusion entre « logiciel libre » et « logiciel sous GPL ». Ce sont deux erreurs, puisque la GNU GPL répond aux critères de l'open source et que la plupart des licences open source répondent aux critères du logiciel libre. Il y a de nombreuses licences de logiciel libre, à part la GNU GPL.

Le sens de l'expression « open source » a été élargi par son application à d'autres activités, entre autres l'administration publique, l'éducation et la science, où la notion de code source n'a aucun sens et où les critères des licences de logiciel ne sont tout simplement pas pertinents. La seule chose que ces activités ont en commun est que, chacune à sa manière, elles invitent le public à participer. Tant et si bien qu'« open source » ne signifie plus que « participatif », « transparent » ou moins encore. À la limite, c'est devenu une expression à la mode vide de sens.

Des valeurs différentes peuvent amener à des conclusions similaires, mais pas toujours

Les groupes radicaux des années 60 avaient une réputation de sectarisme : certaines organisations se sont scindées en deux en raison de désaccords sur des détails de stratégie et les deux groupes résultants se sont traités l'un l'autre en ennemis en dépit du fait qu'ils avaient les mêmes buts et se basaient sur des valeurs semblables. La droite a fait grand cas de ceci et s'en est servi pour critiquer la gauche toute entière.

Certains essaient de dénigrer le mouvement du logiciel libre en comparant notre désaccord avec l'open source aux désaccords de ces groupes radicaux. Ces personnes ont tout faux. Nous sommes en désaccord avec le camp de l'open source sur les buts et les valeurs de base, mais en pratique leurs points de vue et les nôtres mènent dans beaucoup de cas au même comportement, comme de développer du logiciel libre.

Par conséquent, les gens du mouvement du logiciel libre et du camp de l'open source travaillent souvent ensemble sur des projets concrets comme le développement logiciel. Il est remarquable que des points de vue philosophiques tellement divergents puissent si souvent motiver des personnes différentes à participer aux mêmes projets. Néanmoins, il y a des situations où ces vues fondamentalement différentes mènent à des actions très différentes.

L'open source repose sur l'idée qu'en permettant aux utilisateurs de modifier et redistribuer le logiciel, celui-ci en sortira plus puissant et plus fiable. Mais cela n'est pas garanti. Les développeurs de logiciels privateurs ne sont pas forcément incompétents. Parfois ils produisent un programme qui est puissant et fiable, bien qu'il ne respecte pas les libertés des utilisateurs. Les activistes du logiciel libre et les enthousiastes de l'open source vont réagir très différemment à cette situation.

Un pur enthousiaste de l'open source, absolument pas influencé par les idéaux du logiciel libre, dira : « Je suis surpris que vous ayez été capable de faire fonctionner ce programme si bien sans utiliser notre modèle de développement, mais vous l'avez fait. Comment puis-je m'en procurer un exemplaire ? » Ce genre d'attitude incite à des arrangements qui emportent avec eux notre liberté, la menant à sa perte.

L'activiste du logiciel libre dira : « Votre programme est vraiment attrayant, mais pas au prix de ma liberté. Donc je n'en veux pas. Je vais faire mon travail autrement et soutenir un projet ayant pour but de développer une alternative libre. » Si nous accordons de la valeur à notre liberté, nous pouvons agir pour la conserver et la défendre.

Un logiciel puissant et fiable peut être mauvais

Le souhait que le logiciel soit puissant et fiable provient de l'idée que le logiciel est fait pour servir ses utilisateurs. S'il est puissant et fiable, il les sert mieux.

Mais pour qu'on puisse dire d'un logiciel qu'il sert ses utilisateurs, il doit respecter leur liberté. Que dire s'il est conçu pour les enchaîner ? Sa puissance signifie alors uniquement que les chaînes sont plus serrées. Les fonctionnalités malveillantes telles que l'espionnage des utilisateurs, les restrictions, les portes dérobées et les mises à jour forcées sont pratique courante dans les logiciels privateurs et certains partisans de l'open source veulent les introduire dans les programmes open source.

Sous la pression des maisons de disques et des producteurs de films, les logiciels destinés au grand public sont de plus en plus conçus spécifiquement pour lui imposer des restrictions. Cette fonctionnalité malveillante est connue sous le nom de gestion numérique des restrictions, ou DRM (voir DefectiveByDesign.org). Dans son esprit, c'est l'antithèse de la liberté que le logiciel libre vise à procurer. Et pas simplement dans l'esprit : étant donné que le but des dispositifs de DRM est de piétiner votre liberté, leurs concepteurs essayent de vous rendre difficile, impossible ou même illégal de modifier le logiciel qui met en application ces dispositifs.

Pourtant quelques défenseurs de l'open source ont proposé des « DRM open source ». Ils partent de l'idée qu'en publiant le code source de leur programme conçu pour restreindre votre accès aux médias chiffrés et en autorisant d'autres personnes à le modifier, ils produiront un logiciel plus puissant et plus fiable pour imposer des restrictions aux utilisateurs comme vous. Il vous sera alors livré dans des appareils qui ne vous permettront pas de le changer.

Il se peut que ce logiciel soit open source et utilise le modèle de développement open source ; mais ce ne sera pas un logiciel libre, puisqu'il ne respectera pas la liberté des utilisateurs qui le font effectivement fonctionner. Si le modèle de développement open source réussit à rendre ce logiciel plus puissant et plus fiable pour limiter vos droits, cela le rendra encore pire.

La crainte de la liberté

À l'origine, la principale motivation de ceux qui ont détaché le camp de l'open source du mouvement du logiciel libre était que les idées éthiques du logiciel libre mettaient certaines personnes mal à l'aise. C'est vrai : soulever des questions éthiques comme la liberté, parler de responsabilités aussi bien que de commodité, c'est demander aux gens de penser à des choses qu'ils préféreraient ignorer, comme de savoir si leur conduite est éthique ou non. Cela peut déclencher un malaise et certains peuvent simplement fermer leur esprit à ces questions. Il ne s'ensuit pas que nous devrions cesser d'en parler.

C'est pourtant ce que les leaders de l'open source ont décidé de faire. Ils ont supputé qu'en passant sous silence l'éthique et la liberté et en ne parlant que des avantages pratiques immédiats de certains logiciels libres, ils seraient à même de « vendre » le logiciel plus efficacement à certains utilisateurs, particulièrement aux entreprises.

Quand les partisans de l'open source parlent de quelque chose de plus fondamental, ils évoquent habituellement l'idée de « faire cadeau » du code source à l'humanité. Présenter cela comme une bonne action exceptionnelle, allant au-delà de ce qu'exige la morale, laisse supposer que la distribution de logiciel privateur sans le code source est moralement légitime.

Cette approche a prouvé son efficacité, à sa manière. La rhétorique de l'open source a convaincu beaucoup d'entreprises et de particuliers d'utiliser et même de développer du logiciel libre, ce qui a élargi notre communauté, mais seulement à un niveau pratique superficiel. La philosophie de l'open source, avec ses valeurs purement utilitaires, empêche la compréhension des idées plus fondamentales du logiciel libre ; elle amène beaucoup de monde dans notre communauté, mais ne leur apprend pas à la défendre. En soi, ce n'est pas mal, mais ce n'est pas assez pour instaurer une liberté durable. Attirer des utilisateurs vers le logiciel libre ne leur fait faire qu'une partie du chemin vers la défense de leur propre liberté.

Tôt ou tard, ces utilisateurs seront invités à retourner vers le logiciel privateur pour quelques avantages pratiques. D'innombrables sociétés cherchent à les tenter de cette manière, certaines proposent même des exemplaires gratuits. Pourquoi les utilisateurs refuseraient-ils ? Ils le feront seulement s'ils ont appris à donner de la valeur à la liberté que leur procure le logiciel libre, à la liberté en tant que telle, plutôt qu'à la commodité technique et pratique de logiciels libres particuliers. Pour diffuser cette idée, nous devons parler de logiciel libre. Une certaine dose de l'approche « profil bas » avec les entreprises peut être utile pour la communauté, mais elle est dangereuse si elle devient si commune que l'amour de la liberté finit par ressembler à une excentricité.

Cette situation dangereuse est exactement celle qui prévaut actuellement. La plupart des gens impliqués dans le logiciel libre en disent peu sur la liberté, en particulier les distributeurs, généralement parce qu'ils cherchent à « se faire mieux accepter en entreprise ». Presque toutes les distributions du système d'exploitation GNU/Linux ajoutent des paquets privateurs au système de base libre et ils invitent les utilisateurs à considérer cela comme un avantage, plutôt qu'un défaut.

Les greffons logiciels privateurs et les distributions GNU/Linux partiellement non libres trouvent un terreau fertile parce que la majeure partie de notre communauté n'exige pas la liberté de ses logiciels. Ce n'est pas une coïncidence. La plupart des utilisateurs de GNU/Linux ont été introduits au système par un discours open source qui ne leur a pas dit que son objectif était la liberté. Les pratiques qui ne défendent pas la liberté et les discours qui ne parlent pas de liberté vont de pair, l'un favorisant l'autre. Pour surmonter cette tendance, nous avons besoin de parler davantage de liberté et non l'inverse.

« FLOSS » et « FOSS »

On utilise les termes « FLOSS » et « FOSS » pour rester neutre vis-à-vis du logiciel libre et de l'open source. Si la neutralité est ce que vous recherchez, « FLOSS » est le meilleur des deux parce qu'il est vraiment neutre. Mais si votre but est de défendre la liberté, ce n'est pas en utilisant des termes neutres que vous l'atteindrez. Pour défendre la liberté, vous devez montrer aux gens que vous la soutenez.

Rivaux en termes de popularité

« Libre » et « open » sont rivaux en termes de popularité. Logiciel libre et open source sont des notions différentes mais, dans la vision du logiciel qu'ont la plupart des gens, elles se font concurrence sur le même créneau conceptuel. L'habitude de dire et penser « open source » fait obstacle à la compréhension de la philosophie du mouvement du logiciel libre et empêche d'y réfléchir. Si une personne en est arrivée au point de nous associer, nous et notre logiciel, au terme « open », elle a peut-être besoin d'être choquée intellectuellement pour admette que nous militons pour autre chose. Toute action qui fait la promotion des termes « open » ou « ouvert » a tendance à tirer un peu plus le rideau qui cache les idées du mouvement du logiciel libre.

Par conséquent, les activistes du logiciel libre seront bien avisés de ne pas prendre part aux actions qui se présentent comme « open » ou « ouvertes ». Même si l'action dont il s'agit est bonne en soi, chacune de vos contributions fait un peu de mal par ailleurs en promouvant l'idée d'open source. Il y a une multitude d'autres actions bénéfiques qui se présentent comme « libres ». Toute contribution à ces projets a un petit plus par ailleurs. Avec un choix pareil de projets utiles, pourquoi ne pas choisir celui qui fait le plus de bien ?

Conclusion

À un moment où ceux qui prônent l'open source amènent de nouveaux utilisateurs dans notre communauté, nous, activistes du logiciel libre, devons assumer la tâche d'attirer l'attention de ces nouveaux utilisateurs sur la question de la liberté. Nous devons leur dire « C'est du logiciel libre et il te donne la liberté ! » plus souvent et plus fort que jamais. Chaque fois que vous dites « logiciel libre » plutôt qu'« open source » vous soutenez notre cause.

Notes

  • Joe Barr a écrit un article appelé Live and Let Live (Vivre et laisser mettre sous licence) qui donne son point de vue sur cette question.
  • L'article de Lakhani et Wolf sur la motivation des développeurs de logiciel libre dit qu'une fraction considérable d'entre eux est motivée par la notion que le logiciel doit être libre. Ceci bien que l'enquête ait été faite parmi les développeurs de SourceForge, un site qui ne soutient pas le point de vue selon lequel il s'agit d'une question d'éthique.

Notes de traduction
  1.   Le mot anglais free a deux significations, « libre » (exemple : free speech, libre expression) et « gratuit » (exemple : free beer, bière gratuite). Il y a peu de chance qu'on fasse la confusion en français, car « entrée libre » est à peu près le seul cas où l'on peut donner à « libre » le sens de « gratuit » ; on constate malgré tout que le logiciel libre est souvent assimilé (par erreur) à du logiciel gratuit.
  2.   Open source : à code source ouvert.
  3.   Autre traduction de proprietary : propriétaire.