Dans quelle mesure la GPL parvient-elle à atteindre ses objectifs? [fermé]

16

Il existe, en gros, deux types de licences FOSS en ce qui concerne l'utilisation commerciale du code - disons le type GPL et le type BSD. Le premier est, de manière générale, restrictif quant à l'utilisation commerciale (par usage, j'entends également la modification et la redistribution, ainsi que la création d'œuvres dérivées, etc.) du code sous la licence, et le second est beaucoup plus permissif.

Si je comprends bien, l'idée derrière les licences de type GPL est d'encourager les gens à abandonner le modèle logiciel propriétaire et à la place à convertir au code FOSS, et la licence est l'instrument pour les inciter à le faire - c'est-à-dire "vous pouvez utiliser ce joli logiciel , mais seulement si vous acceptez de venir dans notre camp et de respecter nos règles ".

Ce que je veux vous demander, c'est si cette stratégie a réussi jusqu'à présent? Par exemple, y a-t-il des réalisations majeures sous la forme d'un grand projet allant de fermé à ouvert à cause de la GPL ou d'un logiciel développé en plein air uniquement parce que la GPL l'a fait? Quelle est l'ampleur de l'impact de cette stratégie - par rapport, par exemple, au monde où tout le monde aurait des licences de type BSD ou publierait tout le code open source sous le domaine public?

Notez que je ne demande pas si le modèle FOSS réussit - cela ne fait aucun doute. Ce que je demande, c'est si la manière spécifique d'inciter les gens à passer de propriétaire à FOSS utilisé par le type GPL et non utilisé par les licences de type BSD a réussi. Je ne m'interroge pas non plus sur les mérites de la GPL elle-même en tant que licence, mais simplement sur le fait de son efficacité.

StasM
la source
4
La GPL ne fait aucune restriction d' utilisation. Ce n'est que sur la distribution qu'il impose des restrictions.
whatsisname
1
Le contraste devrait être avec un logiciel propriétaire et non commercial. Beaucoup de commerce en cours avec des logiciels libres.
Lars Wirzenius
2
Postsı ʇı ʇɐɥʍ uo ɹǝƃuıɟ ʎɯ ʇnd ǝʇınb ʇ, uɐɔ ı ʇnq 'uǝʇʇıɹʍ sɐʍ ן dƃ ǝɥʇ uǝɥʍ ɯoɹɟ ʇuǝɹǝɟɟıp sɯǝǝs p ןɹ oʍ ǝɥʇ ʇnoqɐ ƃuıɥʇǝɯos
Tim Post

Réponses:

10

Premièrement, il y a une subjectivité inhérente à la question - il n'y a aucun moyen de savoir avec certitude, et l'histoire peut être interprétée dans les deux sens. C'est un vieux débat, et l'un des principaux problèmes du débat open source vs logiciel libre. Vous devez également définir ce que vous voulez dire en atteignant ses objectifs. Il est difficile de prétendre que la GPL et la FSF n'ont pas contribué à faire de l'open source un mouvement significatif des 2-3 dernières décennies. Cependant, il n'a pas atteint ses objectifs: tous les codes sont des logiciels libres.

Le parangon des logiciels GPL est bien sûr linux et tout ce qui provient de la FSF (gcc, etc ...). Fait intéressant, pour Linux, la GPL n'a pas été choisie pour sa position politique, mais à cause de l'idée de réciprocité, comme l'a déclaré à plusieurs reprises Linus Torvald. Je vous donne mon code, mais vous devez me donner le vôtre en échange si vous utilisez le mien.

En ce qui concerne Linux lui-même, je pense que la GPL a été très précieuse - un exemple récent est BTRFS, le nouveau fs développé dans Oracle. Le principal auteur de BTRFS a déclaré que la seule raison pour laquelle Oracle avait accepté en premier lieu d'utiliser la GPL était parce qu'il n'avait pas le choix. La plus grande question est de savoir si Linux lui-même est devenu un succès, car ou malgré la GPL. Divers facteurs tels que le leadership incroyable de Linus, les problèmes de droits d'auteur pour le projet * BSD à l'époque, etc ... rendent l'hypothèse impossible à prouver / réfuter.

Pour gcc, Stallman a écrit plusieurs fois pourquoi la GPL a sauvé le projet contre la "propiétarisation".

David Cournapeau
la source
3
Stallman a écrit plusieurs choses brillantes. Il a également écrit plusieurs choses qui ont un lien douteux avec la réalité. Lui affirmant que la GPL a sauvé gcc contre la "proprietarisation" ne le fait pas nécessairement.
JUSTE MON AVIS correct
bien sûr, mais cela est vrai pour toute affirmation que vous ferez sur ce sujet - éventuellement, cela dépendra de votre propre opinion sur la question. Je ne pense pas qu'il puisse jamais y avoir de réponse définitive, d'autant plus que les ramifications de la question sont de nature idéologique (pour les licences GPL et BSD / MIT).
David Cournapeau
L'exemple Oracle est valide, merci. En ce qui concerne le succès de Linux, je doute que la GPL ait beaucoup d'importance car il existe des exemples évidents de systèmes d'exploitation sous licence BSD. Ils sont un peu moins populaires, mais je doute fortement que la GPL en soit la raison. En ce qui concerne gcc, je ne sais pas exactement ce que signifie exactement la «propriété», mais Intel a ses propres compilateurs propriétaires (mieux que gcc), donc si Stallman voulait empêcher ce scénario, il a échoué.
StasM
Je voulais dire que si gcc était par exemple BSD, les gens pourraient ajouter leurs améliorations sans rendre le code à la communauté. GCC est (était) écrit d'une manière telle que son extension sans l'intégrer à une API privée était difficile à empêcher ( gcc.gnu.org/wiki/GCC_Plugins ).
David Cournapeau
18

Je dirais que les licences non restrictives telles que les licences BSD, MIT et Apache ont fait beaucoup plus pour promouvoir les logiciels libres que la GPL.

Exemples:

  • Projet de château,
  • jQuery,
  • SQLite,
  • Apache,
  • Hibernate et nHibernate,
  • ASP.NET MVC,
  • JSON.ORG,

et plein d'autres.

La plupart des entreprises se méfient trop de la GPL pour autoriser le code GPL n'importe où près de leur effort de développement, à moins que l'entreprise elle-même ne fonctionne réellement sous le modèle GPL / services à valeur ajoutée.

Robert Harvey
la source
5
Je ne pourrais pas être plus d'accord.
configurateur
1
Je mentionnerais également la licence LGPL, qui résout certains des problèmes avec la GPL standard: en.wikipedia.org/wiki/LGPL
andre
Comment l'un des éléments ci-dessus favorise-t-il l'adoption des licences FOSS?
Mark H
13
Je ne comprends pas cette réponse: comment se fait-il que la liste de quelques projets prouve que BSD / MIT a fait plus que GPL pour l'open source? Vous pourriez obtenir une liste similaire pour les projets GPL (linux, gcc, gnome, kde, qt, mysql, emacs, etc ...), et cela ne prouverait rien non plus en GPL.
David Cournapeau
1
@George: oui, QT est LGPL, pas GPL, désolé pour la confusion. Je ne pense pas que cela change mon point de vue, cependant.
David Cournapeau
8

La GNU GPL a réussi malgré son application FLOSS, pas à cause de cela. Les entreprises contribuent pour la plupart et publient du code sous la GPL. Il n'y a pas d'algorithmes et de bibliothèques importants couverts par celui-ci, ce qui obligerait les développeurs commerciaux à se dépropriétariser.

Apple en est un bon exemple. Ils ont adopté KHTML et l'ont développé dans WebKit. Et ils ont rendu le code à la communauté open source. Bien que l'on puisse supposer que c'est parce qu'ils ont été contraints par la LGPL, cela semble peu probable. Pour Darwin et BSD, ils publient très volontairement le code. Et avec LLVM, ils ont même lancé un tout nouveau projet FLOSS. Pourtant, évidemment, Apple reste largement un fournisseur de logiciels propriétaires.

Android est similaire. Bien sûr, le support matériel joue un rôle important ici, mais Google aurait pu adopter une base de code BSD et la prendre propriétaire. Mais ils ont choisi Linux. Ainsi, ils contribuent volontiers, non pas parce qu'il n'y avait pas d'alternative non GPL.

Openoffice est une histoire plus intéressante, car elle était en effet propriétaire à un moment donné. Mais encore une fois, la conversion LGPL était volontaire, pas nécessaire. La licence * de type GPL permettait cependant dans ce cas. Une licence académique de type BSD n'aurait pas été suffisante pour que Sun publie Openoffice, car quelqu'un d'autre aurait pu alors s'approprier le code. Et à cet égard, la GNU * GPL a réussi.

La clause réciproque / virale ne conduit pas directement à un code source plus ouvert. Mais les éditeurs de logiciels l'utilisent à leur avantage quand ils le souhaitent et contribuent donc au pool FLOSS. Pourtant, la plupart des fournisseurs ne le font pas de manière abusive. Je vois peu de différence entre les licences de type BSD et de type GPL en ce qui concerne l'encouragement de plus de contributions de code.
En conclusion, la GNU GPL a été un succès, mais a également propulsé les licences de type BSD / MIT là où elles sont plus appropriées. Mais vous pouvez également simplement mesurer le succès en "quantité de code", qui est, je crois, la métrique FSF réelle.

mario
la source
5
Drôle, vous devriez mentionner Android, car il est sorti de sa façon de trouver délibérément une faille dans la GPL qui leur a permis de libérer une plate-forme non modifiable. (Quelque chose que les versions ultérieures de la GPL restreignent). Google ne partage absolument pas les mêmes idéaux que la FSF, et le fait que Android soit un logiciel FOSS est largement hors de propos, car personne n'a les ressources pour rivaliser avec Google sur sa propre plate-forme (S'ils avaient des concurrents à craindre, ils le feraient '' ai choisi une solution alternative). De plus, Apple n'a pas démarré LLVM.
Mark H
@sparkie: C'est intéressant. Pas plus tard qu'hier, j'ai lu un article dans lequel un développeur de Google a critiqué les fournisseurs de téléphones portables pour verrouiller les mobiles contre les firmwares Android tiers. (Bien que je ne doute pas que les efforts open source de Google sont principalement des présentations.)
mario
N'oublions pas l'un des plus grands projets sous GPL, Linux. Aucun des grands fournisseurs qui y ont ajouté leur code (IBM, Oracle, etc.) n'avait la possibilité de bifurquer et de s'approprier un `` noyau amélioré de niveau entreprise '', ils ont dû le rendre public. Mais ces éléments d'infrastructure universels concernent probablement tout le domaine où la GPL est plus utile que les licences de type BSD.
9000
3

En regardant le Manifeste GNU , il n'est pas clair que convaincre les entreprises de publier le logiciel FOSS était l'un des objectifs. Voici une citation:

Afin de pouvoir continuer à utiliser les ordinateurs sans déshonneur, j'ai décidé de mettre en place un corpus de logiciels libres suffisant pour pouvoir me débrouiller sans logiciel non gratuit.

Si nous regardons simplement cet objectif, le projet GNU a largement réussi. Nous avons un système d'exploitation GPL, une suite bureautique, des bases de données et de nombreuses autres applications qui peuvent être librement modifiées et redistribuées.

Larry Coleman
la source
Si je comprends bien, le but ultime est de rendre le plus de logiciels possible gratuits, et comme beaucoup de logiciels sont écrits par des entités commerciales, c'est un sous-objectif important de le rendre gratuit aussi. Si l'objectif était simplement d'écrire un ensemble de logiciels à utiliser sans avoir besoin de logiciels non libres, pourquoi ne pas simplement les mettre dans le domaine public? De toute évidence, la nature virale de la GPL a certains objectifs qui ne sont pas réalisables par la licence PD ou même BSD. Selon vous, quels sont ces objectifs?
StasM
La GPL empêche la stratégie "embrasser et étendre", de sorte que quelqu'un ne peut pas prendre, par exemple, Emacs, ajouter des extensions qui deviennent si populaires qu'elles ne peuvent pas être utilisées sans, et publier le tout sous une licence propriétaire. Cela dit, le manifeste GNU expose très clairement quel était le but de la GPL, au moins à l'origine.
Larry Coleman
1

Je pense que les deux (licences de type GPL et BSD) sont toutes deux importantes pour le monde FOSS. Je vois l'utilisation de la GPL dans deux groupes. L'un est le groupe de partisans Open-Source très engagés. Ils croient que la possibilité de transformer à nouveau l'Open-Source en travail propriétaire endommagera le monde OSS. Personnellement, je pense que ce n'est pas le gros problème. PC-BSD (une variante propriétaire de BSD) n'endommage pas la communauté BSD. Le deuxième groupe qui adopte la GPL sont les grandes entreprises. Ils utilisent la licence pour garder plus de contrôle sur le produit (pour soutenir leur modèle commercial par exemple). La compétition aura des problèmes pour gagner de l'argent avec quelqu'un d'autre qu'un logiciel sous licence GPL. Ainsi, l'entreprise peut garder une longueur d'avance sur la concurrence, tout en gagnant un bon karma pour l'Open-sourcing de son produit.

Mnementh
la source
2
vous oubliez le troisième camp, qui je pense est assez important: la réciprocité. Autrement dit, vous ne vous souciez pas des logiciels propriétaires, mais vous ne voulez pas que votre code publié en open source soit utilisé dans des logiciels propriétaires. GPL vous donne cela, BSD ne le fait pas. C'est du moins le camp dans lequel je me trouve.
David Cournapeau
0

Mon point de vue personnel est celui d'un développeur individuel, sans emploi depuis un certain temps en raison d'un handicap, et espérant (ou rêvant) de pouvoir gagner sa vie à partir de la seule compétence précieuse que j'ai.

La GPL est utilisée à tout moment pour des projets commerciaux. Le problème est ce que l'on appelle parfois sa nature "virale", ce qui signifie que si vous utilisez du code GPL dans un projet, vous devrez probablement GPL tout le code de ce projet. Certains réclament une exclusion pour les liens dynamiques. La FAQ GPL affirme que la liaison dynamique aux plug-ins est interdite en raison de structures de données partagées - http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins. Cela semble étrange car chaque application Windows établit des liens dynamiques vers des composants Windows et partage des structures de données avec Windows (une application est à bien des égards un plugin de système d'exploitation), mais il existe des applications Windows GPL, y compris de nombreuses versions publiées par GNU. Peut-être que cela signifie déguiser des pointeurs en poignées et que la plupart des accès via des fonctions ne comptent pas comme le partage de structures de données, ce qui serait une échappatoire que toute API de plug-in spécialement conçue ou bibliothèque liée dynamiquement pourrait vraisemblablement exploiter, mais il est évident qu'un développeur individuel doit jouer en toute sécurité sur ces questions.

Quoi qu'il en soit, il y a de bonnes raisons à la nature "virale" de la GPL, mais pour un petit développeur qui a désespérément besoin de gagner sa vie, cela ressemble étrangement à donner son travail pour rien. Nous ne pouvons pas tous gagner de l'argent en facturant le support ou en vendant efficacement les manuels, car, entre autres, nous n'avons pas tous les compétences nécessaires. De plus, si votre produit a un manuel gratuit inadéquat, le manuel réel finira probablement par être Stack Overflow ou Superuser ou autre - pas votre manuel payant. Et c'est en supposant que quelqu'un se soucie de tout comprendre.

De ce point de vue, les licences de type BSD sont très attractives. J'admets qu'il est hypocrite d'exploiter d'autres travaux open source tout en gardant les produits résultants fermés, mais cela doit être mis en balance avec d'autres problèmes.

OTOH, je n'ai jamais rien publié, ouvert ou fermé - du moins pas depuis un tas de plugins que j'ai essentiellement rendus publics il y a une dizaine d'années (et comme les années supplémentaires d'expérience m'ont appris, ils n'étaient pas si bien écrits ). Donc tout cela est académique pour moi, du moins pour le moment.

Pourtant, chaque fois que je regarde une bibliothèque avec une licence de type GPL, ma première pensée est "si je deviens dépendant de cela, je limite mes options".

Steve314
la source
Les bibliothèques principales de Windows ne sont pas sous GPL, vous n'avez donc pas à GPL votre application si vous vous y connectez. Je ne suis pas sûr de la licence sous laquelle ils se trouvent, mais ce n'est pas celui qui dit: "Votre application doit être fermée si vous y liez". Le problème se pose uniquement lors de la liaison à une bibliothèque GPL. Les bibliothèques Windows ne sont pas GPL.
jsternberg
Mon point est que l'application (en fait un plugin de système d'exploitation) est sous GPL. S'il est interdit d'écrire un plugin GPL pour Photoshop non GPL (parce que vous ne pouvez pas libérer la source Photoshop), pourquoi n'est-il pas interdit d'écrire un "plugin" GPL pour Windows non GPL? Par exemple, toute application de ligne de commande s'exécute sur des liens dynamiques Windows vers des DLL telles que user32.dll et partage des structures de données (au minimum, des chaînes) avec les API d'E / S de la console. Cet accès peut se faire indirectement, via des API de bibliothèque standard, mais il existe également des implémentations de bibliothèque standard distribuées sous licences GNU.
Steve314
En fait - je pense qu'il existe des bibliothèques standard sous licences GNU, mais je ne suis pas sûr que cela signifie GPL.
Steve314
1
@ Steve314: Lisez la GPL plus attentivement. Vous êtes autorisé à créer des liens vers des composants système standard, bien que je ne me souvienne pas de la langue exacte. La GPL a été soigneusement conçue pour l'aspect pratique - pratique pour promouvoir une certaine vision idéologique, mais néanmoins pratique.
David Thornley
1
@steve: oubliez les liens, etc ... La GPL n'y fait jamais référence (la LGPL le fait). La GPL dit qu'un logiciel dérivé doit être publié sous la GPL, où dérivé est délibérément laissé non défini, bien que l'idée soit que si un logiciel ne peut pas fonctionner sans l'original sans être significativement modifié, il est dérivé. Si vous créez une application sur un OS, l'OS n'est pas un dérivé de l'application (la relation n'est pas réfléchie)
David Cournapeau
-2

Je pense que lorsque les gens pensent à la GPL, ils pensent aux idéaux gnu, dans lesquels le logiciel devrait être libre, afin que les idées se concrétisent, et que les grandes entreprises soient les méchants parce qu'elles ne le permettent pas. Le problème est que cette façon de penser n'achète pas beaucoup de programmeurs parce qu'ils veulent juste coder leurs trucs, avoir leurs programmes et aussi leur propre vie, cela n'implique pas nécessairement des logiciels, selon ce point de vue BSD et les autres licences sont beaucoup plus attrayantes, dans le même sens que Linus est plus populaire que Richard Stallman pour les développeurs, car le premier veut juste faire son truc (comme beaucoup d'entre nous), tandis que l'autre veut essayer de changer le monde entier. Donc à la fin, la GPL est comme Mikhail Gorbachev, quelqu'un qui commence l'évolution mais n'est pas destiné à la voir réussir.

Coyote21
la source