Les logiciels libres ont réussi leur percée. Le phénomène, annoncé depuis longtemps par certains, minimisé ou redouté par dautres, a fini par se faire une place dans les systèmes dinformation et les esprits. Je ne reviendrai pas sur les succès médiatiques de la suite bureautique OpenOffice.org, récemment adoptée par la Gendarmerie Nationale, ou du navigateur Web Firefox, qui ose (enfin !) remettre en question le monopole dInternet Explorer. Inutile également de sappesantir sur la progression fulgurante des serveurs dapplication Open Source (PHP, Tomcat, JBoss, etc.) ou de vanter les mérites dApache, qui détient près de 70% de parts de marché parmi les serveurs Web.
Tout le monde aujourdhui "sait" que les logiciels libres sont moins chers, plus fiables et plus flexibles que leurs équivalents propriétaires et quils redonnent une indépendance aux équipes informatiques. Bref, lOpen Source, cest "in", et tant pis pour ceux qui nont pas pris le train, ils le paieront tôt ou tard.
Et pourtant... Nombre de sociétés, de toutes tailles, nont pas franchi le cap et persistent dans lutilisation de produits éditeurs. Il y en a même (nous en croisons tous les jours) qui choisissent encore de démarrer des projets sur des technologies propriétaires et fermées. Cest que, malgré tout, lOpen Source continue de susciter des inquiétudes et des interrogations.
Pourquoi il ne faut pas avoir peur du libre
Généralement, les raisons invoquées à lencontre de lOpen Source sont de trois ordres :
- absence de support de la part dun éditeur ;
- inquiétudes liées à la pérennité du produit ;
- incertitudes autour de la licence.
Reprenons point par point ces arguments et voyons sils sont fondés.
Le support
La question du support est essentielle lors de lacquisition dun programme informatique. Tout le monde rêve de logiciels simples à installer, à configurer, à utiliser et se mettant à jour tout seuls, mais malheureusement la réalité est toute autre : il y a toujours des bogues ou des failles de sécurité à corriger, sans parler des "killer features" apparaissant dans les versions ultérieures. Aussi, lentreprise qui dispose dun logiciel doit avoir un interlocuteur prêt à le faire évoluer.
Or, dans le cas dune solution éditeur, la réponse est simple : soit celui-ci assure lui-même le support, soit il faut passer par un partenaire ; mais dans tous les cas, on est sûr de ne pas se retrouver dans une impasse.
Lorsquon choisit de partir avec une application Open Source, deux cas de figure se présentent :
- soit le projet Open Source est soutenu par un éditeur (comme cest le cas pour les distributions Linux RedHat ou Mandriva, la base de données MySQL, le serveur dapplications JBoss et dun nombre toujours plus grand dapplications) qui assure des prestations de service et de support (cest même précisément ce qui le fait vivre), et on est alors dans la même logique que pour un produit propriétaire ;
-
soit le projet nest soutenu par aucun éditeur (cas de tous les projets de la fondation Apache notamment, mais aussi dune multitude dinitiatives isolées), et dans ce cas il faut avoir recours à un prestataire de service qui fera office de support, sauf si le service informatique interne est en mesure dassumer ce rôle. A noter que cette dernière éventualité nest pas à écarter doffice : la plupart des projets libres "vivants" se caractérisent par une communauté active dutilisateurs et de développeurs, ainsi quune documentation abondante, facilitant leur appropriation.
Dans tous les cas, la logique est différente entre un produit éditeur et un produit Open Source : si léditeur sengage généralement à corriger les anomalies bloquantes détectées (le plus souvent moyennant finances et dans des délais prédéfinis), le support Open Source nimpose que rarement des obligations de résultat, le prestataire sengageant seulement à répercuter les corrections apportées par la communauté. Ce qui ne veut pas dire que le support sera de moins bonne qualité : on constate en général que les communautés Open Source sont beaucoup plus réactives que les éditeurs...
La pérennité
Deuxième argument souvent dressé à lencontre des logiciels libres : la pérennité des produits. Cest à mon sens le moins fondé des trois : on ne compte plus les exemples déditeurs ayant abandonné une solution, soit quils aient décidé de recentrer leur activité, soit quils se soient fait racheter, ou bien encore quils aient tout simplement mis la clé sous la porte. Lexemple le plus parlant est sans conteste Netscape, qui na vu sa survie que grâce à la mise en Open Source de son navigateur, devenu depuis Firefox et rencontrant le succès que lon sait.
Alors, cela ne veut pas dire que les logiciels libres sont plus pérennes que les logiciels propriétaires, loin de là : on ne compte pas non plus les innombrables projets libres qui sont laissés à labandon. Il y a toujours une grosse part dincertitude quant à la pérennité dune solution sur deux, trois, cinq ou dix ans.
Mais il est plus facile dévaluer le risque avec un produit libre quavec un produit éditeur :
-
la pérennité dune solution éditeur dépend souvent de la survie de cet éditeur, ainsi que de contraintes économiques ou politiques qui peuvent être totalement extérieures au produit (lopinion courante qui consiste à croire quil est plus pérenne de partir sur une solution portée par un gros éditeur est infondée : les gros éditeurs abandonnent aussi des produits, ainsi Visual Source Safe de Microsoft, délaissé au profit de Team Foundation) ; au contraire, la survie dune solution Open Source est beaucoup plus liée aux qualités intrinsèques du produit ;
-
la taille et la vivacité de la communauté dutilisateurs et de contributeurs sur un projet Open Source donne une bonne indication quant à sa pérennité, chose que lon peut plus difficilement mesurer avec une solution éditeur ;
- enfin, la viabilité dune solution est fortement liée à sa solidité technique, que ce soit pour un logiciel libre ou éditeur ; or cette solidité nest appréciable que lorsquon a accès aux sources (même sil faut reconnaître que très peu dintégrateurs le font réellement, ce qui est regrettable).
La question de la pérennité se pose donc dans les mêmes termes pour une solution propriétaire et pour une solution Open Source. Mais elle est généralement plus facile à apprécier dans ce deuxième cas.
La licence
Précisons demblée quil ny a pas une licence Open Source, mais plusieurs centaines ! Les seuls points communs entre toutes ces licences sont :
-
la mise à disposition gratuite du produit [1] ;
-
la possibilité de modifier le code source.
La plus connue (et la plus répandue) est la licence GNU GPL (General Public License). Elle contient une clause obligeant lutilisateur à redistribuer aux utilisateurs toutes les modifications quil apporte au logiciel, et cest généralement ce qui fait peur aux entreprises, qui ne souhaitent pas étaler sur la place publique des informations pouvant se révéler précieuses pour leurs concurrents. Dautant plus quà partir du moment où seulement une partie dun programme utilise du code placé sous GPL, automatiquement tout le reste du programme se trouve "contaminé".
En réalité, ce qui apparaît lorsquon lit soigneusement la GPL, cest que cette contrainte nest valable quà partir du moment où lapplication est diffusée à des tiers. Or il est rare quune entreprise distribue son programme à dautres entités. Lutilisation au sein dune application web, par exemple, nest pas assimilée à de la "diffusion" [2].
Le seul cas où la GPL peut être trop contraignante, cest lorsque justement lutilisateur souhaite distribuer son programme (le vendre par exemple). Dans ce cas, il est dans lobligation de mettre à disposition les sources également.
Mais si la GPL couvre aujourdhui une majorité de logiciel libres (dont tout le système dexploitation Linux, notamment), il faut préciser que nombre de projets utilisent dautres licences (les licences Apache, Mozilla, FreeBSD, etc.) qui nont pas cette vertu "contaminante" et qui nobligent pas à rendre publiques les modifications, quel que soit lusage qui est fait du programme.
Quoi quil en soit, il est primordial de bien se renseigner sur ladéquation de la licence à ses propres besoins avant de se lancer dans les développements.
Pourquoi il ne faut pas faire le choix du libre
Je sens parmi mes lecteurs comme un soupçon détonnement : après toute cette démonstration visant à prouver quil ne fallait plus avoir peur des logiciels libres, il va maintenant nous convaincre quil ne faut pas les utiliser ? Ca sent larnaque de consultant, la manipulation nest pas loin... Rassurez-vous, le but de mon propos nest pas de vous prouver tout et son contraire : si je pense quil ne faut pas craindre les logiciels libres, cest quà mon sens ils peuvent réellement apporter un plus aux entreprises.
En réalité, ce titre volontairement provocateur doit être compris ainsi : aujourdhui, il ne faut pas " faire le choix" du libre, cest à dire décider de passer au libre parce que le libre cest bien, cest dans lair du temps et ceux qui nont pas compris ça ne sont plus dans le coup.
Non, le libre ne doit pas être vu dun point de vue idéologique, dans le contexte dune entreprise en tout cas (si ensuite vous choisissez de privilégier les logiciels libres à titre personnel parce que vous voulez promouvoir lesprit de partage et de liberté transfrontaliers, cela ne regarde que vous - personnellement je nutilise que des logiciels libres depuis des années !). Bref, aujourdhui, on ne doit pas décider de "passer au libre", mais plutôt choisir pour chaque besoin la solution la plus appropriée, quelle soit libre ou propriétaire.
Le risque idéologique
Cest quun choix trop précoce, que je qualifie donc didéologique, par opposition à un choix argumenté et pragmatique, peut se révéler catastrophique.
Prenons un exemple : dans le domaine de la gestion de contenu web, deux technologies prédominent aujourdhui : Java et PHP. Le choix de lune ou lautre de ces technos est impactant sur le système dinformation dans sa globalité : infrastructure, compétences, intégration dapplications, etc. Il intervient donc souvent en amont, devenant du coup un pré-requis pour le choix de la solution de gestion de contenu.
Or, ceux qui connaissent un peu ce secteur savent que si, dans le monde PHP, il existe de très bon outils Open Source (SPIP, Typo3, eZ publish, etc.), en revanche, en Java, les meilleurs produits sont propriétaires (Noheto, Vignette, Jahia, etc.). Il existe bien des projets libres (Lenya, eXo Platform, Graffito, etc.), mais ceux-ci nont pas encore atteint le niveau de leurs concurrents éditeurs. Décider par avance de partir sur une solution Open Source en Java risque dengager des coûts de développement bien plus importants que les coûts de licence des outils propriétaires.
Bien sûr, il arrive que ce choix de "passer à lOpen Source" émane dune directive groupe ou ministérielle. Mais les directives bien écrites sont celles qui préconisent le choix de solutions Open Source, sans pour autant fermer la porte aux éditeurs. Et, dans le cahier des charges, il est préférable décrire que les solutions à base de logiciels libres seront privilégiées plutôt que dimposer ce choix à lavance. Seule une analyse précise des besoins et des réponses apportées par les solutions, tant sur le plan fonctionnel, technique, quéconomique, pourra en définitive permettre de trancher.
Comparer libre et propriétaire
Tout cela est bien joli, mais beaucoup doutent de la simple possibilité de comparer un produit libre avec un produit éditeur. Autant, sur le plan fonctionnel et technique, cela ne pose aucun problème, autant, sur les aspects économiques, les choses ne sont effectivement pas si simples.
Cest que généralement, les grilles de critères élaborées par les consultants sont adaptées aux solutions éditeurs. Comment évaluer le vendeur dun logiciel, quand celui-ci nexiste pas ? Ou la réactivité du support lorsque celui-ci est (indirectement) assuré par une communauté ?
Par ailleurs, ces fameuses grilles de critères font souvent la part belle à tout un tas de "nice-to-have features", autrement dit des fonctionnalités un peu « gadget » qui ne sont absolument pas requises, mais qui pourraient éventuellement apporter un petit plus. Elles ne devraient intervenir dans le choix que dans un second temps, une fois que les fonctionnalités vraiment nécessaires ont été évaluées.
Le problème, avec les solutions éditeurs, cest quune part importante du budget est consacrée à ces touches plus marketing que vraiment utiles, et les décideurs se laissent parfois séduire par des équipes commerciales habiles. Alors que cest un aspect totalement absent des logiciels libres, pour lesquels on peut être sûr que chaque fonctionnalité implémentée répond a un besoin réel. Mais lorsquon regarde de haut la liste des fonctionnalités, cest sûr, la solution éditeur semble plus attractive !
Bien souvent, une telle analyse fait ressortir la solution Open Source comme étant a priori moins coûteuse que la solution propriétaire, mais plus risquée. Lévolution va dans le sens dune diminution des coûts des solutions propriétaires (ce, notamment grâce à la concurrence des logiciels libres), et dune plus grande maîtrise des risques associés aux solutions Open Source (grâce à la multiplication des retours dexpérience).
Attention toutefois à ne pas tomber dans le piège qui consiste à croire que le libre est forcément moins cher que le propriétaire. Lanalyse économique ne se limite pas aux seuls coûts de licence : il faut prendre en compte les coûts de développement, dintégration, de support, mais aussi la pérennité, les évolutions, etc. Une telle analyse est généralement complexe à mener.
Doù la nécessité de se faire accompagner par des équipes connaissant parfaitement les deux mondes, capables dévaluer la réactivité dune communauté, de faire la part des choses entre les fonctionnalités vraiment utiles et les autres, etc.
Jai eu loccasion de travailler récemment avec une équipe indienne, sur une mission de conseil devant aboutir au choix dune solution. Les produits étudiés étaient tous propriétaires, sauf un logiciel libre (qui justifiait en fait ma présence au sein de léquipe). La partie la plus difficile a été de convaincre les Indiens que lon pouvait comparer des produits propriétaires avec des produits Open Source. Il a fallu se battre pour adapter la grille de critères, en la faisant davantage coller aux besoins réels du client (pour lanecdote, ce dernier a finalement décidé de partir sur la solution libre, après un prototypage concluant).
LOpen Source rentre dans le rang
Finalement, tout ce discours tend à montrer quil ne faut plus pointer du doigt les logiciels libres en les présentant comme un phénomène en marge du reste du monde : ils ont atteint suffisamment de maturité pour "rentrer dans le rang".
Dailleurs, pour les logiciels libres soutenus par des éditeurs, la distinction entre produit Open Source ou éditeur est subtile ; et de plus en plus déditeurs vont dans le sens de louverture dune partie de leurs sources, généralement les couches les plus basses (framework, formats déchange, etc.), répondant ainsi à une demande croissante des utilisateurs.
Lorsquun projet sannonce, il ne faut pas commencer par se poser des questions existentielles sur le choix dune solution Open Source ou pas. Il faut simplement inclure dans létude préalable les solutions qui paraissent les plus intéressantes, quelles soient libres ou propriétaires. Cest lanalyse économique qui déterminera si « faire le choix du libre » est pertinent ou pas.
[1] En théorie, rien ninterdit de vendre un logiciel libre, mais étant donné que nimporte qui a le droit de le mettre à disposition gratuitement, un modèle économique basé sur la vente de logiciels libres nest pas viable. Les sociétés spécialisées dans le libre vendent généralement des services autour de logiciels libres.
[2] Voir à ce sujet la FAQ de la licence GPL.
|