Inconvénients des logiciels libres

Les logiciels libres souffrent de quelques inconvénients qui, s'ils ne sont pas systématiques ou généralisés, doivent être pris en compte.

Complexité du modèle économique

Il est quasiment impossible de vivre de l'édition des logiciels libres. En effet, du fait que ces logiciels peuvent être redistribués librement par quiconque, les auteurs de logiciels libres ne peuvent prétendre à une facturation du fruit de leur travail. Les revenus obtenus relèvent dans ce cas de simples contributions, qui généralement ne permettent pas de survivre (moins de 1500 € par an même pour des projets de taille moyenne et nécessitant une charge de travail de quelques programmeurs à temps plein). De fait, la plupart des gens utilisent gratuitement ces logiciels libres et seulement une proportion infime des utilisateurs fait un effort financier.

De ce fait, les modèles économiques utilisés dans le domaine du libre sont souvent plus complexes que dans le cas des logiciels propriétaires. Les éditeurs sont obligés de facturer des services ou des produits complémentaires (formation, aide, produits dérivés, personnalisation de leur produit pour un client, diffusion privilégiée des nouvelles versions, licences double pour les bibliothèques de programme diffusées sous la licence GPL et que les clients veulent utiliser dans leurs programmes propriétaires, etc.). Vivre du libre est donc nettement plus difficile que de fermer le code source du logiciel et de contraindre le client à financer le développement du produit.

Fragmentation des solutions

Il n'est pas rare dans le domaine du libre que plusieurs solutions différentes soient développées pour un même problème. Ainsi, il y a une forte concurrence entre les logiciels libres eux-mêmes.

De plus, il arrive parfois que des projets se divisent, et que deux branches du même logiciel se forment et soient développées par deux groupes de programmeurs qui ont une vision différente des orientations à prendre pour le développement de ce logiciel.

Par conséquent, la rentabilité globale du développement de ces logiciels s'en trouve affectée, puisque la solution au problème initial est développée plusieurs fois, et si l'utilisateur dispose d'un choix accru, ce choix peut être relativement difficile à prendre. En effet, l'utilisateur doit dans ce cas se baser sur des critères techniques ou politiques qui ne l'intéressent normalement pas.

Difficulté d'intégration des solutions

Les logiciels libres sont souvent développés par des groupes indépendants, qui ne communiquent pas toujours correctement les uns avec les autres. Les dépendances entre ces logiciels sont donc difficiles à maintenir, car les évolutions d'un logiciel peuvent perturber fortement les autres logiciels. Cela est particulièrement important dans le cas des bibliothèques de programmes, qui souvent peuvent évoluer d'une manière incompatible.

Le travail d'intégration des différents logiciels libres est donc considérable, et constitue un point faible face aux solutions globales dont on dispose naturellement dans un environnement monopolistique. Ce travail est généralement effectué par les différentes « distributions » Linux, et implique de manière détournée une dépendance vis à vis de l'éditeur de cette distribution.

Légèreté des documentations

Les programmeurs préfèrent généralement le développement de leur programme à l'écriture des documentations. Le fait que le code source soit libre est également souvent prétexte à ne pas le documenter.

Il en résulte que les documentations des logiciels libres sont souvent incomplètes, obsolètes ou franchement inexistantes. Elles ne sont par ailleurs pas toujours d'une qualité exceptionnelle ou lisibles par un utilisateur non programmeur, sauf dans le cas de petits documents épars et souvent redondants. Il est donc rare de trouver des documentations à la fois cohérentes, complètes, didactiques, à jour et de qualité.

Faible compatibilité avec les logiciels propriétaires

Les éditeurs de logiciels propriétaires ayant intérêt à limiter l'interopérabilité avec les logiciels libres qui les concurrencent, ils s'arrangent généralement pour rendre la compatibilité la plus difficile possible. Ils utilisent pour cela des techniques classiques, tels que l'usage de formats de fichiers binaires non documentés ou l'usage de fonctions non documentées du système d'exploitation.

De ce fait, les développeurs du libre doivent passer un temps considérable pour analyser les formats de fichiers et les protocoles réseau utilisés par les logiciels propriétaires majoritaires, faute de quoi leurs logiciels seraient isolés, et donc non utilisables par les utilisateurs. Le résultat est souvent non garanti et souvent mitigé.

Il va de soi que tout cela doit être attribué aux pratiques des éditeurs de logiciels propriétaires, mais comme ce sont eux qui ont les plus grandes parts de marché, ce sont les logiciels libres qui en pâtissent (il s'agit bien entendu de pratiques monopolistiques et d'abus de position dominante).

La situation est malheureusement en voie de dégradation, car les éditeurs de logiciels propriétaires sont parvenus, à force de lobbying auprès des institutions européennes, à promouvoir des lois restreignant le champ d'action des logiciels libres. En particulier, l'EUCD (qui doit normalement être transposée en droit français cette année sous le doux nom de DADVSI) prévoit de renforcer la protection juridique des moyens techniques de protection et d'en interdire le contournement, éventuellement même lorsque cela est réalisé dans le cadre d'une activité légale (copie privée, utilisation sur un système libre de son choix, ou rétro-analyse dans un but d'interopérabilité). Ils ont également essayé, heureusement sans succès (et non sans heurts), d'étendre le champ de la brevetabilité aux idées et aux algorithmes, afin de verrouiller les implémentations et d'interdire ainsi définitivement toute concurrence de la part des logiciels libres. Enfin, le développement des technologies de protection des droits basées sur une cryptographie forte gérée par le matériel (ex. « TCPA », « Palladium » ou « Trusted Computing ») va leur permettre de refuser les clefs de décryptage aux éditeurs de logiciels libres, et donc de ne permettre la lecture des fichiers protégés qu'aux environnements propriétaires.

Les logiciels libres sont donc exposés au risque de se retrouver isolés, avec impossibilité légale et technique d'échanger des données avec les logiciels propriétaires si le Trusting (pardon, Trusted) Computing Group parvient à ses fins. Les utilisateurs des logiciels libres et propriétaires ne pourront donc plus communiquer du tout, avec tout ce que cela implique. Chacun devra donc bientôt faire le choix de son camp...