Wie erfolgreich ist es der GPL, ihre Ziele zu erreichen? [geschlossen]

16

Im Allgemeinen gibt es zwei Arten von FOSS-Lizenzen, wenn es um die kommerzielle Nutzung des Codes geht - sagen wir den GPL-Typ und den BSD-Typ. Der erste ist im Großen und Ganzen einschränkend in Bezug auf die kommerzielle Nutzung (unter Nutzung verstehe ich auch das Ändern und Weiterverteilen sowie das Erstellen abgeleiteter Werke usw.) des Codes unter der Lizenz, und der zweite ist viel freizügiger.

Soweit ich weiß, besteht die Idee hinter GPL-Lizenzen darin, die Benutzer dazu zu ermutigen, das proprietäre Softwaremodell aufzugeben und stattdessen in den FOSS-Code zu konvertieren, und die Lizenz ist das Instrument, um sie dazu zu verleiten - dh "Sie können diese nette Software verwenden , aber nur wenn Sie zustimmen, in unser Lager zu kommen und nach unseren Regeln zu spielen ".

Was ich fragen möchte, ist - war diese Strategie bisher erfolgreich? Dh gibt es irgendwelche wichtigen Erfolge in Form eines großen Projekts, das von geschlossen zu offen geht, weil die GPL oder eine Software, die offen entwickelt wird, nur weil die GPL es so gemacht hat? Wie groß ist die Auswirkung dieser Strategie - zum Beispiel im Vergleich zu der Welt, in der jeder BSD-Lizenzen haben oder den gesamten Open-Source-Code gemeinfrei veröffentlichen würde?

Beachten Sie, dass ich nicht frage, ob das FOSS-Modell erfolgreich ist - das steht außer Frage. Was ich frage, ist, ob die spezielle Art und Weise, Leute zur Umstellung von proprietären auf FOSS zu verleiten, die von GPL-Lizenzen und nicht von BSD-Lizenzen verwendet wird, erfolgreich war. Ich frage auch nicht nach den Vorzügen der GPL selbst als Lizenz, sondern nur nach der Tatsache, dass sie wirksam ist.

STASM
quelle
4
Die GPL schränkt die Nutzung nicht ein. Es ist nur die Verteilung , auf die es Beschränkungen macht.
Whatsisname
1
Der Kontrast sollte bei proprietärer Software liegen, nicht bei kommerzieller. Viel Handel mit freier Software.
Lars Wirzenius
2
Sí ʇı ʇɐɥʍ uo ɹǝƃuıɟ ʎɯ ʇnd ǝʇınb ʇ, uɐɔ I ʇnq ‚uǝʇʇıɹʍ sɐʍ ן dƃ ǝɥʇ uǝɥʍ ɯoɹɟ ʇuǝɹǝɟɟıp sɯǝǝs p ןɹ oʍ ǝɥʇ ʇnoqɐ ƃuıɥʇǝɯos
Tim Beitrag

Antworten:

10

Erstens hat die Frage eine inhärente Subjektivität - es gibt keine sichere Möglichkeit, dies zu wissen, und die Geschichte kann auf beide Arten interpretiert werden. Dies ist eine alte Debatte und eines der Kernthemen in der Debatte zwischen Open Source und Freier Software. Sie müssen auch definieren, was Sie mit dem Erreichen der Ziele meinen. Es ist schwer zu behaupten, dass die GPL und die FSF nicht dazu beigetragen haben, Open Source zu einer bedeutenden Bewegung der letzten zwei bis drei Jahrzehnte zu machen. Es hat jedoch nicht seine Ziele erreicht, dass jeder Code freie Software ist.

Das Vorbild der GPL-Software ist natürlich Linux und alles, was von der FSF kommt (gcc, etc ...). Interessanterweise wurde die GPL für Linux nicht aufgrund ihrer politischen Haltung ausgewählt, sondern aufgrund der Idee der Gegenseitigkeit, wie Linus Torvald mehrmals darlegte. Ich gebe Ihnen meinen Code, aber Sie müssen mir Ihren im Austausch geben, wenn Sie meinen verwenden.

Was Linux selbst angeht, finde ich die GPL sehr wertvoll - ein aktuelles Beispiel ist BTRFS, die neue fs, die in Oracle entwickelt wurde. Der Hauptautor von BTRFS gab an, dass der einzige Grund, warum sich Oracle überhaupt für die Verwendung der GPL einigte, darin bestand, dass es keine Wahl gab. Die größere Frage ist, ob Linux selbst wegen oder trotz der GPL erfolgreich wurde. Verschiedene Faktoren wie die unglaubliche Führungsrolle von Linus, Urheberrechtsprobleme für das * BSD-Projekt zu dieser Zeit usw. machen es unmöglich, die Hypothese zu beweisen / widerlegen.

Für gcc hat Stallman mehrmals geschrieben, warum die GPL das Projekt gegen "Propietarisierung" gesichert hat.

David Cournapeau
quelle
3
Stallman hat mehrere Dinge geschrieben, die brillant sind. Er hat auch einige Dinge geschrieben, die einen zweifelhaften Bezug zur Realität haben. Er behauptet, dass die GPL gcc gegen "Enteignung" gerettet hat, muss es nicht unbedingt so machen.
NUR MEINE STELLUNGNAHME
Sicher, aber das gilt für jede Behauptung, die Sie zu diesem Thema aufstellen - letztendlich hängt es von Ihrer eigenen Meinung zu diesem Thema ab. Ich glaube nicht, dass es jemals eine endgültige Antwort geben kann, zumal die Fragen ideologischer Natur sind (sowohl für GPL- als auch für BSD / MIT-Lizenzen).
David Cournapeau
Oracle-Beispiel ist gültig, danke. Was den Erfolg von Linux angeht, bezweifle ich, dass die GPL von großer Bedeutung ist, da es offensichtliche Beispiele für BSD-lizenzierte Betriebssysteme gibt. Sie sind etwas weniger beliebt, aber ich bezweifle stark, dass die GPL der Grund ist. Was gcc angeht, bin ich mir nicht sicher, was "Besitz" hier genau bedeutet, aber Intel hat seine eigenen proprietären Compiler (besser als gcc), und wenn Stallman dieses Szenario verhindern wollte, scheiterte er.
StasM
Ich meinte, wenn gcc zB BSD wäre, könnten die Leute ihre Verbesserungen hinzufügen, ohne den Code an die Community zurückzugeben. GCC wurde so geschrieben, dass eine Erweiterung ohne Integration in die private API nur schwer zu verhindern war ( gcc.gnu.org/wiki/GCC_Plugins ).
David Cournapeau
18

Ich würde sagen, dass uneingeschränkte Lizenzen wie die BSD-, MIT- und Apache-Lizenzen wesentlich mehr zur Förderung von FOSS beigetragen haben als die GPL.

Beispiele:

  • Schlossprojekt,
  • jQuery,
  • SQLite,
  • Apache,
  • Hibernate und nHibernate,
  • ASP.NET MVC,
  • JSON.ORG,

und viele andere.

Die meisten Unternehmen sind zu vorsichtig mit der GPL, um GPL-Code in der Nähe ihres Entwicklungsaufwands zuzulassen, es sei denn, das Unternehmen selbst arbeitet tatsächlich unter dem GPL / Value-Added-Services-Modell.

Robert Harvey
quelle
5
Konnte nicht mehr zustimmen.
Konfigurator
1
Ich möchte auch die LGPL-Lizenz erwähnen, die einige Probleme mit der Standard-GPL
andre
Wie fördert eine der oben genannten Maßnahmen die Einführung der FOSS-Lizenzierung?
Mark H
13
Ich verstehe diese Antwort nicht: Wie kommt es, dass die Auflistung einiger Projekte beweist, dass BSD / MIT mehr als GPL für Open Source geleistet hat? Sie könnten eine ähnliche Liste für GPL-Projekte erhalten (Linux, gcc, gnome, kde, qt, mysql, emacs usw.), und es würde auch nichts für die GPL beweisen.
David Cournapeau
1
@ George: Ja, QT ist LGPL, nicht GPL, sorry für die Verwirrung. Ich denke nicht, dass es meinen Standpunkt ändert.
David Cournapeau
8

Die GNU GPL war trotz ihrer FLOSS-Durchsetzung erfolgreich, nicht deswegen. Unternehmen beteiligen sich größtenteils freiwillig an der Veröffentlichung von Code unter der GPL. Es gibt keine signifikanten Algorithmen und Bibliotheken, die kommerzielle Entwickler zur Enteignung zwingen würden.

Apple ist ein gutes Beispiel. Sie haben KHTML übernommen und in WebKit weiterentwickelt. Und sie gaben den Code an die Open-Source-Community zurück. Man könnte zwar annehmen, dass dies daran liegt, dass sie von der LGPL dazu gezwungen wurden, aber es scheint unwahrscheinlich. Für Darwin und das BSD-Userland veröffentlichen sie den Code sehr freiwillig. Und mit LLVM haben sie sogar ein brandneues FLOSS-Projekt gestartet. Dennoch bleibt Apple offensichtlich weitgehend ein proprietärer Softwareanbieter.

Android ist ähnlich. Natürlich spielt der Hardware-Support hier eine wichtige Rolle, aber Google hätte eine BSD-Codebasis übernehmen und proprietär übernehmen können. Aber sie haben sich für Linux entschieden. So tragen sie bereitwillig zurück, nicht weil es keine Alternative ohne GPL gab.

Openoffice ist eine interessantere Geschichte, da es in der Tat zu einem bestimmten Zeitpunkt proprietär war. Aber auch hier war die LGPL-Konvertierung freiwillig, nicht notwendig. Die * GPL-Lizenz ermöglichte dies jedoch in diesem Fall. Eine akademische BSD-Lizenz hätte für Sun nicht ausgereicht, um Openoffice freizugeben, da der Code dann möglicherweise von einer anderen Person geschützt wurde. In dieser Hinsicht war die GNU * GPL erfolgreich.

Die Reziprok- / Virenklausel führt nicht direkt zu mehr Open Source-Code. Softwareanbieter nutzen es jedoch zu ihrem Vorteil, wenn sie möchten, und tragen so zum FLOSS-Pool bei. Die meisten Anbieter tun dies jedoch unaufgefordert. Ich sehe kaum einen Unterschied zwischen BSD-Lizenzen und GPL-Lizenzen, wenn es darum geht, mehr Code-Beiträge zu fördern.
Fazit: Die GNU GPL war erfolgreich, hat aber auch die BSD / MIT-Lizenzen vorangetrieben, wo dies angemessener ist. Sie können den Erfolg aber auch einfach an der "Quantität des Codes" messen, die meiner Meinung nach die eigentliche FSF-Metrik ist.

Mario
quelle
5
Komisch, dass Sie Android erwähnen sollten, da es nicht möglich war, absichtlich eine Lücke in der GPL zu finden, die es ihnen ermöglichte, eine nicht modifizierbare Plattform freizugeben. (Etwas, was spätere Versionen der GPL einschränken). Google teilt absolut nicht die gleichen Ideale wie die FSF, und die Tatsache, dass es sich bei Android um FOSS-Software handelt, ist weitgehend irrelevant, da niemand die Ressourcen hat, um auf seiner eigenen Plattform mit Google zu konkurrieren. haben eine alternative Lösung gewählt). Außerdem hat Apple LLVM nicht gestartet.
Mark H
@sparkie: Das ist interessant. Erst gestern habe ich einen Artikel gelesen, in dem ein Google-Entwickler die Anbieter von Mobiltelefonen verprügelt hat, weil sie Handys gegen Android-Firmwares von Drittanbietern gesperrt haben. (Obwohl ich keinen Zweifel daran habe, dass Googles Open Source-Bemühungen größtenteils präsentativ sind.)
Mario
Vergessen wir nicht eines der größten GPL-Projekte, Linux. Keiner der großen Anbieter, die ihren Code hinzugefügt haben (IBM, Oracle usw.), hatte die Option, einen "erweiterten Enterprise-Kernel" zu forken und zu verwenden. Sie mussten ihn öffentlich machen. Aber wahrscheinlich handelt es sich bei solchen universellen Infrastrukturkomponenten um den gesamten Bereich, in dem GPL nützlicher ist als BSD-Lizenzen.
9000,
3

Mit Blick auf das GNU-Manifest ist nicht klar, dass die Überzeugung von Unternehmen, FOSS-Software herauszubringen, eines der Ziele war. Hier ist ein Zitat:

Damit ich weiterhin Computer ohne Schande benutzen kann, habe ich mich entschlossen, eine ausreichende Menge freier Software zusammenzustellen, damit ich ohne Software auskommen kann, die nicht frei ist.

Wenn wir nur dieses Ziel betrachten, dann ist das GNU-Projekt weitgehend erfolgreich. Wir haben ein GPL-Betriebssystem, eine Office-Suite, Datenbanken und viele andere Anwendungen, die frei modifiziert und weitergegeben werden können.

Larry Coleman
quelle
Soweit ich weiß, ist es das ultimative Ziel, so viel Software wie möglich frei zu machen, und da viele Software von kommerziellen Entitäten geschrieben wird, ist es ein wichtiges Unterziel, sie auch frei zu machen. Wenn das Ziel nur darin bestand, eine ganze Reihe von Software zu schreiben, die ohne unfreie Software verwendet werden kann, warum sollte man sie dann nicht einfach öffentlich zugänglich machen? Offensichtlich hat der virale Charakter der GPL einige Ziele, die mit PD- oder BSD-Lizenzen nicht erreicht werden können. Was denkst du, sind diese Ziele?
StasM
Die GPL verhindert die "Umarmung und Erweiterung" -Strategie, sodass zum Beispiel Emacs nicht verwendet werden kann, indem Erweiterungen hinzugefügt werden, die so populär werden, dass sie nicht mehr wegzudenken sind, und das Ganze unter einer proprietären Lizenz veröffentlicht wird. Das GNU-Manifest legt jedoch ziemlich klar fest, was das Ziel der GPL war, zumindest ursprünglich.
Larry Coleman
1

Ich denke, beide (GPL- und BSD-Lizenzen) sind wichtig für die FOSS-Welt. Ich sehe die Verwendung der GPL in zwei Gruppen. Einer davon ist die Gruppe sehr engagierter Open-Source-Unterstützer. Sie glauben, dass die Möglichkeit, Open-Source wieder in proprietäres Werk umzuwandeln, der OSS-Welt schaden wird. Ich persönlich denke, das ist nicht das große Problem. PC-BSD (eine proprietäre BSD-Variante) schadet der BSD-Community nicht. Die zweite Gruppe, die die GPL einnimmt, sind große Unternehmen. Sie nutzen die Lizenz, um mehr Kontrolle über das Produkt zu behalten (um beispielsweise ihr Geschäftsmodell zu unterstützen). Der Wettbewerb wird Probleme haben, mit anderen GPL-lizenzierten Softwareprodukten Geld zu verdienen. So kann das Unternehmen der Konkurrenz einen Schritt voraus sein und gleichzeitig gutes Karma für das Open-Sourcing seines Produkts verdienen.

Mnementh
quelle
2
Sie vergessen das dritte Lager, das ich für sehr bedeutsam halte: die Gegenseitigkeit. Das heißt, Sie interessieren sich nicht für proprietäre Software, möchten jedoch nicht, dass Ihr als Open Source veröffentlichter Code für proprietäre Software verwendet wird. GPL gibt Ihnen das, BSD nicht. Zumindest bin ich in diesem Lager.
David Cournapeau
0

Meine persönliche Perspektive ist die eines einzelnen Entwicklers, der aufgrund einer Behinderung für einige Zeit nicht angestellt ist und der hofft (oder träumt), mit der einzigen wertvollen Fähigkeit, die ich habe, seinen Lebensunterhalt wieder verdienen zu können.

GPL wird ständig für kommerzielle Projekte verwendet. Das Problem ist, was manchmal als "viral" bezeichnet wird, dh, wenn Sie in einem Projekt GPL-Code verwenden, müssen Sie wahrscheinlich den gesamten Code für dieses Projekt GPL . Einige fordern einen Ausschluss für die dynamische Verknüpfung. Die GPL-FAQ behauptet, dass die dynamische Verlinkung zu Plug-Ins aufgrund gemeinsamer Datenstrukturen gesperrt ist - http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins. Dies erscheint seltsam, da jede Windows-Anwendung eine dynamische Verknüpfung zu Windows-Komponenten herstellt und Datenstrukturen mit Windows gemeinsam nutzt (eine Anwendung ist in vielerlei Hinsicht ein Betriebssystem-Plug-in). Es gibt jedoch GPL-Windows-Apps, darunter zahlreiche von GNU veröffentlichte. Vielleicht bedeutet dies, dass das Verschleiern von Zeigern als Handles und das Ausführen der meisten Zugriffe über Funktionen nicht als gemeinsame Nutzung von Datenstrukturen gilt. Dies wäre vermutlich eine Lücke, die eine speziell entwickelte Plug-in-API oder dynamisch verknüpfte Bibliothek ausnutzen könnte, aber natürlich muss ein einzelner Entwickler auf Nummer sicher gehen über solche Fragen.

Wie auch immer, es gibt gute Gründe für die "virale" Natur der GPL, aber für einen kleinen Entwickler mit einem verzweifelten Bedürfnis, seinen Lebensunterhalt zu verdienen, sieht dies verdächtig aus, als würde er Ihre Arbeit für nichts verschenken. Wir können nicht alle Geld verdienen, indem wir Support in Rechnung stellen oder effektiv die manuellen Bücher verkaufen, da wir unter anderem nicht alle über die entsprechenden Fähigkeiten verfügen. Wenn Ihr Produkt über ein unzulängliches kostenloses Handbuch verfügt, ist das echte Handbuch wahrscheinlich Stack Overflow oder Superuser oder was auch immer - nicht Ihr kostenpflichtiges Handbuch. Und das setzt voraus, dass sich irgendjemand die Mühe macht, es überhaupt herauszufinden.

Unter diesem Gesichtspunkt sind Lizenzen im BSD-Stil sehr attraktiv. Ich gebe zu, es ist heuchlerisch, andere Open-Source-Arbeiten zu nutzen und die daraus resultierenden Produkte geschlossen zu halten, aber das muss gegen andere Probleme abgewogen werden.

OTOH, ich habe nie wirklich etwas veröffentlicht, offen oder geschlossen - zumindest nicht seit einer Reihe von Plugins, die ich vor ungefähr zehn Jahren allgemein zugänglich gemacht habe (und wie die jahrelange Erfahrung mir beigebracht hat, waren sie nicht so gut geschrieben) ). Das Ganze ist für mich also akademisch, zumindest für den Moment.

Jedes Mal, wenn ich mir eine Bibliothek mit einer GPL-Lizenz anschaue, ist mein erster Gedanke: "Wenn ich davon abhängig werde, schränke ich meine Möglichkeiten ein."

Steve314
quelle
Die Windows-Kernbibliotheken stehen nicht unter der GPL, sodass Sie Ihre Anwendung nicht unter der GPL installieren müssen, wenn Sie eine Verknüpfung zu ihnen herstellen. Ich bin nicht sicher, unter welcher Lizenz sie sich befinden, aber es ist keine, die besagt: "Ihre Anwendung muss eine geschlossene Quelle sein, wenn Sie eine Verknüpfung zu dieser erstellen." Das Problem ist nur beim Verknüpfen mit einer GPL-Bibliothek. Die Windows-Bibliotheken sind keine GPL.
Sternberg
Mein Punkt ist, dass die Anwendung (effektiv ein Betriebssystem-Plugin) unter der GPL steht. Wenn es verboten ist, ein GPL-Plugin für Nicht-GPL-Photoshop zu schreiben (weil Sie die Photoshop-Quelle nicht freigeben können), warum ist es nicht verboten, ein GPL-Plugin für Nicht-GPL-Windows zu schreiben? Beispielsweise kann jede Befehlszeilenanwendung unter Windows ausgeführt werden, die dynamische Links zu DLLs wie user32.dll enthält und Datenstrukturen (mindestens Zeichenfolgen) mit den Konsolen-E / A-APIs gemeinsam nutzt. Dieser Zugriff kann indirekt über Standard-Bibliotheks-APIs erfolgen, es gibt jedoch auch Standard-Bibliotheksimplementierungen, die unter GNU-Lizenzen verteilt werden.
Steve314
Eigentlich - ich denke, es gibt Standardbibliotheken unter GNU-Lizenzen, aber ich bin mir nicht sicher, ob das GPL bedeutet.
Steve314
1
@ Steve314: Lies die GPL genauer durch. Sie dürfen auf Standard-Systemkomponenten verlinken, obwohl ich mich nicht an die genaue Sprache erinnere. Die GPL wurde sorgfältig auf Praktikabilität ausgelegt - Praktikabilität bei der Förderung einer bestimmten ideologischen Sichtweise, aber dennoch auf Praktikabilität.
David Thornley
1
@ Steve: Vergiss das Verlinken, etc ... Die GPL bezieht sich nie darauf (die LGPL tut es). Laut GPL muss eine abgeleitete Software unter der GPL veröffentlicht werden, wobei abgeleitete Software absichtlich undefiniert bleibt. Die Idee ist jedoch, dass eine Software, die ohne das Original nicht funktioniert, ohne wesentliche Änderungen davon abgeleitet ist. Wenn Sie eine Anwendung auf einem Betriebssystem erstellen, ist das Betriebssystem kein Derivat der Anwendung (die Beziehung ist nicht reflektierend)
David Cournapeau
-2

Ich denke, wenn Leute an GPL denken, denken sie in den Gnu-Idealen, in denen die Software ein freies Denken sein sollte, damit Ideen ausbrechen und die großen Unternehmen die Bösen sind, weil sie das nicht zulassen. Das Problem ist, dass diese Art des Denkens nicht viele Programmierer kauft, weil sie nur programmieren wollen, sie haben Programme und auch ihr eigenes Leben, das nicht unbedingt Software beinhaltet, unter dieser Sicht sind BSD und die anderen Lizenzen viel attraktiver. in dem Sinne, dass Linus bei den Entwicklern populärer ist als Richard Stallman, weil der erste nur sein Ding machen will (wie viele von uns), während der andere versuchen will, die ganze Welt zu verändern. Am Ende ist die GPL also wie Michail Gorbatschow, jemand, der die Evolution startet, aber nicht dazu bestimmt ist, sie zum Erfolg zu führen.

Coyote21
quelle