Angenommen, ich habe einen neuen (DSP-) Algorithmus erstellt. Werde ich einen Vorteil haben, wenn ich den Algorithmus unter einer Copyleft-Lizenz (GPL usw.) als Open Source-Version verwende? Nach dem, was ich über die Lizenzierung weiß, sollte dies Menschen davon abhalten, denselben Code wie die geschlossene Quelle zu verwenden, aber könnten sie den Algorithmus als geschlossene Quelle "umschreiben"?
Hinweis: Ich weiß nicht genau, ob der Algorithmus neu ist, aber er wurde noch nicht als Open Source veröffentlicht. Muss ich nach Softwarepatenten suchen, wenn ich sie kopieren möchte, da ich aus der Europäischen Union komme?
algorithms
licensing
gpl
Kozuch
quelle
quelle
Antworten:
Die Einschränkungen in Copyleft-Lizenzen wie der GPL gelten sowohl für geänderte Versionen Ihres Codes als auch für Ihren Originalcode. Sie können also nicht einfach den Whitespace- oder Klammerstil ändern und dann Ihre Lizenzerklärung löschen.
Sie können jedoch keinen "Algorithmus" im abstraktesten Sinne patentieren / copyright / copyleft / was auch immer. Sie können eine Lizenz für Ihre Lieblingsimplementierung von quicksort vergeben, aber Sie können quicksort nicht selbst lizenzieren. Wenn jemand Ihren Code liest, nur um den Algorithmus zu lernen, und dann den Algorithmus von Grund auf neu schreibt, ist das in Ordnung.
Soweit ich weiß, gibt es keinen "Vorteil", der erste zu sein, der einen anderen Algorithmus veröffentlicht, als möglicherweise irgendeinen Ruhm und (realen) Ruf, wenn er besonders erwähnenswert ist. Wenn Sie als erster Copyleft-Anwender davon profitieren, haben Sie definitiv keine Vorteile, aber die Tatsache, dass jemand Copyleft-Anwender daran beteiligt ist, wird als Vorteil für die Community der freien Software angesehen.
quelle
Wenn Sie verhindern möchten, dass ein patentierbares Objekt patentiert und dann von der größeren Community "ausgeschlossen" wird, können Sie eine defensive Offenlegung durchführen. Cuis Smalltalk hat dies zum Beispiel mit einigen neuen Anti-Aliasing-Techniken getan:
quelle
Ich sehe einige wertvolle Informationen in den anderen Antworten und Kommentaren, aber auch einige Fehlinformationen, also versuche ich, eine Zusammenfassung zu geben und einige zusätzliche Dinge hinzuzufügen.
Wenn Sie den Quellcode einer Implementierung Ihres Algorithmus unter der GPL veröffentlichen (ich nehme an, das ist, was Sie gemeint haben), haben Sie den Vorteil, zu demonstrieren, dass Ihr Algorithmus wie beabsichtigt funktioniert, und jeder kann Ihren Quellcode überprüfen, um sicherzustellen, dass er nichts enthält "ungewöhnlich" wie schwere Bugs oder Malware. Vielleicht erhalten Sie einige Mitwirkende für weitere Verbesserungen. Und da Sie der Inhaber des Urheberrechts sind, können Sie Ihre Implementierung weiterhin unter einer anderen Lizenz veröffentlichen oder an andere verkaufen.
Eine andere Frage ist, ob es Ihnen Vorteile bringt , der erste zu sein, der diesen Algorithmus veröffentlicht. Als Erster könnten Sie versuchen zu verhindern, dass jemand anderes ein Patent auf diesen Algorithmus erhält, da Ihre Implementierung als eine Art Beweis dafür dient, dass Sie der Erfinder sind. Aber wie @Snowman in einem Kommentar richtig herausgestellt hat, funktioniert dies aufgrund der First-to-File -Richtlinie (im Gegensatz zur First-to-Invent-Richtlinie) vieler europäischer Patentvorschriften möglicherweise nicht.
Sie hindern Personen daran , Ihren Quellcode zu veröffentlichen oder ihn in Closed Source zu ändern, und nicht daran, ihn in einer kommerziellen Organisation zu verwenden. Sie sperren die Veröffentlichung als offene oder geschlossene Quelle unter einer anderen Lizenz als der GPL. Sie hindern Personen jedoch nicht daran, eine neue "Reinraum" -Implementierung Ihres Algorithmus unter einer willkürlichen Lizenz zu veröffentlichen, bei der es sich um eine Implementierung handelt, die nur aus Ihrer Beschreibung des Algorithmus besteht, ohne sich tatsächlich mit dem Quellcode zu befassen.
Obwohl die Gesetze vieler europäischer Länder Patente auf reine Algorithmen formell verbieten, haben viele Unternehmen diese Gesetze in der Vergangenheit umgangen, indem sie bestimmte Algorithmen als "computerimplementierte Erfindungen" deklarierten. Europäische Patentämter (AFAIK) haben in der Vergangenheit nicht so viele algorithmische Patente wie US-amerikanische Patentämter akzeptiert, obwohl sie im Laufe der Jahre Tausende von Patenten akzeptiert haben, die als Patente auf Algorithmen interpretiert werden können. Ob diese Patente tatsächlich vor Gericht stehen, ist eine andere Frage, aber wer es herausfinden will, muss dies in der Regel mit allen damit verbundenen Risiken vor Gericht stellen. Zwei der beliebtesten Gruppen von Beispielen wurden in den Kommentaren erwähnt, die Patente zur GIF-Bildkomprimierung und die Patente zur MP3-Komprimierung / Dekomprimierung, siehe hier für weitere Beispiele.
Wenn Sie also das Risiko einer Klage reduzieren möchten, bevor Sie eine Software veröffentlichen, die einen bestimmten Algorithmus enthält, sollten Sie wahrscheinlich prüfen, ob es jemanden gibt, der ein Patent darauf besitzt, auch in der EU.
quelle
Sie können keinen Algorithmus "kopieren". "Copyleft" ist für die Durchsetzbarkeit vom Urheberrechtsschutz abhängig, Algorithmen können jedoch nicht urheberrechtlich geschützt werden, sodass Sie keinen Algorithmus "copyleft" können. Mit anderen Worten, Ihre Frage basiert möglicherweise auf einer fehlerhaften Prämisse.
Das Urheberrecht kann nur verwendet werden, um eine bestimmte Implementierung zu schützen, nicht die Idee des Algorithmus. Sie könnten also eine bestimmte Implementierung eines Algorithmus mit urheberrechtlich geschützten Lizenzen (z. B. einer Lizenz im Copyleft-Stil) schützen, dies würde jedoch niemanden daran hindern, eine andere Implementierung desselben Algorithmus zu erstellen. Folglich gibt es keine Möglichkeit, einen Algorithmus zu kopieren.
Insbesondere basiert die GPL-Lizenz auf der Grundlage des Urheberrechts. Das Urheberrecht sagt (grob): Niemand kann Ihren urheberrechtlich geschützten Inhalt ohne Ihre Erlaubnis kopieren. In der GPL-Lizenz heißt es: Ich erteile die Erlaubnis, den urheberrechtlich geschützten Inhalt (den Code) unter bestimmten Bedingungen (den Bedingungen der "Copyleft" -Lizenz) zu kopieren. Für urheberrechtlich geschützte Objekte können Sie die "Copyleft" -Lizenz nach geltendem Urheberrecht booten. Für Dinge, die nicht urheberrechtlich geschützt sind, ist dieser Ansatz jedoch unbrauchbar. Das Urheberrecht schützt nur den kreativen Ausdruck, nicht die Ideen. Insbesondere schützt es keine Algorithmen.
Das Patentrecht ist eine andere Sache. In einigen Ländern ist es möglich, ein Patent für einen Algorithmus zu erhalten. Dies hängt stark von der Rechtsprechung und möglicherweise von den Besonderheiten Ihrer Situation ab. Im Allgemeinen hilft das Veröffentlichen Ihres Algorithmus möglicherweise dabei, einen Stand der Technik zu etablieren, der andere daran hindert, den Algorithmus zu patentieren. Die Details hierzu sind jedoch schwierig, und es empfiehlt sich, einen Anwalt zu konsultieren. Im Allgemeinen empfehle ich Ihnen, sich an einen IP-Anwalt zu wenden, wenn Sie sich in Bezug auf Algorithmuspatente umfassend beraten lassen möchten, da dies zu umfassend ist, um im Allgemeinen ohne Kenntnis dieser Informationen zu antworten.
quelle
Copyleft hat nichts mit Urheberrecht oder Patentschutz zu tun. Es bietet Ihnen, dem Inhaber des Urheberrechts, keinen Schutz, den Sie sonst noch nicht hätten.
Es hat jedoch alles mit Distribution zu tun . Copyleft schützt die Benutzer Ihres Codes, indem Sie und alle anderen, die ihren Code verwenden, aufgefordert werden, den gesamten Quellcode ihrer gemeinsamen Arbeit und alle Änderungen, die sie daran vornehmen, zu verbreiten. Über Urheber- oder Patentschutz kann nichts gesagt werden, außer, dass Sie Ihrem Benutzer bestimmte Rechte einräumen, die er sonst möglicherweise nicht hat, z. B. die Freiheit, DRM in GPL3 rückzuentwickeln.
quelle