J'ai passé un certain temps à lire les licences logicielles communes aux logiciels copyleft et permissive. Existe-t-il une licence permettant au créateur d'une application ou d'un algorithme de spécifier de manière générale qui peut utiliser / distribuer le produit en fonction de ses préjugés personnels?
Je comprends que les gens utilisent des doubles licences pour forcer les entités commerciales à payer pour les licences permissives ou à être obligés de distribuer du code source pour leurs projets, mais je pensais à quelque chose de plus similaire à, par exemple, "Ce code peut être utilisé librement, modifié et distribué par toute entité non impliquée dans Industry x [que j’ai jugé indigne de l’utilisation de mon logiciel libre] ".
Je suis incapable de trouver de telles licences ou modèles de licence, et j'aurais pensé qu'au moins certains programmeurs s'inquiéteraient des conséquences éthiques de leurs produits. Est-il possible de créer un algorithme d'identification d'IA et de s'assurer qu'il ne guiderait pas un drone armé ou un modèle de floe de glace arctique et qu'il ne serait pas utilisé pour des forages pétroliers en mer, tout en utilisant une licence de type permissif?
Réponses:
Cette question se pose assez régulièrement dans la communauté du logiciel libre et cela se comprend. Les personnes qui écrivent des logiciels libres (souvent pendant leurs temps libres) et les donnent au public le font généralement parce qu'elles veulent faire la différence pour le meilleur et non pour le pire. Il est donc naturel de penser à ce que votre métier ne soit pas utilisé de la manière que vous estimez contraire à l'éthique.
La Free Software Foundation s'oppose clairement aux tentatives d'utilisation de la licence logicielle pour limiter les possibilités d'utilisation du logiciel par les utilisateurs. Richard Stallman a écrit un article intitulé "Pourquoi les programmes ne doivent pas limiter la liberté de les exécuter", où il explique pourquoi il est convaincu que l'utilisation de licences logicielles pour restreindre l'utilisation d'un logiciel à des applications éthiques est vouée à l'échec et ne ferait que nuire à l'interopérabilité et à la limitation l'utilité pour les utilisateurs légitimes. Je trouve son article très convaincant et recommande bien sûr que vous lisiez l'original, mais je paraphrase (avec mes commentaires) ce que je pense sont ses principaux arguments ici.
Interdire que le logiciel soit utilisé pour des activités illégales est au mieux inutile. Ces activités sont toujours illégales, peu importe ce que dit la licence. Une licence ne peut octroyer aux utilisateurs des droits logiciels que ceux du détenteur des droits d'auteur. Ce n'est pas écrit explicitement dans son article, mais je conclus et suis d'accord pour dire qu'il serait plus logique de faire campagne politiquement pour que des activités immorales deviennent illégales.
Il est peu probable que le refus d'utiliser le logiciel utilisé par les États pour des activités immorales (RMS cite la torture) ne sera probablement pas efficace, car la plupart des États disposent d'une législation spéciale leur permettant de faire à peu près tout ce qui leur plaît tant que cela sert leurs intérêts de la sécurité nationale. Bien que j'estime que cela est quelque peu exagéré, il est certainement vrai que de telles exemptions légales à des fins militaires existent dans de nombreux États ou pourraient être adoptées si les pouvoirs législatifs les jugeaient souhaitables. Ce qui est probablement plus pertinent, c’est que vous auriez du mal à prouver que votre travail est utilisé sans accès à des informations classifiées et que la loi sur le droit d’auteur est étirée par de nombreux acteurs pour justifier des choses scandaleuses, je ' Je ne suis pas au courant que «avoir accès à des informations classifiées pour pouvoir poursuivre l’État» est un droit que le droit d’auteur vous accorde dans tous les pays du monde. Vous ne réussirez certainement pas à poursuivre un État étranger autocratique qui pourrait utiliser votre logiciel pour les choses les plus horribles.
Il n'est pas clair si de telles restrictions pourraient même être appliquées via le droit d'auteur et si elles le seraient, ce serait bénéfique. Je ne peux parler que d’Allemagne, mais je suis assez confiant que de telles conditions de licence seraient nulles dans les procédures judiciaires allemandes. Je pense que c'est une bonne chose. La loi sur le droit d'auteur est déjà trop puissante dans ce que les autres peuvent vous imposer. La dernière chose dont nous avons besoin, c'est encore plus de restrictions.
Si les licences de logiciel limitaient l'utilisation du logiciel à des «objectifs éthiques», il en résulterait un désordre épouvantable et le logiciel ne serait pas compatible. Bien que cela puisse certainement arriver, je ne vois pas pourquoi il ne pourrait pas y avoir une «licence publique éthique» standard de facto publiée par une organisation crédible et utilisée par de nombreux projets, comme c'est le cas avec la GPL aujourd'hui. Ce que je vois, c’est que pour qu’une telle licence générale soit largement acceptée et utilisée, il faudrait très probablement qu’elle se résume à définir comme contraire à l’éthique ce qui a déjà été convenu comme contraire à l’éthique et donc interdit par la législation publique dans les démocraties. cela ne fournirait pas grand chose. Plus important encore, étant donné qu’aucune licence de ce type n’existe aujourd’hui, il vous faudrait rouler la vôtre, ce qui est toujours une mauvaise idée.
la source
Il existe des projets de logiciels qui utilisent une licence comme celle-ci. Cependant, celles-ci ne seraient pas considérées comme des licences libres au sens de la définition OSI.
Plus important encore, le caractère exécutoire de ces licences a été fortement mis en doute chaque fois que je les ai vues mentionnées, et elles n'ont jamais, à ma connaissance, été examinées par un tribunal. L'utilisation d'une telle licence n'a probablement pas plus qu'une valeur symbolique.
Une partie du problème ici est que ces termes sont incroyablement vagues, comme le souligne Ixrec dans son commentaire. Supposons que vous développiez un algorithme qui guide les voitures autonomes. Éthique? Probablement. Ensuite, cet algorithme est utilisé pour construire des camions qui conduisent seuls. Toujours éthique. Et maintenant, ces camions sont utilisés pour réapprovisionner les camps militaires ou transporter de la drogue; direz-vous alors que cela n'est pas autorisé car votre code est utilisé ici? Peut-être sont-ils même utilisés dans le trafic d'êtres humains, ce qui est certainement contraire à l'éthique, mais comment contrôleriez-vous cela? Exiger des fabricants de camions qu'ils mettent également une licence sur leurs camions?
Enfin, votre armée ou votre compagnie pétrolière moyenne a assez d’argent pour prendre votre idée et la réimplémenter. Si vous ne voulez pas utiliser votre algorithme, vous n’avez de toute façon pas de chance. Et puisque le code militaire (tel un logiciel de guidage de fusée ou de drone) est généralement classifié de toute façon, comment sauriez-vous que votre code a été utilisé?
la source
Sur le marché actuel, il existe déjà des licences qui contiennent des stipulations sur l'utilisation du logiciel.
Il existe probablement un certain nombre d'autres licences comportant des clauses tout aussi étranges. Ainsi, une licence qui discrimine pour des raisons éthiques ne serait pas la première fois qu’une licence a une stipulation bizarre.
la source
Vous pouvez rédiger n'importe quelle licence et poursuivre toute personne qui utilise votre code en violation des termes de la licence pour violation du droit d'auteur.
Vos termes "à ne pas utiliser par l'industrie X" rendent la licence incompatible avec la licence GPL, par exemple. Je ne peux pas inclure votre logiciel dans le code GPL que je souhaite distribuer (ou pouvant être distribué accidentellement, ce qui se produit). Je ne pouvais pas inclure votre code dans le code source fermé de mon entreprise, car le service juridique me tuerait (cela signifie que si quelqu'un nous offrait des millions pour notre code source, nous ne pourrions peut-être pas le vendre à cause de vos restrictions). Au minimum, notre service juridique dirait "cela nous coûtera 5 000 $ pour vérifier la licence. Combien cela vous coûte-t-il d'écrire le code vous-même?"
la source
Si l'éthique de l'industrie X vous préoccupe, plutôt que de créer une licence discriminante à l'égard de l'industrie X, vous pouvez l'aborder différemment. vous pouvez utiliser la double licence et créer une version gratuite et commerciale. Faites ensuite des dons à une organisation anti-industrie X - sous la forme d'une version commerciale complète ou d'une réduction des bénéfices de la version commerciale.
C’est tout à fait légal et cela correspond à un idéal auquel vous croyez. C’est aussi bien meilleur «marketing de bonne volonté». Même les personnes de l'industrie X du secteur professionnel vous respecteront, car au moins, vous soutenez quelque chose en quoi vous croyez. Il est toujours préférable d'être vu pour soutenir un idéal plutôt que de s'attaquer à son idéal.
la source
Je travaille pour une entreprise chargée de développer des logiciels pour des organismes de bienfaisance progressistes. Nous avons créé des bibliothèques que nous voulions ouvrir à la source et, à l'instar de l'OP, nous n'étions pas satisfaits des licences que nous avons pu trouver.
Nous avons créé la licence Just World afin que, à tout le moins, notre code ne soit pas utilisé par ceux qui travaillent contre les objectifs des organismes de bienfaisance que nous soutenons. (Voici un article expliquant nos raisons derrière cela)
Ci-dessous, je traiterai de certaines des objections aux licences éthiques soulevées dans les commentaires et les réponses. En faisant cela, je vais faire une comparaison avec la GPL car c’est aussi un exemple de licence tirée d’un point de vue idéologique fort et qui est donc instructif sur le fait qu’une licence est plus qu’un simple document juridique. nous en sommes venus à accepter.
Pourquoi (non) éthique?
Un grand nombre des objections que j'ai lues ont trait à l'applicabilité d'une telle licence, mais je dirais que l'objectif d'une licence en matière d'éthique n'est pas de la faire valoir devant un tribunal. En fait, la plupart des documents juridiques que vous ne voulez vraiment pas tester devant un tribunal sont coûteux et pénibles. Oui, vous devriez les expliquer clairement et sans ambiguïté, mais la plupart des gens ne rédigent pas de documents légaux avec pour objectif premier de poursuivre l'autre partie en justice.
Comme les gens l'ont fait remarquer (à juste titre), si une grande entreprise souhaite utiliser votre logiciel en dépit de restrictions, elle aura probablement les ressources nécessaires pour vous enfouir dans des formalités légales.
Mais cela n’est pas différent de la GPL, et la GPL n’a pas non plus été écrite pour que les développeurs de logiciels libres et open source puissent poursuivre les grandes entreprises devant les tribunaux pour avoir fait un mauvais usage du code source ouvert. Oui, il est juridiquement spécifique et possible de faire respecter, mais ce n'était pas le but premier des auteurs. Ils ont créé la GPL pour diffuser une idée - l'idée que le logiciel et son source devraient être librement partagés.
De même, lors de la création d'une licence éthique, nous voulons diffuser l'idée que notre logiciel doit être utilisé pour améliorer le monde et que nous, les développeurs, pouvons assumer la responsabilité de la manière dont notre logiciel est utilisé.
Force exécutoire
Cela étant dit, je dirais également qu'une licence en matière d'éthique peut être appliquée. Même avec les conditions de licence extrêmement vagues de JSLint, IBM était suffisamment préoccupé par le respect des règles pour pouvoir demander à l'auteur l'autorisation expresse d' utiliser JSLint à des fins maléfiques .
Oui, les gros tabacs pourraient utiliser notre code et rester silencieux à ce sujet, mais la peur d’être découvert ou dénoncé et la possibilité de faire respecter les droits sont suffisants pour que la plupart des entreprises, même celles qui agissent mal, décident que cela ne vaut pas le risque encouru. va chercher un autre code.
Limiter l'utilisation pour des choses illégales est inutile
D'accord.
En rédigeant une licence éthique, nous avons décidé de ne pas exclure les actes illégaux pour cette raison, mais aussi parce que certains pays ont de très mauvaises lois qui restreignent de manière terrible les libertés des personnes. Si les militants qui travaillent contre ces choses veulent utiliser notre logiciel, ils en ont assez pour s'inquiéter sans se soucier du fait que nous pourrions nous présenter et ajouter une cessation et un désistement à leurs problèmes.
Si c'est mauvais, il y a des lois pour l'arrêter
<insérer une vidéo obligatoire du législateur demandant à Mark Zuckerberg d'envoyer un email via WhatsApp>
Malheureusement, nos législateurs sont parmi les plus lents à réagir lorsqu'il s'agit de réagir à l'évolution des normes sociales, sans parler de la technologie. Pour commencer, nous sommes en 2018 et il reste encore des produits fabriqués par des esclaves .
L'éthique ne peut être définie
Le monde n’est pas aussi gris qu’on le prétend souvent.
Notre licence empêcherait les gens d’utiliser notre logiciel pour (entre autres choses) des actions connues pour ruiner l’état de la planète pour les générations futures, exploiter le travail des esclaves, promouvoir le racisme ou pirater la psychologie comportementale pour obliger les gens à gaspiller leur vie en cliquant sur les annonces.
Ce ne sont pas exactement le problème de chariot .
L'éthique est subjective
Oui, mais ce n'est pas une mauvaise chose.
Certaines de nos décisions les plus essentielles sont subjectives. Si cela vous intéresse, il y a des histoires très intéressantes de personnes dont les centres émotionnels ont été endommagés lors d'un accident et qui ne sont plus en mesure de fonctionner même si leur raison et leur objectivité sont complètement intactes.
Moins philosophiquement. La notion qu'il est faux de prendre un logiciel FOSS et de l'améliorer sans publier les modifications est également une position subjective. Il s'agit d'un point de vue subjectif qui constitue un élément clé de la GPL et tous les acteurs du monde du développement logiciel ne peuvent être d'accord pour dire que c'est une bonne chose, mais cette divergence d'opinion n'a pas encore détruit la communauté FOSS ;-)
Ce serait gênant
Eh bien, c'est un peu le point. Si une entreprise élabore un logiciel pour des actes éthiques douteux, une licence éthique est censée être un inconvénient.
La même chose pourrait être dite de certaines licences FOSS. Certaines entreprises utilisent aujourd'hui des outils tels que le vérificateur de licences car elles ne veulent pas de code GPL dans leurs produits.
Si chaque auteur énonçait sa propre définition de l'éthique et que nous avions un grand nombre de licences éthiques non standard, cela deviendrait très ardu et peu pratique, mais si, comme nous le faisons maintenant pour le code source ouvert, nous pourrions nous mettre d'accord sur une poignée de licences standard. il n'y a aucune raison pour que ce soit moins pratique.
Les mauvaises entreprises vont juste écrire leurs propres
Bien. Laissons-les gaspiller leurs ressources si elles veulent tirer profit de nuire aux gens et à notre avenir.
Je ne vais pas me leurrer que le fait de mettre les petites bibliothèques que j'ai libérées interdira de manière substantielle les grandes sociétés pervers, mais que se passerait-il si de plus grands projets le faisaient?
Par exemple, Hadoop d’Apache est utilisé par les sociétés pétrolières et gazières pour les aider à fonctionner de manière plus rentable à un moment où elles devraient fermer leurs portes afin d’éviter une catastrophe climatique.
Si la Fondation Apache décidait que de telles utilisations ne relevaient pas des avantages publics que leur mission envisageait pour leurs ressources et décidait de codifier cela dans leur licence, les sociétés devraient se tourner vers autre chose, peut-être une solution propriétaire coûteuse. Ce ralentissement des résultats d’une entreprise qui nuit à notre avenir serait une bonne chose.
C'est une nouvelle idée
Cela dit, la licence Just World est une nouvelle idée. Nous pensons qu'il a des jambes, et nous serions heureux de recevoir vos commentaires ou demandes de tir pour l'améliorer.
la source
Certaines licences interdisent spécifiquement l'utilisation militaire.
http://mindprod.com/contact/nonmil.html
Licences "open-source" interdisant explicitement les applications militaires
Le problème avec ce genre de choses est qu'elles deviennent incompatibles avec d'autres licences telles que la GPL. Donc, à la surface, ils pourraient sembler «raisonnables», mais ils peuvent paralyser l'utilisation.
La licence de CryEngine ne permet que le développement de 'Jeux' et interdit spécifiquement ce qui suit:
Jeux sérieux:
Bien sûr, cela est plus probable pour des raisons commerciales que pour des raisons éthiques, car ils pourraient obtenir plus d’argent d’un entrepreneur militaire, par exemple, et ils auraient simplement besoin d’un autre permis. Aussi un peu de merde que les jeux éducatifs ne sont pas autorisés.
la source
Toute licence qui restreint l'utilisation du logiciel à certaines fins est par définition une licence de logiciel libre . C'est une violation de la toute première de ce que GNU considère comme les quatre libertés essentielles :
Vous en trouverez plusieurs dans la liste des licences de logiciels non libres de GNU , mais franchement, le monde regorge de détenteurs de licences de logiciels non libres. Un bon exemple est la licence JSON , qui inclut ceci:
Notez qu'une telle licence est incompatible avec GPL et LGPL. Cela signifie que si quelqu'un tente d'utiliser un logiciel utilisant cette licence avec un logiciel GPL ou LPGL, le travail résultant ne sera légalement pas distribué à qui que ce soit.
En général, je déteste vraiment, vraiment avoir à fouiller dans la licence de logiciel homebrew de quelqu'un pour voir si je peux utiliser son logiciel. J'ai mieux à faire avec mon temps. J'ai découvert qu'il y avait 3 licences utilisables à toutes fins pour lesquelles je publierais un logiciel:
Si vous utilisez autre chose, je suis déjà un peu ennuyé par vous. Si c'est assez obscur pour qu'il ne soit pas sur la liste des licences de GNU , alors je dois analyser moi-même, je suis triple ennuyé. Il est généralement plus facile de trouver un autre logiciel avec une meilleure licence.
Notez que quiconque utilisera votre logiciel pour le "mal" ne s'intéressera probablement pas beaucoup aux restrictions d'utilisation de votre licence.
la source