Open Source : découverte d’un modèle de développement

Introduction

Qui ne s’est jamais demandé comment Firefox s’était petit à petit imposé face à Internet Explorer ? Qui s’est déjà interrogé sur la gratuité d’OpenOffice alors que cette suite bureautique reste gorgée de fonctions et d’outils toujours plus innovants ? Ces applications, nombre de postes de travail, qu’ils soient sous Windows, Mac OS ou encore Linux, en sont équipés. Leur point commun : elles sont Open Source. A la manière d’un monsieur Jourdain qui faisait de la prose sans le savoir, les logiciels Open Source s’installent progressivement sur les ordinateurs, pour gagner en popularité, quitte à détrôner, parfois, les dernières et coûteuses applications Microsoft.

Image 1 : Open Source : découverte d'un modèle de développementLeur principal avantage, d’un point de vue utilisateur : leur gratuité. On se rend sur un site Internet, on télécharge l’application et on l’installe. C’est tout. Qui s’est déjà interrogé, lors de ces ultra-simples opérations, sur la nature de l’éditeur ? Sur ses processus de développement ? Qui sait que derrière OpenOffice se cache Sun, que Mozilla sert d’éditeur à Firefox et Thunderbird ?

Cette simplicité, l’utilisateur le doit à l’Open Source. Mais au delà de la gratuité des logiciels, ce mouvement obéit à des mécanismes spécifiques qui revisitent l’informatique traditionnelle. En donnant par exemple le contre-point du modèle propriétaire mieux connu sous la bannière Microsoft. Place à l’ouverture, aux standards, aux communautés de développeurs, d’utilisateurs et à des modèles de licences qui prônent la distribution du code source des logiciels. Bref, un éco-système qui vient bouleverser la perception de propriété intellectuelle en termes de logiciels, et faire voler en éclats les modèles économiques classiques.

Ce dossier vise alors à décrypter le fonctionnement de l’Open Source en s’attelant à définir finement son périmètre par rapport aux logiciels libres, à pénétrer dans la jungle des licences Open Source et à s’arrêter sur quelques applications phares qui ont contribué à populariser l’Open Source pour en faire un composant indissociable du paysage informatique actuel. Un paysage dans lequel l’Open Source trouve sa place en révolutionnant les modèles et les mentalités dans le logiciel.

Open Source vs Logiciel Libre

Afin de mImage 2 : Open Source : découverte d'un modèle de développementieux comprendre autour de quels mécanismes s’articule l’Open Source, il convient avant tout d’en déterminer le périmètre et de mettre enfin à bas la confusion entre deux concepts souvent considérés comme synonymes (à tort) : l’Open Source d’un côté, le logiciel libre de l’autre. Si en effet, la base est commune aux deux principes – celle de donner accès gratuitement au code source d’un logiciel et de rivaliser avec le modèle propriétaire d’éditeurs comme Microsoft -, leurs philosophies diffèrent dans leur façon d’aborder la notion même de logiciel et son appropriation par l’utilisateur. Vous l’aurez compris : la différence entre les deux concepts tient d’un état d’esprit et ne réside pas dans la nature même du logiciel ou du produit.

Pour mieux décrypter cette différence, revenons aux racines de ces mouvements. Retour dans les années 90, là où le terme Open Source est né en réaction au concept du logiciel libre. Ce dernier, dont les principes ont été gravés dans le marbre par Richard Stallman en 1982, un ancien hacker président de la Free Software Foundation (voir notre interview), pose quatre principes clés considérés comme les quatre libertés fondamentales qui définissent un logiciel libre :

  • la liberté d’exécution ;
  • la liberté d’étude ;
  • la liberté de redistribution des copies ;
  • la liberté d’amélioration.

Quatre “commandements” qui viennent édicter comment doit s’articuler un mécanisme de coopération et distribution autour du logiciel, en lui donnant une dimension très sociale. Encore une fois en réaction à ce que Richard Stallman appelle “le logiciel privateur” – comprendre propriétaire, dans sa définition du Libre vs Open Source.

C’est Eric Raymond, également hacker de formation, qui met le feu aux poudres au début des années 90. Selon lui, les principes que véhicule le logiciel libre sont trop fortement ancrés sur des débats philosophiques, constituant un véritable frein en matière de marché. Pire encore, en fournissant une définition basée sur des libertés fondamentales, les directeurs informatiques ou autres décideurs en entreprises (DSI) restent dans le brouillard, lorsqu’il s’agit de les intégrer ou tester dans leurs parcs informatiques. Il ajoute que le terme “Free” contenu dans “Free Software”, qui peut aussi bien se traduire par gratuit que par Libre en Français, contribue également à effacer toute allusion commerciale. Ce qui selon lui, nuit considérablement à la crédibilité du logiciel libre auprès des entreprises.

Naissance d’une méthode d’ingénierie contre une philosophie

Image 3 : Open Source : découverte d'un modèle de développement“Il nous apparaissait évident a posteriori que le terme “free software” a handicapé notre mouvement pendant des années. Notamment parce que le mot “free” propose deux significations différentes : une suggérant un prix équivalent à zéro, l’autre liée à l’idée de liberté. […] Le terme logiciel libre était alors associé à l’hostilité à la protection intellectuelle, au communisme, et à d’autres concepts difficiles à faire passer à un DSI. […] En terme de marketing, notre tâche consistait alors à faire un re-branding du produit, et lui faire une réputation telle que le monde de l’entreprise l’adopterait avec empressement”, écrira Eric Raymond dans “The revenge of a hacker”, complément indissociable de sa très célèbre oeuvre “The cathedral and the bazaar” au sein de laquelle il observe un nouveau paradigme émerger : celui du développement communautaire.

Le terme Open Source était donc né avec pour idée de créer une logique d’ingénierie logicielle plus industrielle et commerciale autour du logiciel libre en mettant en avant, non plus ces quatre libertés fondamentales, mais un mode de développement reposant sur une communauté et sur la mise à disposition du code source. La notion de gratuité, très présente avec le logiciel libre, ne devait également plus apparaître dans la définition. Cette approche avait donc pour but de davantage séduire les entreprises et créer à terme un éco-système au sein duquel une politique commerciale de marché pouvait être instaurée.

Pour soutenir son idée, Eric Raymond crée alors l’Open Source Initiative (OSI), un organisme qui sera garant de l’ouverture des logiciels Open Source en validant et certifiant le caractère Open Source des licences qui encadrent toute forme de logiciel (voir page suivante). On parle notamment de la GPL (instaurée par le FSF), mais également d’une kyrielle d’autres licences, dont les termes sont plus ou moins permissifs. L’OSI détient légalement la seule définition de l’Open Source. Outre le fait de formaliser juridiquement un logiciel, le rôle d’une licence est de structurer le mode de développement complexe qu’impose l’Open Source : les communautés. Une véritable sphère de développeurs – bâtie sur un mode assez proche d’un réseau social comme on l’entend aujourd’hui – qui travaillent ensemble sur une ou un ensemble de briques qui composent un projet Open Source. Le développement communautaire constitue le moteur premier de l’Open Source (lire Open Source : mutation d’un modèle).

Impossible dès lors de parler d’Open Source sans y associer le sacro-saint problème des licences. Jugées trop nombreuses, avec des termes parfois très disparates, elles constituent la bête noire n°1 des entreprises lorsqu’il s’agit de faire entrer l’Open Source dans un système d’entreprise. C’est ce que nous allons décrypter dans la 3e partie.

Open Source : la jungle des licences

L’identité du logiciel Open Source. C’est ainsi qu’on pourrait définir ce que représente les licences dans l’éco-système de l’Open Source. Plus particulièrement, elles visent à catégoriser le mode de distribution du logiciel et son degré de liberté à en modifier le code source. Il s’agit ainsi “d’un contrat juridique qui confère à toute personne morale ou physique, en tout temps et tout lieu, les quatre possibilités suivantes sur une œuvre :

  • la possibilité d’utiliser l’œuvre, pour tous les usages ;
  • la possibilité d’étudier l’œuvre ;
  • la possibilité de redistribuer des copies de l’œuvre ;
  • la possibilité de modifier l’œuvre et de publier ces modifications.”, comme nous l’indique Wikipedia.

Au centre de ceImage 4 : Open Source : découverte d'un modèle de développement principe, on retrouve le concept du Copyleft (ou gauche d’auteur). Un principe promulgué par Richard Stallman, l’apôtre du Libre dont l’idée a été au départ de formaliser le mécanisme des libertés fondamentales exprimées ci-dessus. Le terme Copyleft est d’ailleurs une chiquenaude sémantique au mot Copyright qui, à l’inverse, impose un droit d’auteur. Le Copyleft ainsi constitue la base première du Logiciel Libre, en matière de droit de propriété intellectuelle. C’est lui qui va imposer et caractériser le côté non-permissif d’une licence.

Sur ce terrain, c’est la GPL (General Public Licence), licence écrite par Richard Stallman, pour son projet d’OS libre Gnu (“Gnu’s Not Unix”) qui constitue la référence, en matière de licence la plus copylefté. Comprendre la plus contraignante en matière de viralité : chaque modification, chaque composant ajouté doit être reversé sous la même licence initiale – la GPL donc si la licence de départ est la GPL.

Encore une fois, cette approche ne s’inscrit pas forcément dans une pure logique industrielle pour nombre d’entreprises et de développeurs, qui ont parfois des besoins de licences dont les termes demeurent plus “adoucis” face au contrainte de redistribution vers la communauté. Toutes les licences dites libres ne sont donc pas basées sur le principe jugé parfois trop rigoureux du Copyleft. Par exemple, certaines n’impliquent pas de reverser les nouveaux composants développés pour un logiciel sous la même licence. Comme la licence BSD par exemple, qui reste beaucoup plus permissive que la GPL.

Comme mentionné dans notre première partie, c’est l’OSI (Open Source Initiative) qui statue sur le caractère Open Source d’une licence et lui apporte, aux termes d’un processus de validation – qui statut sur la conformité de la licence soumise à la définition de l’Open Source de l’OSI -, le tant convoité tampon “approved by OSI”. Lui conférant officiellement un label Open Source.

Chaque éditeur ou développeur peut ainsi soumettre à l’organisme les termes de sa licence et se voir attribuer le très convoité sésame, après avoir passé une dizaine de points de contrôle. L’OSI liste aujourd’hui 65 licences Open Source qui répondent donc bien aux critères Open Source de l’OSI mais chacune avec des spécificités particulières (voir la liste par ordre alphabétique).

Licences : traité de non-prolifération

Image 5 : Open Source : découverte d'un modèle de développement

Face à l’affluence de soumission et de validation des licences Open Source, l’OSI s’est trouvé au coeur d’une polémique. La multiplication des licences Open Source rend non seulement difficile le choix d’une licence, mais détériore également l’image de l’Open Source en créant un flou artistique autour de sa définition. L’idée a donc été de créer un nouveau classement de ces licences en 2008, en mettant davantage en avant leur degré d’utilisation dans les communautés et en qualifiant un peu plus la nature même des licences. Pour opérer un tri et faciliter la tâche des entreprises et des développeurs, les licences sont désormais listées selon trois rubriques : Préféré, Approuvé et Déconseillé.

Reste toutefois que le nombre des licences n’a pas diminué. A cela s’est ajouté des degrés de compatibilité différents entre elles. Comprendre : dont les termes et les politiques de redistribution diffèrent sur certains points. C’est dire la complexité de la tâche pour les entreprises. Comment s’y retrouver dans cette jungle des licences qui, non seulement sont nombreuses, mais ont dû mal à s’insérer les unes dans les autres ?

Pour l’heure, la GPL – aujourd’hui en version 3 – est la licence la plus adoptée dans le monde de l’Open Source. Pour décrypter le problème lié à l’incompatiblité des licences tierces avec la GPL, la FSF a publié une liste dans laquelle sont cataloguées les licences compatibles ou non avec son propre modèle.

Cette problématique des licences est notamment un frein à l’adoption de l’Open Source dans les entreprises. Les responsables informatiques et les DSI peinent à s’y retrouver, perdus dans cette multiplicité et ces degrés d’incompatibilité. Pourtant, c’est aussi ce qui fait la force de l’Open Source. La diversité et l’ouverture des technologies est un grand stimulateur d’innovation, et du coup, un générateur de nouveaux modèles économiques, qui reposent notamment sur le principe d’une double-licence (GPL + propriétaire). Un point que nous aborderons dans la 4e partie de ce dossier. Après avoir exposé quelques beaux succès en matière de logiciels Open Source.

Open Source : quelques fleurons du mouvement

Indubitablement, l’Open Source gagne en popularité dans le paysage informatique actuel. Initialement cantonnés aux couches basses des systèmes d’informations, comme les serveurs d’entreprises, les serveurs Web ou les serveurs d’applications – Linux détient les plus grosses parts de marché sur le segment des OS serveurs -, voire les bases de données, les logiciels Open Source ont gravi les échelons pour toucher le segment des applications pour poste de travail. Plusieurs tendances se dégagent actuellement sur le marché de l’Open Source :

  • La forte progression des netbooks, ces ordinateurs ultra-portables à bas prix, ont poussé les distributions Linux sur le devant de la scène, avant que Windows avec XP s’empare au final du marché. Toutefois, l’OS Open Source a ouvert une brêche sur un segment et contribué à l’éclosion de projets dédiés à ces machines, comme JoliCloud, Ubuntu Remix, ou encore Mandriva mini. Comment ne pas citer également le fameux Chrome OS de Google qui change radicalement la donne en matière d’OS. Une innovation qui repose sur de l’Open Source.

  • Sur le poste de travail, l’Open Source s’en tient au niveau applicatif. De plus en plus d’utilisateurs installent les outils de Mozilla, comme le navigateur FireFox ou encore la messagerie Thunderbird, ou la suite bureautique OpenOffice.org. Mieux, ces applications gagnent du terrain en entreprises et connaissent quelques beaux succès de renommée dans certaines institutions françaises. Citons l’exemple de la Gendarmerie Nationale, l’une des premières institutions à avoir migrer vers Firefox et OpenOffice. Pourtant, côté OS desktop, les distributions Linux peinent à séduire encore le public, et les entreprises boudent clairement le principe. Même si les éditeurs d’OS Linux, comme Ubuntu, Mandriva, ou Novell (avec Suse) travaillent d’arrache-pied à développer des interfaces utilisateurs plus adaptées, à améliorer la compatibilité avec les pilotes (drivers) et plus encore et à diversifier le parc d’applications, histoire de retrouver les mêmes applications sous Linux que sous Windows. Dans la réalité, Linux est loin de détrôner Windows sur ce segment.


  • Les logiciels hébergés de type Saas (Software-as-a-service) reposent la majeure partie de leur architecture sur des briques Open Source. Le principe de ce mode hébergé gagnant de plus en plus du terrain, l’Open Source est alors entrainée dans son sillon. Même constat pour le Cloud Computing – côté infrastructure donc – dont l’ossature globale s’adosse, pour la plupart, à des socles Open Source. Ces deux modes de consommation sont aujourd’hui deux vecteurs importants dans l’adoption de l’Open Source.

Dans cet écosystème, quels sont les logiciels Open Source les plus populaires?
(Vous retrouverez un véritable catalogue en ligne d’applications sur www.framasoft.net)
Image 6 : Open Source : découverte d'un modèle de développement
Mozilla : l’alternative musclée

Qui aujourd’hui ne connait pas Firefox, le navigateur qui a fait vaciller les parts de marché d’Internet Explorer (le navigateur de Microsoft) ? Outre son libre téléchargement, qui est de rigueur sur le segment des navigateurs (comme Safari ou Chrome), Firefox illustre la pénétration de l’Open Source sur les applicatifs pour poste de travail. Outre un navigateur, Firefox est également une plate-forme d’exécution de plug-ins – développés par une très puissante communauté – qui viennent se greffer sur le navigateur pour le doter d’autres fonctionnalités. Une ouverture qui découle directement de sa nature Open Source.

Autres fleurons Open Source

Linux : le vaisseau amiral

Il symbolise à lui seul le mythe de l’Open Source. A tel point que son nom est parfois synonyme d’Open Source, tout comme le manchot qui sert d’icône à Linux. Par Linux, il faut comprendre noyau Linux, développé en 1991 par Linus Torvalds. Un noyau qui sert de socle de base à une très vaste communuaté de contributeurs qui viennent non seulement enrichir ce noyau, mais également lui ajouter tout une série de couches logicielles supplémentaires renforçant son intérêt pour les entreprises. De nombreux éditeurs ont développé autour de Linux des distributions qui comportent un certain nombre d’applications et de pilotes par défaut. Ces distributions montent progressivement en puissance. On parle de Red Hat, de Suse, de Mandriva, d’Ubuntu. Aujourd’hui, Linux est fermement installé sur le marché des serveurs et est devenu l’OS n°1 devant Windows Server. Il gagne du terrain sur le marché des OS pour téléphone mobile via des projets comme LiMo ou encore Android, l’OS initié par Google. Sur le poste de travail, sa percée reste pour l’heure assez anecdotique.

MySQL : la base de données du Web

MySQL constitue l’un des moteurs du Web. Avec Linux, Apache (voir ci-dessous) et PHP, MySQL forme le quatrième pilier de l’infrastructure – la base de données – la plus populaire du web : le fameux stack LAMP (Linux / Apache / MySQL / PHP). Elle constitue la brique base de données de nombreux sites Web et de nombreux outils de gestion de contenu (CMS – Content Management System) Open Source sur le marché, comme WordPress par exemple. MySQL repose sur un modèle de double-licence désormais coutumier sur le marché de l’Open Source : une version Community gratuite sous licence GPL et versée dans la communauté, et une version Entreprise payante avec une offre de support, une certification du code ainsi que des briques logicielles dédiées qui peuvent ne pas être reversées dans la communauté (voir page suivante). Actuellement, MySQL est au milieu d’une tourmente. Propriété de Sun depuis un an, le groupe vient de tomber dans le giron d’Oracle, pape de la base de données propriétaire, et n°1 du marché, avec presque 50% de parts de marché. Si le rachat a bien été approuvé aux Etats-Unis, la Commission européenne s’inquiète du sort du marché des bases de données en Europe, si Oracle s’accaparait MySQL. Réponse attendue en janvier 2010.

Apache HTTPImage 7 : Open Source : découverte d'un modèle de développement Server : le symbole d’une fondation

Autre vaisseau amiral de l’Open Source, le serveur Web Apache HTTP. Un projet démarré en 1996 par la puissante communauté de l’Apache Foundation, dont le but a été de développer un serveur web 100% Open Source et multi-plateforme. Aujourd’hui, il représente le serveur Web le plus populaire, notamment par sa proximité avec MySQL dans le non moins populaire stack LAMP. L’Apache Foundation, quant à elle, est un réservoir de projets 100 % Open Source, qu’elle héberge en encadrant toutes les étapes de l’évolution du logiciel, depuis son incubation jusqu’à la montée en puissance des versions. Les logiciels publiés par la fondation sont régis par la licence Open Source Apache, qui à l’inverse de la GPL, n’est pas ”copyleftée”. Elle reste toutefois compatible avec la version 3 de la GPL.

Emergence de nouveaux modèles économiques

Image 8 : Open Source : découverte d'un modèle de développementFinancement de l’innovation, développement communautaire, modèle économique reposant sur les services, contexte d’ouverture, l’Open Source de par sa nature intrinsèque revisite le modèle économique classique du logiciel. Celui propulsé en avant par l’ensemble des éditeurs dits propriétaires, dont Microsoft constitue le chef de file et qui repose principalement sur la vente de licence.

L’Open Source, quant à elle, brise ce schéma en livrant gratuitement le logiciel. Effaçant d’un revers de la main la commercialisation par licence. Un mécanisme qui soulève alors un problème évident d’ordre économique : comment peut-on gagner de l’argent avec l’Open Source ? Que doit-on vendre ? Cette équation ne doit aujourd’hui sa résolution qu’à l’invention de nouvelles méthodes de vente et de nouveaux modèles économiques qui viennent révolutionner le marché du logiciel.

En point d’orgue, la commercialisation de services associés. Le principe est simple : proposer le logiciel gratuitement, livrer l’ensemble du code source et facturer des services liés à l’intégration de ce même logiciel, des développements dédiés pour coller au processus métier et enfin une offre de support et de maintenance. L’argument marketing consiste alors à déclarer que le premier euro versé dans le logiciel part dans des services directement adaptés à son système, et non dans l’achat d’une licence.

Le modèle de double-licence

Il est le modèle de l’Open Source dit commercial. Et compte parmi ses early-adopters des grands noms du secteur, comme Red Hat, Novell avec Suse, ou encore MySQL, la célèbre base de données. Son principe : proposer deux versions du logiciel. L’une 100 % Open Source, généralement encadrée par la licence GPL dont chaque développement est systématiquement reversé dans la communauté. Cette version constitue le laboratoire de l’éditeur. Il tient à disposition le code source du logiciel. Chez Red Hat, cette version se baptise Fedora, chez Suse, elle se nomme OpenSuse et chez MySQL, on parle de Community Edition.

Un instantané de cette version est alors réalisé pour servir de socle à une version payante. Cette édition, que la plupart nomme Entreprise Edition, s’insère dans un package de services proposés alors par l’éditeur : une certification du code, des offres de mises à jour et de sécurité, une offre de support et bien sûr un service de développement dédié qui servira à façonner le logiciel au besoin métier des entreprises. Les composants ainsi développés pourront rester entre les mains de l’entreprise commanditaire, si elle décide de ne pas reverser le code dans la communauté.

Cette Entreprise Edition est généralement facturée sur une base de forfait. Et c’est là que se rémunèrent les éditeurs de l’Open Source dits commerciaux.
Image 9 : Open Source : découverte d'un modèle de développement
Développement par la communauté = financement de la R&D

Vous l’aurez ainsi compris : le moteur du développement Open Source est symbolisé par la communauté, qui par la contribution de ses membres, enrichit le logiciel de façon permanente. L’un des gros points forts généralement mis en avant du développement communautaire est la réactivité des membres. Si une faille de sécurité est détectée, les rouages bien huilés du mécanisme collaboratif se mettent en marche, accélérant dans la plupart des cas la publication des très attendues rustines.

L’intérêt premier pour un éditeur Open Source commercial repose sur le financement de sa R&D qui se retrouve alors entre les mains d’une communauté de développement experte et compétente. Et ce, à moindre frais. Comme nous l’avons vu précédemment, son rôle, outre de s’impliquer activement dans les développements, tend également vers la validation et la certification du code.

Reste alors à régler les problèmes de gestion du cycle de vie et d’évolution des feuilles de route du logiciel. Si on reconnait la puissance du développement communautaire en matière d’innovation, il est difficile de calculer au plus juste la feuille de route des logiciels et leur montée en version.

Se dégage aujourd’hui un modèle de communauté dans laquelle des groupes interviennent très activement dans les développements d’un logiciel pour structurer davantage les processus. C’est notamment le cas de Google qui a dédié nombre de ses ingénieurs à certains projets Open Source. Ils sont partiellement ou complètement rémunérés pour intervenir dans ces communautés. Rappelons-nous également la présence très influente de Sun dans la communauté de développement d’OpenOffice.

Bref, cet écosystème de l’Open Source, s’il gagne en maturité, se structure toujours plus afin de livrer des solutions commerciales et économiques valides pour les entreprises et pérennes pour les éditeurs. Effet de crise aidant, le mouvement des logiciels à code ouvert a accéléré sa progression dans les systèmes d’informations. Il devrait poursuivre sa croissance au fur et à mesure que le modèle, tant de développement communautaire qu’économique, séduira toujours un peu plus les entreprises. A condition d’une bonne dose d’éducation et d’apprentissage, toutefois.