Kann ich mit der MIT-Lizenz einen Teil meines vorherigen schriftlichen Codes an den Arbeitgeber weitergeben, um mich zu schützen und mein Urheberrecht nicht zu verlieren?

17

Meine Situation:

  • Ich habe ein Rahmenwerk geschrieben, bevor ich meinen neuen Job angefangen habe. Ich besitze das Urheberrecht.

  • Es enthält wie jede Software eine ganze Reihe von Boilerplate-Logik. (duh!)

  • Ich möchte nicht das gesamte Framework in meinem neuen Job verwenden, aber ich muss einige Teile davon in einem ähnlichen Framework wiederverwenden , das ich für meinen neuen Job baue .

  • Es ist unpraktisch, die gesamte Logik von Grund auf neu zu implementieren / zu überdenken. Es ist viel Logik und Logik ist Logik, man kann es nicht viel anders machen. Wie viele verschiedene Versionen einer HashMap können Sie beispielsweise codieren? Ich wette, sie werden sehr ähnlich sein und die dritte Version kann behaupten, dass Sie das Urheberrecht der ersten Version verletzt haben. :(

  • Es ist unpraktisch, die API neu zu erfinden. Können Sie die API einer HashMap neu erfinden? Vielleicht können Sie ändern put(k,v)zu add(k,v), aber nicht viel mehr als das.

Meine Idee, mich und meinen vorherigen Code zu schützen:

Ich werde meinem Arbeitgeber mitteilen, dass ich das neue Framework auf der Grundlage eines früheren Frameworks erstelle, das ich unter der MIT-Lizenz geschrieben habe. Wenn ich also in Zukunft mein vorheriges Framework an einer anderen Stelle verwende oder sogar eine andere abgeleitete Version davon , die einige Teile des Codes enthält, die mit diesem neuen Framework, das ich jetzt für den Arbeitgeber erstelle, vergleichbar sind, können sie nicht sagen, dass ich es bin mit ihrem Code, den ich für sie geschrieben habe.

Meine Fragen:

  • Ich verteile meinen Code an niemanden. Ich muss meinen MIT-Lizenzcode an niemanden weitergeben, wenn ich das Urheberrecht besitze, richtig? Ich meine, kann jemand verlangen, dass ich meinen Code freigebe, von dem ich jetzt behaupte, dass er unter MIT-Lizenz steht? Es wäre nicht das Ende der Welt, und ich würde dem mit Sicherheit zustimmen, wenn eine rechtliche Bedrohung droht.

  • Ist diese Strategie sinnvoll? Mein letztes Ziel ist es, eine abgeleitete Version meines vorherigen codierten Frameworks zu verwenden, ohne das Urheberrecht daran zu verlieren. Gleichzeitig möchte ich diesen Code nicht als Open-Source-Projekt an irgendjemanden weitergeben. Ich habe andere Open-Source-Projekte, die ich frei verteile, aber dieses möchte ich für mich behalten, damit ich es für meine Jobs verwenden kann (nicht für Aufträge von Auftragnehmern).

Es ist , als ob Sie behaupten, Sie hätten ein Framework unter der MIT-Lizenz, ohne es tatsächlich zu verbreiten und / oder jemandem zu zeigen . Wenn es da draußen frei und leicht verfügbar ist, brauchen mich meine Arbeitgeber nicht mehr. Sie können den Code einfach nehmen und an andere weitergeben, um ihn zu verwenden.

Anmerkungen:

  • Ich habe dieses Framework als vorherige Erfindung aufgeführt, bevor ich mit dem Job begonnen habe.

  • Ich habe diesen Code nirgendwo veröffentlicht. Es befindet sich auf meinem privaten SVN-Repo, das ich auf meinem privaten Server hoste.

Meine Idee auf den Punkt gebracht:

  • Mein Plan ist es, den vorherigen Code für mich zu behalten, Teile davon in diesem neuen Framework zu verwenden, das ich für den Arbeitgeber erstelle, und dem Arbeitgeber mitzuteilen, dass es sich um eine Arbeit handelt, die von einem MIT-lizenzierten Framework stammt, das ich zuvor codiert und an niemanden verteilt habe. " Ich bin nicht gezwungen, eine Software zu vertreiben, die ich unter MIT-Lizenz codiert habe, oder? Wenn später ein Rechtsanspruch entsteht (hoffentlich nicht), kann ich die Lizenz sofort in alle Quellen einfügen und den Code anzeigen / freigeben.
JohnPristine
quelle

Antworten:

21

Ich war früher ein IP-Anwalt, habe also Erfahrung mit Lizenznehmern. Ich bin der Meinung, dass die Begriffe selbst ziemlich lesbar und verständlich sind, aber andererseits habe ich drei Jahre Jurastudium und einige Zeit als Anwalt zugebracht, bevor ich wieder zu meinem Verstand gekommen bin und wieder zum Hacken zurückgekehrt bin. Zumal ich derzeit kein aktiver Anwalt bin, ist dies sicherlich nicht die geringste rechtliche Beratung.

Beginnen wir mit der MIT-Lizenzsprache. Anschließend werde ich einige wichtige Punkte zum Verständnis von Open-Source-Lizenzen erläutern, Ihre Fragen beantworten und allgemeine Anmerkungen machen.

Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, kostenlos die Erlaubnis erteilt, mit der Software uneingeschränkt umzugehen, einschließlich der Rechte zur Nutzung, zum Kopieren, Ändern und Zusammenführen Sie dürfen Kopien der Software unter folgenden Bedingungen veröffentlichen, verbreiten, unterlizenzieren und / oder verkaufen und Personen, denen die Software zur Verfügung gestellt wird, gestatten, dies zu tun: (dass sie diesen Hinweis darin belassen. Ende.)

Ein paar wichtige Dinge mit den meisten Open Source-Lizenzen (einschließlich BSD, MIT, GPL) für Urheberrechtsinhaber sind:

  1. Die Lizenz ändert nichts an Ihrem Eigentum am Urheberrecht. Es ist eine nicht ausschließliche Lizenz, keine Abtretung oder Verwirkung des Eigentums. Die Verwendung einer OS-Lizenz bedeutet nicht, "etwas gemeinfrei zu machen", obwohl dies sicherlich ein Ansatz für Open Source ist.
  2. Nichts "zwingt" Sie, den Urheberrechtsinhaber, den Code in irgendeiner Weise zu veröffentlichen, nur weil Sie ihm eine Lizenz hinzufügen.
  3. Wenn Sie jedoch eine OS-Lizenz verwenden, können Sie niemanden daran hindern, Ihren OS-lizenzierten Code auf irgendeine Art und Weise öffentlich zu machen, die ausdrücklich in den Rechten dieser Lizenzen enthalten ist.
  4. Copyleft-Lizenzen (z. B. GPL-Lizenzen) erfordern, dass Vermittler (aber nicht die Eigentümer) ihre abgeleiteten Werke öffentlich und Open Source machen. Permissive (MIT, BSD) nicht. (Dies mag ein wenig vereinfachend sein, ist aber der wesentliche Unterschied.)
  5. Die meisten Open-Source-Lizenzen (z. B. MIT) enthalten keine "Rücknahmeklausel". Sobald jemand Ihren Code "erhalten" hat, hat er das Recht, ihn unter den Lizenzbedingungen, unter denen er ihn erhalten hat, dauerhaft zu verwenden.
  6. Sie können zukünftige Versionen Ihres Codes jederzeit unter einer anderen Lizenz vertreiben oder vollständig geschützt lassen. Das hindert niemanden daran, mit Ihrer früheren Open-Source-Version zu beginnen (vorausgesetzt, sie haben sie "erhalten"), ihre eigenen neuen Teile hinzuzufügen und sie zu verbreiten.
  7. Sie können einen Channel zum "Beziehen" früherer Versionen Ihres Codes entfernen, z. B. von github entfernen. Wie bereits erwähnt, hindert dies andere nicht daran, frühere Versionen, die Sie über Open-Sourcing bezogen haben, in irgendeiner Weise zu verwenden oder zu vertreiben.

Auf dieser Grundlage gehe ich auf Ihre Fragen ein.

Ich verteile meinen Code an niemanden. Ich muss meinen MIT-Lizenzcode an niemanden weitergeben, wenn ich das Urheberrecht besitze, richtig? Ich meine, kann jemand verlangen, dass ich meinen Code freigebe, von dem ich jetzt behaupte, dass er unter MIT-Lizenz steht? Es wäre nicht das Ende der Welt, und ich würde dem mit Sicherheit zustimmen, wenn eine rechtliche Bedrohung droht. ... Gleichzeitig möchte ich diesen Code nicht als Open-Source-Projekt an irgendjemanden weitergeben.

Als Inhaber des Urheberrechts müssen Sie keinen Code an Dritte weitergeben. Sie müssten solchen Anfragen nicht nachkommen (selbst wenn es sich um eine GPL handelte). Sie behalten alle Rechte. In der von Ihnen beschriebenen Situation würden Sie jedoch an Ihr neues Unternehmen verteilen und es unter einer Betriebssystemlizenz für immer lizenzieren. Ihr Arbeitgeber (eher ein ehemaliger Arbeitgeber) könnte Ihren Code in das Internet einfügen, und Sie wären nicht in der Lage, etwas anderes zu tun, als zu meckern.

Ich nehme an, Sie meinen "außer meinem Arbeitgeber". Wenn Sie es Ihrem Arbeitgeber nicht "als Open-Source" geben möchten und ihm alle Rechte geben möchten, die in dieser Lizenz enthalten sind, einschließlich der Weiterverteilung und der unbefristeten Nutzung in der von ihm gewünschten Weise, sollten Sie kein "Open-Source" verwenden Open Source Lizenz. Sie sollten es nur direkt unter den von Ihnen gewünschten Bedingungen lizenzieren. Bullet macht Sie darauf aufmerksam, was Sie wollen, und lässt Sie von einem Anwalt ein oder zwei Stunden in ein Absatzformular umwandeln. Oder schreibe es selbst. Lizenzen sind nur Verträge, die nur in Worte gefasste Vereinbarungen sind.

Mein letztes Ziel ist es, eine abgeleitete Version meines vorherigen codierten Frameworks zu verwenden, ohne das Urheberrecht daran zu verlieren.

Sie können das Urheberrecht nur verlieren, wenn Sie es an jemanden übertragen, exklusiv lizenzieren (einschließlich Ihres eigenen) oder verfallen lassen. Open Source Lizenzen sind keine davon. Sie können von Ihnen erstellte abgeleitete Versionen immer verwenden und die Ableitungen sogar anders lizenzieren oder alle Rechte behalten.

Ein vorrangiges berechtigtes Anliegen von Ihnen scheint jedoch zu sein, dass Sie auch in Zukunft das Urheberrecht behalten und Ihren Code verwenden können, ohne dass der Arbeitgeber den Code für sich beansprucht oder dass Sie nicht dazu berechtigt sind. Der Schlüssel dazu besteht darin, einen unwiderlegbaren Beweis dafür zu erbringen, dass A) Sie das Urheberrecht an Ihren früheren Arbeiten behalten und es ihnen unter X-Lizenzbedingungen zur Verfügung stellen (MIT funktioniert, wenn Sie mit dem oben beschriebenen Open-Source-Aspekt einverstanden sind). ) B) sie stimmen diesen Bedingungen zu, und C) was genau die vorherige Arbeit war.

Für (A) und (B) können Sie sie dazu bringen, etwas zu unterzeichnen oder schriftlich zuzustimmen, das auf die Lizenz verweist oder diese enthält, und dass sie verstehen, dass Sie den Code unter diesen Bedingungen auf den Tisch bringen. In Bezug auf (C) bin ich mir nicht sicher, wie das normalerweise gemacht wird, aber logisch. Wenn es nicht besonders umfangreich ist, können Sie den Code einfach ausdrucken und in Kopien der Vereinbarung, die Sie und Ihr Arbeitgeber unterzeichnen, in den Nachtrag aufnehmen. Behalten Sie Ihre Kopie mit ihrer Unterschrift. Wenn es zu groß ist, um praktisch gedruckt zu werden, scheint ein MD5-Hash hier nützlich zu sein. Vielleicht könnten Sie es als so etwas wie "die Zip-Datei mit dem Namen X im privaten Github-Repository /, (oder auf einer FTP-Site usw.) bezeichnen, die einen MD5-Hash von XXXXXX hat ... und per E-Mail an den Repräsentanten der Firma Y auf Z gesendet wurde Datum". Dann können Sie es per E-Mail an Ihren Vorgesetzten oder deren Anwalt oder an jemanden aus Ihrem persönlichen E-Mail-Konto senden. Selbst wenn er seine Kopie löscht, behält er seine und kann nicht behaupten, dass Sie den zukünftigen md5-Code-Hash vorhergesagt haben, der noch nicht geschrieben wurde . Das würde sie theoretisch davon abhalten, irgendetwas anderes auf der Straße zu beanspruchen.

Ben Roberts
quelle
Das ist großartig, Ben. Danke für Ihre Hilfe. Ich bin bereits angestellt, daher frage ich mich, ob eine E-Mail an meinen Vorgesetzten, in der die Situation und die Bedingungen der Lizenz von mir an sie angegeben werden, ausreichen würde. Dann würde ich jedem Quellcode, den ich einbringe, die Lizenz (Copyright (c) MY NAME - Lizenz, die der Firma blah, blah, blah gewährt wurde) hinzufügen. Was denkst du?
JohnPristine
E-Mails können durchaus ein Hinweis auf ein Verständnis oder eine Vereinbarung sein, z. B. einen Vertrag. Wenn Sie vorschlagen, den Code unter bestimmten Bedingungen an den Tisch zu bringen, und eine Person mit Autorität im Unternehmen dem zustimmt, scheint dies einen Vertrag gut genug zu schaffen. Ich denke, Ihre Vorstellung von den (C) / Lizenzbedingungen in jeder Datei ist auch gut. Die Frage ist, ob Sie (C) an Verbesserungen der Dateien behalten werden oder nicht. Andernfalls möchten Sie möglicherweise die Originalversionen der Dateien aufzeichnen, für die Sie die einzige Position (C) beibehalten, z. B. mit einer Zip-Datei und einem MD5-Hash, die an Ihren Manager gesendet wurden.
Ben Roberts
Super Antwort, danke. Sehr detailliert und formuliert.
Haylem
6

(Ich bin kein Anwalt.)

Ich sehe ein paar mögliche Probleme damit:

  • Im schlimmsten Fall müssen Sie nachweisen, dass Sie diesen Code geschrieben haben, bevor Sie dort zu arbeiten begannen, und dass Ihr Arbeitgeber bei der Verwendung in Ihrem Projekt bei der Arbeit wusste, dass er unter Ihrem Urheberrecht und der MIT-Lizenz steht . Da das vorrangige Ziel darin besteht, Ihr Urheberrecht beizubehalten und keine Umverteilungsbedingungen festzulegen, ist ein schriftlicher Vertrag mit Ihrem Arbeitgeber über die Verwendung Ihres zuvor geschriebenen Codes eine bessere Idee.

  • Sie sagen, Sie möchten Ihr Urheberrecht schützen und die Möglichkeit haben, "sogar eine andere abgeleitete Version davon" zu erstellen. Nun ist es wahrscheinlich, dass Sie in Ihrem aktuellen Job ein paar großartige Ideen haben und diese umsetzen. Es scheint mir, als würde dies unangenehm werden, wenn Sie Ihren Job verlassen und diese Ideen erneut implementieren, um eine neue Version Ihrer Bibliothek zu erstellen - da Sie mit dem Code, den Sie in Ihrem Job geschrieben haben, nicht tun können, was Sie wollen (und zu einem gewissen Grad die Ideen dahinter).

us2012
quelle
1) Ich plane, dies mit einer Lizenzdatei zusammen mit dem Unternehmenscode zu tun, aus der hervorgeht, dass diese auf abgeleiteten Arbeiten mit der MIT-Lizenz basiert. Um zu beweisen, dass es geschrieben wurde, bevor ich beabsichtige, mit meiner früheren Erfindungserklärung zu rechnen. 2) Ideen sind meines Erachtens nicht urheberrechtlich geschützt, es sei denn, es gibt ein Patent. Code ist urheberrechtlich geschützt. Die Herausforderung besteht darin, die Idee erneut einzugeben, erneut zu implementieren und erneut zu verwenden, ohne das Urheberrecht des ursprünglich implementierten Codes zu verletzen.
JohnPristine
2
Es ist richtig, dass Ideen nicht urheberrechtlich geschützt sind, sondern als "Geschäftsgeheimnisse" oder "Know-how" oder (falls patentierbar) als "patentierbare Ideen" oder als andere Art von "geistigem Eigentum" betrachtet werden können, für die Sie sich wahrscheinlich entschieden haben, dass das Unternehmen Eigentümer ist. Es ist eine Art chaotischer Bereich.
Ben Roberts
4

Ich bin kein Anwalt, aber das wäre meine Lösung:

  1. Geben Sie den Code unter der GNU GPL v3-Lizenz in einem öffentlichen Repository frei, das für alle sichtbar ist.

  2. Die GPL-Lizenz erlaubt anderen Personen nicht, Ihren Code in ihre proprietäre kommerzielle Software einzufügen und den Code zu schließen.

  3. Wenn der Code zu 100% von Ihnen erstellt wurde und keine Arbeiten von anderen oder abgeleitete Arbeiten enthält, können Sie Ihren Code über die GPL auch unter einer anderen Lizenz lizenzieren. In diesem Fall dürfen Sie ihn in Ihren Jobs für proprietäre kommerzielle Zwecke verwenden Code. Sie müssen jedoch Ihren Arbeitgeber zum Lizenznehmer dieser alternativen proprietären Lizenz machen.

  4. Diese Lösung würde beweisen, dass Sie Ihren Code geschrieben haben, BEVOR Sie den Auftrag angenommen haben.

  5. Sie können damit werben, dass Ihr Code unter einer proprietären Lizenz zum Verkauf (für Geld) verfügbar ist, und dann können sich interessierte Parteien an Sie wenden, um ihn zu kaufen.

ruben2020
quelle
Ich würde nicht 1 tun oder den Code in einem öffentlichen Repository freigeben wollen. Ich verstehe, dass dies der einfachste Weg ist, um zu beweisen, dass der Code zuvor geschrieben wurde. Ich denke, dass Software-Profis diese Art von Lizenz vermissen, eine, die es ihnen ermöglicht, ihren Code für einen Job zu verwenden, ohne ihn als Open Source zu definieren und ohne ihn zu verlieren. Wenn Sie alles wiederholen, werden die Codes ähnlich sein, dem kann man nicht entkommen. Und eine Reinraumgestaltung ist für einen Mitarbeiter unpraktisch.
JohnPristine
Ihre Lösung ermöglicht es Ihrem Arbeitgeber jedoch, Ihren Quellcode in einem öffentlichen Repository zu veröffentlichen. Ich halte es für unklug, eine Open-Source-Lizenz zu verwenden, wenn Sie nicht möchten, dass sie Open Source ist.
Markijbema
2

Gibt es einen bestimmten Grund, aus dem Sie Ihren Arbeitgeber nicht fragen können, ob Sie möglicherweise das Urheberrecht an dem allgemeinen Code behalten, den Sie für Ihr Framework schreiben (der ihm im Moment einen kostenlosen Code gibt), und ob Sie ihm alles geben können -du-willst-mit-ihm (einverstanden, das ist ganz wie MIT).

Wenn Sie jedoch Ihren aktuellen Code MIT lizenzieren, gibt es keinen Grund, warum Ihr Arbeitgeber die von Ihnen modifizierte Version von Open Source öffnen sollte. Sogar die LGPL würde das nicht lösen, solange der Code nicht "verteilt" ist.

Alles in allem klingt Ihr Deal nicht unangemessen: Sie haben einen Framework-Code und sind bereit, ihn an das Unternehmen zu spenden, solange Sie den Code behalten und ihn später für andere Projekte wiederverwenden können. Warum also? nicht fragen?

markijbema
quelle
Ja! Das ist immer der beste Ansatz, dem ich zustimmen muss. Sei einfach mutig und frage. Wenn sie denken, dass Sie komisch sind, wenn Sie das fragen, dann suchen Sie sich einen anderen Job. So einfach ist das. Im Leben dreht sich alles um Ehrlichkeit und Risiken. :)
JohnPristine
2

IANAL, fragen Sie einen echten Anwalt usw.

Ich denke, Sie glauben, dass Sie das Produkt nur dann an sich selbst lizenzieren können, wenn Sie über das Urheberrecht verfügen, und zwar zu denselben Bedingungen, zu denen Sie es an alle anderen lizenzieren. Dies ist falsch: Sie können es in jeder geeigneten Lizenz für sich selbst und für eine andere Lizenz für eine andere Person lizenzieren.

Das heißt, Sie können für das Unternehmen, das Sie einstellen möchte, eine spezielle Lizenz erstellen und die Software als separate Vereinbarung zur Verfügung stellen. Dies sollte natürlich von einem echten Anwalt durchgeführt werden.

Lassen Sie Ihr Unternehmen die separate Lizenz unterzeichnen, in der ausdrücklich angegeben ist, dass Sie das Urheberrecht besitzen und Sie ihnen bestimmte Rechte verleihen, nicht das Urheberrecht.

Was das sekundäre Problem betrifft, gibt es neben dem Open-Sourcing des Projekts noch andere Möglichkeiten, das frühere Datum zu belegen. Beispielsweise könnten Sie auf einem öffentlich zugänglichen Server eine Datei hosten, aus der hervorgeht, dass Sie diese Software zum angegebenen Datum tatsächlich geschrieben haben und die beispielsweise einige unterschiedliche Hashes der aktuellen Version oder sogar die verschlüsselte Version des Projekts enthält.

Dies bedeutet, dass Sie, wenn Sie einer rechtlichen Bedrohung ausgesetzt sind, dem Richter das frühere Verwendungsdatum nachweisen können, aber praktisch nichts über das Projekt preisgeben, außer dass Sie der Autor und das Datum sind, an dem Sie es preisgegeben haben. Sie sollten einen Anwalt über die mögliche Gültigkeit eines solchen Arguments konsultieren, aber ich glaube, dass es an den meisten Gerichten akzeptiert wird.

K.Steff
quelle