Dans un précédent article, j’avais abordé les types de licences logiciels : Logiciel open source, freeware, logiciel libre, shareware, propriétaire : les différences
L’article abordait les logiciels libres et les logiciels open sources.
Souvent confondus car le but recherché est essentiellement identique, il existe tout de même une philosophie différente à connaître.
Dans ce guide, je vous explique les différences à connaître entre les logiciels open source et les logiciels libres.
Table des matières
Un peu d’histoire et de contexte
Dans les années 1950, presque tous les logiciels étaient produits par des universitaires et des chercheurs. Ils partageaient les logiciels et le code source sans restriction afin que les utilisateurs puissent corriger leurs propres bogues. Il s’agissait en grande partie de logiciels du domaine public, ce qui, au sens du droit d’auteur, est la forme la plus libre de la gratuité.
C’était en partie une question de culture. Une partie est due à la nature du logiciel. Contrairement aux biens matériels, les logiciels numériques peuvent être copiés à l’infini, gratuitement et avec un minimum d’effort. Le matériel informatique pouvait être vendu, certes, mais le code ?
Les choses ont commencé à changer dans les années 1970.
A mesure que les logiciels devenaient plus complexes et plus coûteux à produire, les éditeurs de logiciels ont cherché des moyens de mettre un terme au partage débridé du code source afin de protéger leurs sources de revenus et d’empêcher leurs concurrents d’accéder à leur mise en œuvre.
Ils ont commencé à imposer des restrictions légales à leurs produits, notamment des droits d’auteur et des contrats de location, et ont également commencé à distribuer leurs produits sous des licences propriétaires.
IBM a commencé à facturer séparément les logiciels et a cessé de fournir le code source.
À la fin des années 1970, la plupart des éditeurs de logiciels ont cessé de livrer des logiciels avec le code source.
Cette situation a conduit de nombreux utilisateurs de longue date à exprimer leur mécontentement, et leur philosophie a fini par constituer le fondement du mouvement du logiciel libre.
Cette situation a donné lieu à un procès antitrust qui a duré de 1969 à 1982.
En 1983, Apple a gagné un procès devant la Cour suprême, qui a décidé que les logiciels binaires pouvaient faire l’objet d’un droit d’auteur. Microsoft a lancé Windows quelques années plus tard.
C’est dans ce climat que s’est formé le mouvement en faveur des logiciels “libres”.
Le mouvement des logiciels libres
À partir des années 1970, Unix a été le système d’exploitation dominant. En 1983, Richard Stallman a annoncé un projet visant à créer un système d’exploitation compatible avec Unix qui ne soit pas propriétaire, le projet GNU. Deux ans plus tard, il a fondé la Free Software Foundation avec pour mission de défendre les logiciels libres et d’éduquer les gens à ce sujet.
Stallman n’a pas inventé l’expression “logiciel libre”, qui fait largement référence aux logiciels du domaine public. Mais il a précisé ce que signifiait un logiciel libre.
La Free Software Foundation définit le logiciel libre comme un logiciel que les utilisateurs sont libres d’exécuter, de copier, de distribuer, d’étudier, de modifier et d’améliorer. Le terme “libre” fait référence à ces libertés, et non au prix. Il se trouve que la plupart des logiciels libres ne coûtent pas d’argent, principalement parce que les entreprises qui cherchent à vendre des logiciels ont tendance à restreindre la liberté des utilisateurs de copier, de distribuer ou d’améliorer ce qu’ils achètent.
La Free Software Foundation énumère quatre libertés qu’elle considère comme essentielles :
- Liberté 0 — La liberté d’exécuter le programme comme vous le souhaitez, dans n’importe quel but
- Liberté 1 — La liberté d’étudier le fonctionnement du programme et de le modifier pour qu’il fasse vos calculs comme vous le souhaitez. L’accès au code source est une condition préalable
- Liberté 2 — La liberté de redistribuer des copies afin d’aider son voisin
- Liberté 3 — La liberté de distribuer des copies de vos versions modifiées à d’autres personnes. Ce faisant, vous pouvez donner à l’ensemble de la communauté une chance de bénéficier de vos modifications. L’accès au code source est une condition préalable
En d’autre terme, un logiciel libre est un logiciel qui respecte la liberté et la communauté des utilisateurs. En gros, cela signifie que les utilisateurs ont la liberté d’exécuter, de copier, de distribuer, d’étudier, de modifier et d’améliorer le logiciel.
Les caractéristiques d’un logiciel open source
Un logiciel libre est un logiciel que vous pouvez modifier selon vos besoins et partager avec d’autres sans avoir à respecter les conditions de licence. Lorsque nous parlons d’Open Source, le code source du logiciel est disponible publiquement avec des licences Open Source comme la GNU (GPL) qui vous permet de modifier le code source et de le distribuer. Lisez ces licences et vous comprendrez qu’elles ont été créées pour nous aider.
L’Open Source Initiative (OSI) a été fondée par Raymond et Bruce Perens pour encourager à la fois l’utilisation du nouveau terme et la diffusion des principes de l’Open Source. L’OSI a également élaboré la définition de l’Open Source, une liste de dix principes auxquels la licence d’un logiciel doit adhérer pour que celui-ci soit considéré comme un logiciel libre :
- Redistribution gratuite – La licence ne doit pas empêcher une partie de vendre ou de donner le logiciel en tant que composant d’une distribution logicielle plus large contenant des programmes provenant de sources multiples
- Code source – Le programme doit inclure le code source et doit permettre la distribution sous forme de code source et sous forme compilée
- Œuvres dérivées – La licence doit autoriser les modifications et les œuvres dérivées, et doit permettre leur distribution dans les mêmes conditions que la licence du logiciel original
- Intégrité du code source de l’auteur – La licence peut restreindre la distribution du code source sous une forme modifiée uniquement si elle autorise la distribution de “fichiers patch” avec le code source dans le but de modifier le programme au moment de la compilation
- Pas de discrimination à l’égard de personnes ou de groupes – La licence ne doit pas être discriminatoire à l’égard d’une personne ou d’un groupe de personnes
- Pas de discrimination à l’égard de domaines d’activité – La licence ne doit pas empêcher quiconque d’utiliser le programme dans un domaine d’activité spécifique
- Distribution de la licence – Les droits attachés au programme doivent s’appliquer à tous ceux à qui le programme est redistribué sans qu’il soit nécessaire que ces parties signent une licence supplémentaire
- La licence ne doit pas être spécifique à un produit – Les droits attachés au programme ne doivent pas dépendre du fait que le programme fasse partie d’une distribution particulière de logiciels
- La licence ne doit pas restreindre d’autres logiciels – La licence ne doit pas imposer de restrictions à d’autres logiciels distribués avec le logiciel sous licence
- La licence doit être neutre sur le plan technologique – Aucune disposition de la licence ne doit être fondée sur une technologie ou un style d’interface particulier
Les différences essentielles entre un logiciel libre et open source
Les mouvements du logiciel libre et de l’open source sont d’accord sur la plupart des valeurs fondamentales, mais ils ont des définitions différentes de la liberté.
La Free Software Foundation adopte le copyleft pour protéger les quatre libertés énumérées ci-dessus. Ce système empêche légalement les personnes de redistribuer des logiciels libres en y ajoutant des restrictions. L’organisation a inscrit ce principe dans la licence publique générale GNU. Toute personne qui utilise du code GPL doit également publier ses propres créations sous GPL.
La plupart des programmes de base qui permettent à Linux et à d’autres systèmes d’exploitation libres de fonctionner ont été créés dans le cadre du projet GNU. Nombre de ces applications sont placées sous licence GPL.
Les licences de logiciels libres sont également des licences open source, mais toutes les licences open source n’obligent pas les développeurs à partager leur code. Certaines autorisent les développeurs à utiliser le code open source pour créer des applications fermées, comme la licence MIT. Ces licences sans gauche d’auteur sont connues sous le nom de licences permissives.
Alors qu’un défenseur des logiciels libres peut considérer que l’utilisation d’un logiciel libre pour créer un logiciel non libre restreint les libertés de l’utilisateur, un partisan de l’open source peut être plus enclin à considérer qu’une licence permissive est vraiment libre, c’est-à-dire que les gens sont libres de faire ce qu’ils veulent avec le code, même si cela signifie créer une application propriétaire.
Certaines personnes particulièrement éminentes soutiennent que certaines licences de logiciels libres, telles que la GPL v3, comportent tellement de conditions qu’elles limitent considérablement la liberté du développeur.
S.No. | Philosophie des logiciels libres | Philosophie de l’open source |
---|---|---|
1. | Il a été inventé par la Free Software Foundation dans les années 1980. | En réponse aux restrictions imposées par les logiciels libres, l’expression “open source” a été inventée à la fin des années 1990. |
2. | Les logiciels occupent une place importante dans la vie des gens. | Un logiciel n’est qu’un logiciel. Il n’y a pas d’éthique qui lui soit directement associée. |
3. | La liberté des logiciels se traduit par la liberté sociale. | L’éthique doit être associée aux personnes et non aux logiciels. |
4. | La liberté est une valeur plus importante que n’importe quel avantage économique. | La liberté n’est pas un concept absolu. La liberté doit être permise et non imposée. |
5. | Tous les logiciels libres sont des logiciels à source ouverte. | Tout logiciel à source ouverte n’est pas un logiciel libre. |
6. | Ce problème n’existe pas dans les logiciels libres. | Il existe de nombreuses licences différentes pour les logiciels libres, et certaines d’entre elles sont très restrictives, ce qui fait que les logiciels libres ne sont pas gratuits. |
7. | Aucune restriction n’est imposée aux logiciels libres. | Les logiciels libres imposent parfois certaines contraintes aux utilisateurs. |
8. | Exemples : Le Free Software Directory (annuaire des logiciels libres) tient à jour une vaste base de données de logiciels libres. Parmi les exemples les plus connus figurent le noyau Linux, les systèmes d’exploitation BSD et Linux, la collection de compilateurs GNU et la bibliothèque C, la base de données relationnelle MySQL, le serveur web Apache et l’agent de transport de courrier Sendmail. | Exemples : Le serveur HTTP Apache, la plateforme de commerce électronique Open Source Commerce, les navigateurs internet Mozilla Firefox et Chromium (le projet dans lequel s’effectue la majeure partie du développement du logiciel gratuit Google Chrome), ainsi que la suite bureautique complète LibreOffice sont de parfaits exemples de produits à code source ouvert. |