La production de logiciels présente un caractère paradoxal. Elle est dominée par de grandes entreprises capitalistes dont l’archétype est Microsoft, entreprise qui représente la plus importante capitalisation boursière mondiale. Mais il existe également un modèle de développement coopératif (les logiciels libres), aux antipodes du modèle précédent. Ce modèle prend une place non négligeable dans certains segments de l’économie du logiciel, comme le montre notamment le succès de Linux.
Nous caractérisons le logiciel libre comme étant un produit développé selon une optique non marchande et qui n’est pas non plus l’aboutissement d’un projet explicite des pouvoirs publics. Comment expliquer le développement de cette forme de production non marchande dans une société qui se caractérise principalement par l’extension du règne de la marchandise ? Ce phénomène peut-il s’étendre spontanément à l’ensemble de l’économie du logiciel, voire gagner d’autres secteurs de l’économie ?
La réponse à ces questions est basée sur l’analyse des spécificités technico-économiques des logiciels en général (I). Celles-ci permettent d’expliquer pourquoi certains acteurs ont produit des logiciels libres, et le succès (relatif) de cette forme de production (II). Toutefois l’élargissement du champ des logiciels libres risque d’être rapidement limité, malgré les qualités des logiciels libres – qui sont une manifestation concrète des potentialités de formes non marchandes de l’activité économique (III).
I. Les spécificités technico-économiques du logiciel
Après avoir précisé ce qu’est un logiciel (A), nous examinerons les deux principales particularités des logiciels : c’est “naturellement” un bien collectif (B) ; sa diffusion repose principalement sur l’existence de rendements croissants d’adoption (C).
A. Le logiciel un texte numérique actif existant sous deux formes différentes.
Par delà leur diversité fonctionnelle, les logiciels ont en commun d’être des textes numériques actifs. Ecrits dans un langage de programmation, un programme se présente sous la forme d’un texte. La programmation est une forme d’écriture (Pierre Lévy, 1992, p. 10) et comme toute activité d’écriture, elle se caractérise par une diversité illimitée. Existant sous une forme numérique le texte du programme possède de très grandes possibilités de modification, de réutilisation, de combinaison. Mais ce texte est également un texte actif (un texte qui agit, Michel Callon, 1991, p. 205) dans la mesure où il se compose d’un ensemble d’instructions qui seront exécutées automatiquement par une machine. Le passage de l’univers humain à l’univers machinique s’opère dans la transformation (réalisée automatiquement par un compilateur ou un interpréteur) de son code-source (texte du programme écrit dans un langage de programmation compréhensible par l’être humain) en un code-objet (suite d’instructions en langage machine). Par cette opération le logiciel se métamorphose d’une information particulière à destination d’une machine mais ayant un sens pour son concepteur, en de simples données numériques dépourvues de signification apparente, simple enchaînement d’actions effectuées “machinalement”. D’une information sur la conduite d’un processus, d’une action, le logiciel devient lui-même processus, action (Jean-Benoît Zimmermann, 1995, p.182). La forme la plus extrême de ce processus est la gravure dans le silicium du code objet sous forme de composant électronique (bien tangible). Il est important de noter qu’à partir de l’unique disposition du code objet, il est très difficile de reconstituer le code source du logiciel (décompilation) ; par contre la disposition du code source autorise une infinité de modifications permettant de générer facilement un programme au comportement différent. La différence est donc essentielle entre un logiciel fourni sous forme de code source, et un logiciel fourni uniquement sous forme de code objet. Enfin, pour exploiter les potentialités d’un logiciel, il faut mobiliser des compétences techniques qui peuvent être élevées. Les utilisateurs ne possédant pas nécessairement “en interne” ces compétences, il est fréquent qu’un logiciel soit commercialisé avec une part plus ou moins importante de services liés (installation, adaptation, formation, maintenance).
B. Le logiciel un bien “naturellement” collectif.
Les logiciels font partie des biens intangibles, définis comme étant des “originaux” produits d’une activité de création scientifique, technique ou artistique. La particularité des biens intangibles est que ces “originaux” inscrits sur des supports divers peuvent être facilement dupliqués à un coût de plus en plus faible, et généralement sans commune mesure avec le coût de création de l’original, et que l’original et les copies ont les mêmes caractéristiques utiles (Jean Gadrey, 1999). De ce fait, les logiciels possèdent “naturellement” les déterminants des biens collectifs purs (Foray, 1995) : indivisibilité (les dépenses de mise au point du code source d’un logiciel sont quasiment indépendantes du nombre d’utilisateurs), bien non-rival (le logiciel ne se détruit pas dans l’usage et peut donc être adopté par un nombre infini d’utilisateurs), et non-exclusion de l’usage (il est a priori difficile d’empêcher un utilisateur d’adopter un logiciel existant). Or, la production des biens collectifs ne peut être assurée de façon optimale par des mécanismes marchands. Certes, il existe des possibilités pour restreindre le caractère de bien collectif du logiciel et le transformer en un produit vendable en agissant sur le troisième déterminant (inappropriabilité) par l’élaboration de mécanismes destinés à empêcher la reproduction de ce qui est par nature reproductible : soit par des dispositifs techniques visant à empêcher la copie (protection des disquettes, adjonction d’un composant électronique matériel nécessaire pour utiliser le logiciel), à l’efficacité limitée (existence de logiciels de copie de disquettes protégées, possibilité de modifier le logiciel pour contourner le composant électronique), soit par des dispositifs juridiques (protection par le droit d’auteur et plus récemment par les brevets avec des modalités différentes selon les pays). L’efficacité de ces dispositifs est, en général, subordonnée à la non-diffusion du code source du logiciel. Il est intéressant de noter que les efforts portent sur le rétablissement artificiel d’une situation de rareté au contraire de l’activité économique “normale” qui est de lutter contre celle-ci, dans une démarche qui n’est pas sans rappeler la récente mise au point de semences qui ne peuvent se reproduire. De ce point de vue, les logiciels libres, en faisant des logiciels “la propriété collective de l’humanité ” (Di Cosmo et Nora, 1998, p. 144), constituent un retour à la situation originelle.
L’importance des rendements croissants d’adoption et ses conséquences.
L’existence de rendements croissants d’adoption a été mise en évidence dans les processus de choix d’une technologie. Ces rendements croissants d’adoption sont l’apprentissage par l’usage, les interrelations technologiques (par exemple entre le logiciel et le matériel), les économies d’échelle en production, les rendements croissants d’informations et les externalités de réseaux. Les externalités de réseau (directes et indirectes) sont des externalités de consommation qui proviennent de l’interdépendance des décisions de consommation individuelle : l’utilité d’un bien ou d’un service constitue une fonction croissante du nombre d’agents ayant adopté ce produit. Les externalités de réseaux directes (effet de club direct) reposent sur l’existence d’un réseau physique, comme dans les cas du téléphone ou plus récemment du courrier électronique, où l’existence d’un nouvel abonné augmente pour chaque usager l’utilité de son propre appareil. Les externalités de réseaux indirectes s’expliquent par l’importance de l’offre de produits complémentaires qui dépend de la taille du réseau (par exemple les applications disponibles pour un système d’exploitation) ; le réseau est constitué par les possesseurs du produit principal qui ne sont pas nécessairement reliés entre eux au sens physique du terme (Katz et Shapiro, 1985).
La présence de rendements croissants d’adoption explique les mécanismes d'”autorenforcement” qui se créent autour d’une technologie (Arthur, 1988) : l’action même d’adopter une technologie rend celle-ci plus attractive pour les utilisateurs potentiels, augmentant par-là même ses chances d’être adoptée dans le futur. De ce fait, en conséquence de “petits événements initiaux” et des anticipations des utilisateurs sur les comportements des autres utilisateurs, une technologie peut s’imposer et se maintenir même si une majorité d’utilisateurs ne la juge pas (ou plus) optimale. Ceci s’explique par les coûts résultants du changement de technologie, et par le fait que chaque utilisateur a tendance à attendre que les autres utilisateurs changent de technologie pour s’y rallier. C’est une situation de «verrouillage en raison d’accidents historiques» (accidental lock-in, David, 1994) dont on ne peut sortir que si une autre technologie est adoptée simultanément par une proportion d’individus dépassant un certain seuil critique
Les rendements croissants d’adoption sont particulièrement importants dans l’économie du logiciel et permettent d’expliquer comment des logiciels, indépendamment de leurs qualités, peuvent devenir hégémoniques. Le processus qui a permis l’imposition du système d’exploitation de Microsoft peut être pris comme illustration. L’événement initial fut la décision d’IBM, lorsqu’elle décida de se lancer dans la production de micro-ordinateurs (l’IBM-PC) de confier l’écriture de son système d’exploitation à un petit producteur de logiciels (Microsoft emploie 50 salariés à l’époque). Le poids d’IBM dans l’informatique en général semblait garantir l’existence d’un marché plus large pour les éditeurs de progiciels qui développèrent de multiples applications pour le système d’exploitation de Microsoft (MSDOS) et pour les fabricants de micro-ordinateurs qui produisirent massivement des micro-ordinateurs “compatibles PC”, renforçant de ce fait l’intérêt d’utiliser ce système d’exploitation. Il est remarquable de constater que l’événement qui fit converger les anticipations sur MSDOS et le transformèrent en standard de fait dans la microinformatique, à savoir le rôle dominant que devait jouer IBM dans cette activité, ne s’est en fait jamais réalisé. MSDOS s’est imposé, y compris face à d’autres systèmes d’exploitation plus performants sur le plan de la technique et de la convivialité.
Ces processus de diffusion des logiciels ont deux conséquences importantes. D’une part, les logiciels qui s’imposent finalement sur le marché ne sont pas (ou plus) nécessairement “optimaux”. D’autre part, une concentration monopolistique du secteur se produit à moyen terme. La présence de nombreux producteurs de progiciels s’expliquait surtout par l’existence de sous-secteurs relativement indépendants correspondant à des progiciels aux fonctionnalités très différentes, s’exécutant sur des matériels divers et qui n’étaient pas en concurrence les uns avec les autres (absence de substitution possible entre un traitement de texte et un tableur ou entre un progiciel de gestion s’exécutant sur micro-ordinateur ou sur mini-ordinateur) ; de plus l’apparition périodique de nouveaux domaines d’application entraînait une vive concurrence entre de multiples producteurs, parfois de taille très réduite, même si à terme ne subsistait principalement qu’un producteur leader. Cependant, le rapprochement entre les différents types de matériels, le contrôle légal ou technique des standards notamment pour les interfaces fonctionnelles des logiciels et la représentation des informations, et la puissance commerciale et financière des principaux éditeurs de progiciels (notamment Microsoft) font que cette concentration a tendance à s’étendre à l’ensemble du secteur des progiciels. Elle peut même dépasser ce secteur, avec la convergence autour du numérique des technologies de l’information et de la communication (l’informatique, les télécommunications, et plus récemment la télévision) et, en conséquence, le développement de nouvelles externalités de réseaux directes et indirectes. Les risques d’une insuffisante diversité des progiciels sont à terme importants : “l’écologie des idées et des techniques obéit aux mêmes lois que celles des êtres vivants. La quasi-unicité des solutions présente plusieurs dangers” (Lang, 1998 a). Elle peut diminuer la quantité et la variété des recherches et donc le progrès technique : “une fois la concurrence disparue, le seul producteur restant n’a plus aucun intérêt à investir pour améliorer ses produits” (Lang, 1997, p. 2). Plus précisément, le développement et la commercialisation de nouveaux produits ou de nouvelles versions obéissent uniquement aux intérêts du producteur et peuvent rendre les utilisateurs dépendants du producteur, notamment par l’imposition de fait de standards propriétaires (exemple des formats de fichiers de Microsoft). Cette situation peut permettre de comprendre pourquoi se sont développés des logiciels libres.
II. Les facteurs de développement des logiciels libres.
Après avoir montré qu’un logiciel libre est un produit développé selon une logique non marchande (A), nous examinerons les motivations pour créer des logiciels libres (B) et les qualités spécifiques des logiciels libres (C) qui permettent d’expliquer le succès de certains d’entre eux.
A.
Le logiciel libre, un produit original développé selon une optique non marchande.
1. Un logiciel libre est un logiciel dont le code source est librement accessible….
Les logiciels libres se distinguent des autres logiciels par le fait que leur code source est librement accessible, redistribuable et modifiable. En effet, dans le cas des progiciels commerciaux, comme le plus souvent des logiciels en shareware et en freeware, c’est uniquement le code objet du logiciel qui est fourni à l’utilisateur, sans possibilité de connaître le code source du logiciel. Sur le plan juridique les logiciels libres sont basés sur des licences particulières, dont la plus utilisée est la Licence Publique Générale (GPL). Cette licence est l’œuvre de la Free Software Foundation (FSF), dont l’objectif est de soutenir le développement de logiciels libres. Cette fondation créée en 1985 par Richard Stallman (un informaticien du MIT) se situait dans le prolongement du projet GNU lancé l’année précédente dont l’objectif était de créer un Unix libre de droit face aux différentes versions commerciales d’Unix des différents constructeurs informatiques. Ces licences publiques utilisent à rebours le droit d’auteur pour garantir qu’un logiciel libre le restera : toute personne peut utiliser, distribuer, modifier librement un logiciel sous licence GPL à condition de maintenir libre ce logiciel, c’est à dire de fournir librement le code source. C’est la différence avec un logiciel du domaine public qui n’étant pas couvert par le droit d’auteur peut faire l’objet de dépôt de licence classique.
Ce que couvrent les licences des logiciels libres, c’est uniquement le code source du logiciel, à l’exclusion explicite de tout service lié, y compris même une simple garantie de bon fonctionnement. La production d’un logiciel libre consiste simplement à développer le logiciel, dont le code source est librement accessible. Une personne ou une organisation intéressée par ce logiciel devra effectuer elle-même ou faire réaliser par des prestataires extérieurs les opérations complémentaires nécessaires (duplication, compilation, édition de liens, installation, paramétrage, adaptation, formation…) pour que le logiciel puisse répondre à ses besoins. Toutefois on peut noter que dans la mesure où les opérations de transformation d’un logiciel-source mis au point en un programme exécutable (code objet) demandent peu d’efforts pour ceux qui disposent des compétences, des logiciels et du matériel nécessaires, il est fréquent de proposer également librement les programmes exécutables correspondants aux configurations informatiques les plus répandues. Il faut également ajouter que les opérations de duplication et de mise à disposition des programmes, dont le coût était déjà très faible par rapport aux coûts de développement du programme, tendent vers zéro avec l’utilisation d’Internet. Enfin de nombreuses sociétés se sont créées, qui proposent tout ou partie des services complémentaires indispensables pour pouvoir utiliser des logiciels libres.
L’originalité des logiciels libres réside donc dans la fourniture du code source. Dans le cas des autres logiciels (logiciels “propriétaires”) l’entreprise ne vend pas le code source mais le droit d’utiliser un produit partiel dérivé (une version immédiatement exécutable dans un environnement restreint, qui ne peut être revendue, ni modifiée même de façon minime y compris pour en corriger les défauts : les opérations de décompilation nécessaires pour reconstituer le code source outre leur difficulté technique sont généralement interdites par les licences d’utilisation). En d’autres termes, dans le cas des logiciels privés, l’entreprise vend uniquement l’usage d’un produit dont elle conserve le contrôle.
2. …ce qui est une condition suffisante (mais non nécessaire) à sa gratuité.
Il importe tout d’abord de préciser que tous les logiciels gratuits ne sont pas des logiciels libres : certains logiciels sont fournis gratuitement sans que leur code source soit librement accessible. Dans ces situations, la gratuité peut être la conséquence d’une volonté de création désintéressée (freeware), ou au contraire être le résultat de stratégies commerciales diverses d’entreprises à but lucratif. Ces stratégies peuvent avoir pour objectif de faciliter l’imposition d’un produit contre des produits concurrents qui permettra des bénéfices ultérieurs (Microsoft avec Explorer), de rechercher une rentabilité croisée sur des produits complémentaires (Acrobat Viewer d’Adobe), d’obtenir un financement par de la publicité liée au produit (la publicité sur des sites d’accès à Internet auxquels conduisent l’utilisation de certains navigateurs).
Par contre, la libre disposition du code source des logiciels libres implique la gratuité de fait de ces logiciels. Cette caractéristique est souvent contestée, y compris par les promoteurs des logiciels libres. Cette négation de la gratuité des logiciels libres est peut-être liée à l’opinion très répandue dans une société essentiellement marchande, que les notions de gratuité et de qualité sont nécessairement antinomiques. Expliquer comme Eric Raymond (1998) que “les logiciels libres ne sont pas l’opposé des logiciels commerciaux” et que “le contraire de libre n’est pas commercial mais propriétaire” nous semble fallacieux : une entreprise propriétaire du code source d’un logiciel peut commercialiser uniquement le logiciel ce qui est impossible quand le code source est libre. En effet, le code source d’un logiciel n’est pas simplement le secret de fabrication d’un produit, qui par ailleurs est rarement disponible librement. A partir du code source, il n’existe pas de processus de fabrication à proprement parler, nécessitant des compétences tacites complémentaires et ayant un coût significatif, mais simplement des opérations de compilation, d’édition de liens et de reproduction très facilement et très rapidement assurées par des outils logiciels.
Certes, la progression de la diffusion des logiciels libres s’accompagne du développement de services marchands divers liés à ces logiciels, mais il importe, sur un plan analytique, de différencier ces services des logiciels libres eux-mêmes. Formellement les licences publiques n’interdisent pas de vendre des logiciels libres (à condition de fournir également le code source), et il existe des exemples de sociétés qui, en apparence, vendent des logiciels libres, la plus célèbre étant la Red Hat Software, une des sociétés qui commercialise Linux. En réalité ces sociétés commercialisent des activités liées au logiciel (sélection de logiciels, réalisation de la copie, distribution, garantie, maintenance, intégration, conseil, installation, assistance technique, développement de solutions spécifiques…), pas le logiciel lui-même : une personne intéressée par le logiciel seul, peut le télécharger gratuitement ou le compiler à partir de son code source librement accessible. Si certaines de ces sociétés contribuent, à des degrés divers, au développement des logiciels libres sur lesquels sont basés leurs services, il n’est nullement évident que cette situation se pérennise (cf. III).
Les principales caractéristiques des différents produits sont résumées dans le tableau I :
Logiciel libreLogiciel privé payantLogiciel privé
gratuitVente de solutions basées sur des logiciels libresCode sourceouinonnonouiCode objetéventuellementouiouiouiServices liésnonouiéventuellementouiGratuitéouinonouinon
La libre accessibilité du code source est donc comme une condition suffisante, mais non nécessaire de la gratuité d’un logiciel. Cette discussion sur la caractérisation des logiciels libres comme étant gratuits n’est pas … gratuite. Elle vise à mettre en évidence le caractère fondamentalement non marchand de la création des logiciels libres, et donc d’en comprendre les fondements particuliers dans une société marchande et les limites éventuelles.
3. Une production non marchande.
Les logiciels libres sont l’œuvre de producteurs très différents, qui peuvent parfois coopérer pour coproduire les logiciels. Ces producteurs peuvent être de simples particuliers (éventuellement regroupés en association ou liés par des relations informelles), des universités, des centres de recherche publics ou dépendants d’entreprises privées mais dont l’objectif principal n’est pas la rentabilité immédiate. Les logiciels libres correspondent à des domaines divers, depuis des systèmes d’exploitation ou des compilateurs jusqu’à de petits “utilitaires”, en passant par les principaux outils logiciels nécessaires au fonctionnement d’Internet.
Le modèle libre est souvent présenté par les promoteurs du logiciel libre comme “reposant sur les mêmes bases que l’économie libérale” (Lang, 1998 b) et comme se comportant comme “un marché libre” (Raymond, 1998) ; de même Patrice Aron (1998) parle d’un “modèle d’activité économique plus en accord avec les lois du marché”. De façon, à notre avis, contradictoire, les mêmes auteurs soulignent les analogies entre le modèle libre et celui de la recherche scientifique. Ce qui justifie à leurs yeux cette double affirmation, c’est l’existence dans les deux cas d’une concurrence souvent très dure. Il nous semble en revanche que ce qui caractérise “l’économie libérale” c’est la production de marchandises dans le but de réaliser un profit ; ce n’est manifestement pas le cas dans le modèle libre où “l’économie monétaire ne joue qu’un rôle réduit” (Lang, 1998 a). S’il peut effectivement exister des formes de concurrence dans l’économie libérale comme dans le modèle libre, les critères de réussite dans les deux cas sont différents : dans le premier cas, la réussite se mesure en termes de chiffre d’affaires et de profits réalisés, dans le second cas la concurrence prend la forme d’une compétition intellectuelle dont l’enjeu est le prestige qui résulte de la qualité de la création réalisée. Certes l’augmentation de la part de marché d’une entreprise peut résulter de la qualité de ses produits, mais il existe bien d’autres moyens (savoir-faire marketing, puissance de la distribution, vente de produits liés…) pour imposer des produits même de qualité médiocre. L’exemple de la polémique qui se développe autour de Microsoft est caractéristique de cette opposition. Les méthodes utilisées par Microsoft pour imposer ses progiciels sont vigoureusement dénoncées (Di Cosmo et Nora, 1998), alors que la plupart d’entre elles sont légales. En fait le succès de Microsoft est éclatant à l’aune des critères marchands, ce que traduit parfaitement ses remarquables résultats financiers, mais il est critiqué à partir d’un critère différent : la qualité, jugée insuffisante, de ses produits.
B. Les motivations pour créer des logiciels libres.
Dans une situation où les utilisateurs jugent insuffisante la qualité des produits proposés (en raison des mécanismes décrits précédemment), la tentation peut être grande pour des personnes disposant des compétences nécessaires, de développer eux-mêmes les logiciels dont ils ont besoin. Cette tentation peut se transformer en nécessité absolue quand ces personnes ne trouvent pas sur le marché les logiciels qui leur sont nécessaires, par exemple les universitaires américains dans les années quatre-vingt pour les logiciels d’accès à Internet. Cette activité est rendue possible par le fait que la création de logiciels réclame peu d’investissements matériels et n’exige aucune infrastructure lourde. Le fait de produire ces logiciels de façon libre est le produit d’une certaine tradition éthique, notamment en milieu universitaire, de communiquer les résultats théoriques ou expérimentaux des recherches (Lang, 1997, p. 4). Elle correspond également à une recherche d’efficacité pour résoudre le problème qui se pose à l’utilisateur. En effet, ce problème a de fortes chances d’être commun à un certain nombre d’utilisateurs potentiels compétents entre lesquels l’information circule rapidement et le mode de développement des logiciels libres (mise à disposition du code source) permet de bénéficier des synergies existantes.
Un autre facteur explicatif de la création “désintéressée” de logiciels est la nature de cette activité. Par bien des aspects (infinie diversité, caractère immatériel, facilité de reproduction) la programmation s’apparente à l’écriture (Dréan, 1996, p.196), même si cette forme d’écriture est plus proche d’une démonstration mathématique que de la création d’une œuvre littéraire ; selon Pierre Lévy (1992), la programmation relève même des beaux-arts. Le plaisir de créer et d’être reconnu peut constituer une motivation suffisante à la production de logiciels. Lang (1998 a) va jusqu’à effectuer une analogie avec les motivations de la création musicale. L’identification des auteurs de logiciels libres est scrupuleusement garantie par les licences publiques, qui intègrent des dispositifs visant à préserver, en cas de modifications du logiciel “la réputation de l’auteur original” (licence GPL GNU). Cette reconnaissance de l’apport de chacun des créateurs des logiciels libres a des conséquences sur la qualité des logiciels produits : “la disponibilité du code source met aussi en jeu l’orgueil du programmeur, qui sait qu’il va être jugé par ses pairs. Et il existe pour un informaticien peu de satisfactions personnelles aussi grandes que celle d’avoir contribué à écrire un programme qui est apprécié, utilisé, repris et amélioré pendant dix ans par des milliers de programmeurs et des millions d’utilisateurs, le tout pour ses mérites propres” (Di Cosmo et Nora, 1998, p. 164). En fin de compte, “les logiciels libres sont faits par des artisans amoureux de leur art. Ce ne sont pas des produits fabriqués en grande série qui doivent respecter un calendrier, quitte à comporter des défauts” (Linus Torvalds dans Le Monde du 27-28 septembre 1998). On peut ajouter que participer au développement de logiciels libres peut contribuer à augmenter ses compétences, et que pour les principaux animateurs des projets qui connaissent un certain succès, des effets de notoriété peuvent permettre une valorisation pécuniaire ultérieure de leurs compétences.
C.
Les qualités spécifiques des logiciels libres.
Hormis la satisfaction personnelle et la reconnaissance sociale de la qualité des créations, il existe d’autres facteurs qui expliquent le haut niveau de qualité que peuvent atteindre certains logiciels libres.
On peut tout d’abord mentionner le fait que la production de logiciels libres n’a pas à supporter les dépenses de marketing dont l’importance est croissante dans la production des logiciels commerciaux.
Il faut également souligner la rapidité avec laquelle les logiciels libres intègrent les innovations existantes. Dans le domaine des logiciels, il n’existe pas de séparation nette entre la recherche fondamentale et la recherche appliquée ; certains résultats de la recherche peuvent déboucher de façon quasi immédiate sur des produits opérationnels (la compression de données et le cryptage par exemple). Pourtant, dans la production marchande de logiciels, les véritables innovations sont assez rares, et leur application peut être lente pour plusieurs raisons. D’une part, il est difficile de prévoir les évolutions dans l’ensemble de l’informatique et il existe un risque important d’introduire une innovation qui sera vite dépassée par une autre. Ensuite, il faut tenir compte du fait que les imitateurs peuvent tirer plus de profit que les initiateurs d’une innovation, et qu’une entreprise en position de force peut avoir intérêt à retarder l’introduction d’innovations. Enfin, l’importance des effets d’apprentissage peut expliquer pourquoi des méthodes de résolution de problèmes à long terme (productivité, délais) ne sont pas adoptées, car elles aggravent ces mêmes problèmes à court terme, ce qui peut être rédhibitoire pour des entreprises soumises à des contraintes de rentabilité à court terme. Ces considérations ont un effet très atténué dans le cas d’une production non marchande ce qui explique la fréquence des innovations radicales, tant en termes de produits que de méthodes de production, dans beaucoup de logiciels libres.
Un facteur important du développement des logiciels libres est les interrelations qui existent entre croissance des logiciels libres et croissance d’Internet. Une des causes importantes du succès d’Internet est que ses protocoles majeurs (TCP-IP, HTML) reposent sur les mêmes acteurs (ni privés, ni étatiques) et sur les mêmes procédures (publication des spécifications, larges échanges sur les différentes solutions proposées) que ceux qui sont à l’œuvre dans la création du logiciel libre (Horn, 1999). Il n’est dés lors pas surprenant que les institutions qui contrôlent l’évolution des standards d’Internet, proposent autour de chacune des normes qu’elles souhaitent promouvoir des logiciels libres capables de les exploiter. Les logiciels libres occupent une place décisive dans le fonctionnement d’Internet et certains estiment que sans eux, Internet disparaîtrait (LMB Actu, 12/01/1998). Réciproquement, le développement d’Internet en facilitant les échanges (rapidité et baisse des coûts) a joué un rôle décisif dans la diffusion et surtout dans la création des logiciels libres. Il a permis d’élargir considérablement l’échelle des processus originaux de développement qui expliquent les qualités des logiciels libres.
La première originalité est de transformer une partie des utilisateurs (notamment les utilisateurs initiaux) en co-développeurs permettant “une amélioration rapide du code et un débogage efficace” (Raymond, 1998). L’élimination des bogues, qui constitue fréquemment la majeure partie de l’activité de conception d’un logiciel, peut être particulièrement performante en parallélisant le débogage : “étant donné un ensemble de bêta-testeurs et de co-développeurs suffisamment grand, chaque problème sera rapidement isolé, et sa solution semblera évidente à quelqu’un” car chacun a “une perception du problème, des outils d’analyse, un angle d’attaque qui lui sont propres” (Raymond, 1998) à la différence des logiciels commerciaux qui, le plus souvent, “sont revus par des personnes très proches des auteurs, et qui commettent les mêmes erreurs” (Linus Torvalds dans Le Monde du 27-28 septembre 1998). Les codéveloppeurs sont stimulés “par la perspective autogratifiante de prendre part à l’action et récompensés par la vue constante (et même quotidienne) des améliorations de leur travail” (Raymond, 1998).
Ce mode de travail peut s’étendre au-delà des tests, jusqu’au développement en parallèle de différentes propositions indépendantes dont la meilleure est retenue, ce qui nécessite impérativement une architecture ouverte, documentée et modulaire, considérée unanimement comme des facteurs décisifs de qualité (Lang, 1997, p. 5). Ce modèle de développement du logiciel, que Raymond (1998) appelle le modèle du bazar, a fait ses preuves y compris pour le développement de grands projets complexes comme l’écriture du système d’exploitation Linux. Combiné au développement d’Internet, il permet de mettre à contribution l’attention et la puissance de réflexion de communautés entières de développeurs dispersés géographiquement, “qui peuvent mettre sur le problème un temps humain cumulé plus important de plusieurs ordres de grandeurs” (Raymond, 1998) que n’importe quelle entreprise commerciale. Les nouvelles pratiques de plus en plus utilisées par tous les producteurs de logiciel (prototypage rapide, programmation évolutive, mobilisation des compétences des utilisateurs) rendent ce modèle de développement libre particulièrement efficace.
Le fait que le code source des logiciels libres soit public peut également permettre des modifications permanentes des produits initiaux pouvant aboutir à des utilisations diversifiées et parfois très éloignées des objectifs du créateur initial, et donc une diffusion importante, ce qui, dans le cas des logiciels libres, permet d’améliorer leurs qualités. Enfin, le processus particulier de développement des logiciels libres leur confère certaines caractéristiques, qui expliquent le succès de certains d’entre eux (Di Cosmo et Nora, 1998, Lang, 1997, Aron, 1998) : flexibilité (modification du logiciel en fonction de l’évolution des besoins), portabilité (possibilité d’adapter le logiciel à la configuration matérielle utilisée qui garantit une indépendance par rapport aux producteurs de matériel), pérennité sur le long terme, compatibilité (dans la mesure où ces logiciels sont construits sur des standards ouverts).
Ces différents éléments permettent de comprendre les domaines où se sont développés quasi spontanément des logiciels libres (Smets-Solanes, 1998) : des logiciels qui au départ sont principalement autoconsommés par les producteurs eux-mêmes et qui nécessitent pour leur mise au point des compétences spécifiques (dont l’exposition sera valorisée par les pairs), préférablement à des produits plus banalisés (traitement de texte par exemple). Malgré la reconnaissance de leurs qualités spécifiques, on peut craindre qu’une extension éventuelle des logiciels libres à l’ensemble de l’économie du logiciel ne s’effectue pas aussi spontanément.
III. Les limites à l’extension du phénomène des logiciels libres.
Le développement des logiciels libres peut s’effectuer dans deux directions : l’extension à l’ensemble du champ des progiciels et le développement de composants logiciels libres. La première direction n’appelle pas de commentaires particuliers. On peut simplement noter que la crédibilité d’un progiciel est très dépendante de l’existence de progiciels complémentaires (cf. le succès différencié de Linux en tant que serveur d’entreprise et en tant que système d’exploitation d’un micro-ordinateur utilisé principalement pour de la bureautique). Certes, il peut exister des solutions comportant des progiciels libres et des progiciels privés, mais les avantages des logiciels libres ne sont pas limités a priori à certains domaines d’application. La deuxième direction correspond à un des enjeux majeurs de l’économie du logiciel. Face à l’extension permanente de l’utilisation de logiciels et de la diversité des besoins, le développement de logiciels sur mesure à partir de composants standardisés est riche de potentialités. Il permet l’adaptation du logiciel lui-même (et pas simplement des services liés) aux besoins précis de l’utilisateur, tout en permettant des niveaux de productivité et de fiabilité relativement élevés par la réutilisation systématique de composants logiciels. Pour que cette réutilisation soit pleinement efficace, il est nécessaire qu’elle dépasse le cadre de l’entreprise qui a produit ces composants logiciels. Le développement de marchés de composants logiciels, régulièrement annoncé, est dans la plupart des cas resté à un stade embryonnaire. En effet, de façon encore plus impérative que pour les logiciels, la réutilisation de composants nécessite de disposer du code-source (Raymond, 1998), notamment pour éliminer les effets inattendus résultant de l’assemblage des composants logiciels ; mais dans ce cas, il devient quasi impossible pour le producteur de facturer la fourniture de ces composants, sauf en la liant à la réalisation d’autres prestations. Là aussi la production de ces composants sous forme de composants logiciels libres et donc fournis gratuitement, peut permettre de surmonter ce dilemme.
Toutefois il n’est nullement évident que ces potentialités se concrétisent spontanément. Premièrement, la motivation pour les créateurs des logiciels libres à développer de nouveaux logiciels (cf. II B) risque d’être beaucoup moins importante pour des activités moins exaltantes et moins prestigieuses, et pour la création de produits dont les producteurs ne sont pas les utilisateurs principaux initiaux (logiciels de bureautique et de gestion, bibliothèques publiques de composants logiciels pour les applications métiers…).
Deuxièmement, l’évolution du comportement des acteurs “privés” de l’industrie informatique risque de se révéler défavorable à la croissance des logiciels libres. Certes, initialement un certain nombre de ces acteurs ont soutenu le développement des logiciels libres et ont contribué positivement à la dynamique d’autorenforcement qui s’est constituée autour de certains de ces logiciels. Il s’agit tout d’abord des sociétés de services qui se sont créées pour commercialiser des services complémentaires liés à des logiciels libres. Ces sociétés, qui le plus souvent participent à l’évolution des logiciels sur lesquels sont basées leurs prestations, connaissent une croissance parallèle à celle des logiciels libres, croissance qu’elles ont favorisée en élargissant le cercle des usagers potentiels au-delà des utilisateurs experts initiaux, ou qui disposaient “en interne” des compétences nécessaires. L’existence des logiciels libres a permis d’étendre le champ de certains services informatiques initialement limités aux grandes entreprises et aux administrations, à des utilisateurs qui n’y avaient pas accès, notamment les P.M.E.. En effet, à quantité de services comparables, les solutions basées sur des logiciels libres sont logiquement moins chères, une part importante du développement des logiciels étant fournie gratuitement par des programmeurs bénévoles ou des programmeurs d’autres sociétés sans nécessiter le paiement de redevances. De plus, la disponibilité du code source peut expliquer une qualité et une variété supérieures des services fournis. Plus récemment et en conséquence du succès naissant de certains logiciels libres, des acteurs majeurs du matériel, des services informatiques et certains éditeurs de progiciels privés ont apporté une crédibilité accrue aux logiciels libres, en adaptant leurs produits et prestations à ces logiciels.
Mais l’essor actuel des logiciels libres peut modifier profondément ces positions. Tout d’abord, il faut noter que le soutien apporté aux logiciels libres par des entreprises produisant du matériel ou des services complémentaires, n’implique pas nécessairement que ces entreprises contribuent directement ou indirectement au développement du code source du logiciel libre complémentaire de leur production. Aucune obligation technique ou économique n’existe en ce sens et la tentation peut être grande d’adopter des comportements de “cavalier libre”, à savoir profiter de l’existence de logiciels libres sans participer à leur développement. L’élargissement du marché du matériel et des services complémentaires à des logiciels libres, résultant de leur succès, peut amplifier ce type de comportements, en raison d’une série de phénomènes liés : apparition d’acteurs à la culture très éloignée du logiciel libre (HP en mai 1999, IBM bientôt) à la différence des sociétés de services initialement présentes, transformation possible des valeurs culturelles de ces sociétés en conséquence de leurs succès, durcissement de la concurrence sur ce marché et vente à des utilisateurs plus diversifiés, moins sensibilisés aux enjeux des logiciels libres et pour lesquels le prix de la solution proposée est un critère plus important que l’image de marque de la société, compétitivité supérieure des entreprises qui ne supportent pas de coûts de développement des logiciels libres.
Le même raisonnement s’applique ipso facto aux éditeurs de progiciels privés (souvent en position de faiblesse) qui proposaient des progiciels complémentaires à certains logiciels libres. Mais, dans ce cas, il faut en plus intégrer le fait que l’extension du champ des logiciels libres à de nouveaux produits risque de faire que des logiciels libres, de produits complémentaires à leurs propres produits, deviennent des produits concurrents.
Pour les producteurs de progiciels privés d’emblée en situation de concurrence avec des logiciels libres, la menace que peut constituer la progression de ces logiciels pour leurs intérêts, suscite de plus en plus de réactions. Celles-ci reposent notamment sur l’utilisation de “l’arme des brevets” (Jean-Paul Smets-Solanes, Benoît Faucon, 1999, p. 141), soit pour empêcher le développement des logiciels libres (Microsoft), soit pour les dévoyer en créant des logiciels qui n’ont guère de libres que le nom (Sun).
De façon apparemment paradoxale, la croissance actuelle des logiciels libres risque donc d’aboutir à une situation où les facteurs favorables sont dominés par les facteurs défavorables à leur développement (cf. schéma I).
En conclusion, il est donc peu vraisemblable que le logiciel libre -tout du moins sous ses formes originelles – continue spontanément à croître au même rythme que dans la période récente. Ce pronostic pessimiste, pour un secteur appelé à jouer un rôle de plus en plus important dans l’activité économique et sociale, peut être invalidé par une intervention des pouvoirs publics en faveur du logiciel libre, notamment sur le plan européen où les producteurs de progiciels sont en position de faiblesse par rapport à la domination des éditeurs de logiciels américains. Outre des dispositions juridiques (maintien et extension de la non brevetabilité des logiciels), ce soutien peut se traduire efficacement par l’incitation à l’utilisation des logiciels libres dans les administrations (notamment dans l’enseignement), par l’octroi de subventions à des équipes développant des logiciels libres, par l’aide à la constitution d’organisations souples sur des projets permettant de définir des spécifications et d’harmoniser les développements effectués. Les moyens nécessaires, financièrement limités, doivent être rapportés à l’importance de l’enjeu pour l’évolution de l’ensemble de l’économie du logiciel.
Un autre enseignement peut être dégagé de l’existence des logiciels libres. Il réside dans la preuve concrète des possibilités d’une production coopérative, basée sur d’autres mobiles que la recherche du profit, et dans la démonstration des potentialités de cette forme d’activité économique, alternative à la production marchande. Ceci peut contribuer à renforcer la volonté de transformation sociale de ceux qui ne pensent pas que les rapports de production capitalistes constituent l’horizon indépassable de la société.
François Horn
Université Charles de Gaulle – Lille III
CLERSE – IFRESI – CNRShorn@univ-lille3.fr
Bibliographie
ARON Patrice (1998), “Logiciel libre : la subversion gagne”, Le Monde Informatique, n° 774.
ARTHUR B. (1988), “Competing Technologies : An Overview”, in DOSI G., FREEMAN C., NELSON R., SILVERBERG G. et SOETE L. (eds.), Technology and Economic Theory, Pinter Publishers.
CALLON Michel (1991), “Réseaux technico-économiques et irréversibilités”, in BOYER Robert, CHAVANCE Bernard, GODARD Olivier (éds.), Les figures de l’irréversibilité en économie, Edition de l’Ecole des Hautes Etudes en Sciences Sociales, pp. 195-230
DAVID Paul A. (1994), “Les standards des technologies de l’information, les normes de communication et l’Etat : un problème de biens publics”, Analyse économique des conventions, André ORLEAN (éd.), Presses Universitaires de France, pp. 249-280.
DI COSMO Roberto, NORA Dominique (1998), Le hold-up planétaire. La face cachée de Microsoft, Calmann-Lévy, 187 p.
DREAN Gérard (1996), L’industrie informatique : Structure, économie, perspectives, Masson, 389 p.
FORAY Dominique (1995), “Les brevets dans la nouvelle économie de l’innovation”, in BASLE Maurice, DUFOURT Daniel, HERAUD Jean-Alain, PERRIN Jacques (éds.), Changement institutionnel et changement technologique Evaluation, droits de propriété intellectuelle, système national d’innovation, CNRS Editions, pp. 119-149.
GADREY Jean (1999), La caractérisation des biens et des services, d’Adam Smith à Peter Hill : une approche alternative, ronéo, 30 p.
HORN François (1999), “Diversité des informations traitées par des moyens informatiques, standardisation optimale et acteurs du processus de standardisation”, Communications et stratégies n°33, pp. 85-117.
KATZ M. et SHAPIRO C. (1985), “Network externalities, competition and compatibility”, American Economic Review, 75, 3, pp. 424-440.
LANG Bernard (1997), “Ressources libres et indépendance technologique dans les secteurs de l’information”, Colloque Inforoutes et technologies de l’information, Forum Initiatives 97, 10 p., ~lang/ecrits/hanoi/
LANG Bernard (1998 a), “Des logiciels libres à la disposition de tous”, Le Monde Diplomatique, Janvier 1998.
LANG Bernard (1998 b), “Oui au libéralisme technologique”, 01 Informatique n° 1494, p. 98.
LANG Bernard (1998 c), “Ce modèle économique est pérenne”, Le Monde Informatique n° 774, p. 98.
LEVY Pierre (1992), De la programmation considérée comme un des beaux-arts, La Découverte, 246 p.
RAYMOND Eric S. (1998), “La cathédrale et le bazar”, traduit par BLONDEEL Sébastien, ~blondeel/traduc/Cathedral-bazaar/Main_file.html
SMETS-SOLANES Jean-Paul (1998), “L’économie du logiciel libre. Un point de vue d’utilisateur”, http://www.mmedium.com/dossiers/libre/ .
SMETS-SOLANES Jean-Paul, FAUCON Benoït (1999), Logiciels libres. Liberté, égalité, business, Edispher, 256 p.
ZIMMERMANN Jean-Benoît (1995), “L’industrie du logiciel : de la protection à la normalisation”, in BASLE Maurice, DUFOURT Daniel, HERAUD Jean-Alain, PERRIN Jacques (éds.), Changement institutionnel et changement technologique Evaluation, droits de propriété intellectuelle, système national d’innovation, CNRS Editions, pp. 195-207.