Question d’Éthique et tics de programmeur

Les libristes ont parfois un discours peu accessible lorsqu’ils abordent certaines notions, en dehors du code, quand il s’agit de licences.

Ces notions sont fondamentales pour comprendre ce que signifie le libre mais restent souvent obscures au profane, ce qui mène parfois à des incompréhensions lorsqu’un libriste échange avec un tiers, alors que le sujet abordé n’est pas le code.

Voici quelques points que j’ai parfois du mal à expliquer quand je parle de licences libres :

  • Le logiciel libre (free software) et le principe du copyleft reconnaissent le droit d’auteur et s’appuient dessus pour protéger autant l’utilisateur dans l’exercice de ses libertés, que l’auteur en tant qu’auteur et créateur d’un logiciel.
  • L’utilisateur du logiciel a alors le droit :
    • d’installer et d’utiliser le logiciel
    • de disposer du code source
    • de modifier le logiciel
    • de diffuser la version originale ou modifiée du logiciel.
  • En contrepartie, l’utilisateur qui veut diffuser le logiciel doit :
    • Diffuser la licence et les mentions du logiciel d’origine
    • Dans le cas de la GPL ou des licences dites virales, ajouter une mention de ses modifications avant de les diffuser sous les termes de la licence d’origine ou avec une licence compatible.

Conséquences immédiates

Le mode de diffusion et l’esprit de la licence encouragent la collaboration et le partage entre les différents contributeurs. Le succès d’un projet de logiciel libre dépend énormément de l’activité de la communauté qui se crée autour du projet et de la qualité des échanges entre les différents acteurs au sein de cette communauté.

Un programmeur n’existe en tant que programmeur aux yeux de la communauté que lorsqu’il contribue au code ou à sa documentation.

Le logiciel libre a crée des communautés très actives autour de grands projets. Le fait qu’un ou plusieurs acteurs dans une communauté soient rémunérés pour leurs contributions n’empêchent pas les contributions bénévoles. Le mot d’ordre qui prévaut au sein de ces communautés est le partage des connaissances, et la collaboration y est une norme.

Il est nécessaire pour l’observateur de comprendre qu’une communauté qui développe un logiciel libre est totalement distincte des éventuelles structures ou organisations qui la portent ou qui ont motivées sa création.

Canonical, par exemple, contribue au noyau Linux par son travail sur le système Ubuntu. La communauté des développeurs du noyau ne s’arrête pas pour autant à Canonical, toute autant que la communauté Ubuntu n’est pas assimilable à la société Canonical, et ce même si beaucoup des acteurs de la communauté Ubuntu sont des employés de la société Canonical, ce sont deux entités distinctes avec des identités propres.

De même, il est courant d’assimiler une personne membre d’une certaine communauté à cette communauté toute entière. C’est une erreur. C’est comme dire qu’un humain est fait d’une paume et de cinq doigts alors qu’on ne regarde que sa main droite. Chaque membre d’une communauté est avant tout un individu qui partage certaines valeurs avec la ou les communautés auxquelles il appartient, mais desquelles il est complètement distinct.

Conséquences secondaires

Dès lors qu’une licence libre a été choisie pour le développement d’un logiciel, le ou les auteurs s’engagent à mettre leur code source à disposition, sous les termes de la dite licence, ce qui implique que l’utilisateur s’engage à respecter les termes de la licence s’il veut utiliser le logiciel.

De fait, il est impensable par exemple, d’anonymiser le code source d’un logiciel libre pour masquer son origine. Un développeur libre hurlera probablement au scandale si on lui fait une telle demande ou si on lui suggère une telle action, qu’il s’agisse de son propre code ou du code d’un autre développeur/organisation. C’est une question d’éthique. Bien attribuer le code reste une exigence essentielle dans tout le mouvement du logiciel libre.

On peut ne pas être d’accord. Ça équivaut à demander à l’auteur du logiciel de mettre son code dans le domaine public. Et encore, en France la condition d’attribution restera valable.

Dérives mercantiles

Certains auteurs/éditeurs pratiquent le dual-licensing, ou freemium : une licence libre pour une version disponible gratuitement, et une licence non libre et pas forcément open-source pour une version premium. Ils ont le droit tant qu’ils sont les auteurs du code original. Je trouve que ce modèle va à l’encontre des principes du logiciel libre, même s’il est pratiqué par de grands noms de l’industrie, pour protéger leurs marché disent-ils.

Cette protection prive souvent de certains droits les utilisateurs qui choisissent de payer l’éditeur pour avoir un support. Le plus souvent on n’a pas plus accès aux sources de la version payante lorsqu’on paie.

À l’opposé, le modèle dit Free-Free n’apporte pas de modification de licence à une version du logiciel qui serait supportée. L’utilisateur qui paie bénéficie de la même version que l’utilisateur qui ne paie pas, mais du fait de sa relation privilégiée avec l’éditeur, il voit ses demandes sur le logiciel (évolutions/corrections) traitées en priorité.


>>> Source sur : http://politiquedunetz.sploing.fr/2013/07/question-dethique-et-tics-de-programmeur/

Je viens de recevoir le mail d’un lecteur qui m’a proposé de mettre en ligne ce texte. Comme j’ai trouvé le texte clair et qu’il peut renseigner d’autres lecteurs, le voici publié.