dimanche 8 mars 2009

Logiciel Libre versus Open Source: le sens d'une différence

Quelles sont les différences entre le Logiciel Libre et l'Open Source ?
Pour l'utilisateur du logiciel qui démarre un éditeur de texte sur Debian, que l'auteur de ce programme se réclame du logiciel libre ou de l'open source, cette différence est nulle.
La différence entre ces deux catégories ne repose par sur le produit fini lui même ( par exemple la différence entre bash et ksh93 ) mais sur le contexte de production.

L'Open Source Initiative (OSI) ne donne pas de version officielle de la différence entre les deux termes, mais dans l'essai d'Eric Raymond " Revenge of the Hackers" on trouve cet apercu historique:
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.

La Free Software Foundation donne sa propre explication de la différence entre les deux termes, en insistant sur les différences de valeurs entre les deux termes, et aussi sur le fait que ces différences de valeur ne gênent en aucun cas le travail au quotidien sur des projets communs.

La principale raison pour laquelle le terme "open source" est employé, est que la dimension éthique du logiciel libre met certaines personnes mal à l'aise.
[..]
Les leaders du mouvement Open Source ont estimé qu'en faisant passer au second plan les notions d'éthique et de liberté, et en parlant uniquement des bénéfices pratiques du logiciel libre, ils pourraient "vendre" le concept de logiciel libre plus facilement, particulièrement dans le monde de l'entreprise.
(traduction personnelle )

Regardons maintenant l'autonymie des logiciels eux même ( c'est à dire comment les projets se catégorisent eux mêmes quand ils se présentent )
  • Le terme opensource domine dans les produits ayant potentiellement une finalité dans le monde de l'entreprise ( Apache, PostgreSQL, MySQL, (note for self :ils sont relous à taper sans erreur de casse ces deux-là), Python, Xen, OpenOffice.org, les frameworks Java ... )
  • Par contre free software reviendra beaucoup plus dans des projets moins liés à l'environnement serveur (KDE, Gnome, MPlayer ) ou de taille plus réduite ( Dillo, Notepad ++, Scite Text Editor ) Parfois c'est une question d'image, ainsi NetBSD se veut plus "corpo friendly" qu'OpenBSD et met en avant le terme opensource dès la page d'accueuil.
  • Enfin un certains nombres de logiciels libres, notamment les plus anciens, ne cherchent pas à se définir comme un projet opensource versus un projet free software sur leur page de présentation ( tcsh, zsh, FreeBSD, Linux ) ou mentionnent explictement les deux, évitant la distinction ( VLC, Debian )
Par ailleurs le terme de logiciel libre bénéficie dans les pays francophones d'une popularité plus grande que dans les pays anglophones, ne souffrant pas de l'ambiguité libre versus gratuit que comporte le terme free en anglais.

S'il fallait résumer ceci en deux phrases brutales, ce serait de dire que si vous écrivez un codec multimedia en faisant reverse-engeenering vous faites probablement du logiciel libre, et peer to peer exepté, si vous écrivez une application client serveur en java, vous faites certainement de l'opensource.

5 commentaires:

Tenshu a dit…
Ce commentaire a été supprimé par l'auteur.
Tenshu a dit…

Je ne suis pas vraiment d'accord avec ton raisonnement, la conclusion m'a fait bondir pour être honnête.

Pourtant l'analyse est là, oui les logiciels libres son distribués parfois voire souvent, sous la dénomination OpenSource. Question des sémantique anglo saxonne.

Pour autant un logiciel peut être STRICTEMENT open source ET non libre.
Et ça contrairement à ce que tu prétend ça fait une énorme différence pour l'utilisateur final qui est attentif à cette nuance.

Un logiciel open source à licence non-libre ne donne pas les libertés essentielles du logiciel à licence libre :
_ La liberté d'exécution peut être restreinte
_ La liberté de consulter/étudier peut aussi être restreinte.
_ La liberté de modifier n'est pas non plus garantie.
_ La liberté de redistribuer dépendra aussi de la licence dudit logiciel.

Quel est l'avantage net de l'open source en regard de ce qu'apporte une licence libre? Pratiquement rien si ce n'est de pouvoir visualiser le code source tout en restant soumis à la licence fermée qu'a choisit le créateur.

Ton article est largement inexact, je te conseille de le modifier ou de l'annoter.

jeanbaptiste-bourgoin.com a dit…

@tenshu

Vous vous trompez. La définition de l'open source selon l'OSI est identique à la définition du logiciel libre selon la FSF.

Évidemment, il est toujours possible à quelqu'un de dire que son projet est "open source" puisque ses sources sont consultables, et uniquement consultables. Mais dans ce cas, c'est une définition de l'OS non compatible avec celle qu'en donne l'OSI. Tout comme il est possible à tout un chacun de dire que son logiciel est libre car chacun peut se le procurer et l'utiliser de n'importe quelle manière et dans n'importe quel contexte, bien que son code source ne soit pas disponible. Et ça n'est pas la définition de la FSF.

Open Source selon l'OSI et Free Software selon la FSF respectent toute les deux les 4 libertés fondamentales établies que vous avez énoncés.

Michel a dit…

La conclusion est bizarre.
Quel rapport avec l'usage du java ?

A la rigueur tu parle de la définition de la section contrib de Debian mais ce n'est plus le cas pour le java depuis la sortie de Lenny le 14 février dernier qui utilise OpenJDK en standard.

Emmanuel Kasper a dit…

@michel
java est beaucoup plus utilisé dans le monde de l'entreprise que pour les projets indépendants, et dans le monde de l'entreprise le terme opensource est bien plus populaire que celui de logiciel libre
( cf contenu de l'article)

donc statistiquement un projet java aura beaucoup plus chance de finir avec l'étiquette "opensource" plutot que l'étiquette "logiciel libre"