MITライセンスを使用して、以前に書いたコードの一部を雇用主に提供して、自分自身を保護し、著作権を失わないようにできますか?


17

私の状況:

  • 新しい仕事を始める前に、フレームワークを書きました。私は著作権を所有しています。

  • 他のソフトウェアと同様に、その中には定型的なロジックがたくさんあります。(だよ!)

  • 私は新しい仕事でフレームワーク全体を使いたくありませんが、新しい仕事のために構築している同様のフレームワークでその一部を再利用する必要があります。

  • すべてのロジックをゼロから再実装/再考することは実用的ではありません。それは多くの論理であり、論理は論理であり、あなたはそれを大きく変えることはできません。たとえば、HashMapの異なるバージョンをいくつコーディングできますか?それらは非常によく似ており、3番目のバージョンは、最初のバージョンの著作権を侵害していると主張できます。:(

  • APIの再発明を試みることは実用的ではありません。HashMapのAPIを再発明できますか?に変更put(k,v)することもできますがadd(k,v)、それ以上ではありません。

自分自身と以前のコードを保護するための私の考え:

MITライセンスの下で作成した以前のフレームワークに基づいて新しいフレームワークを構築していることを雇用主に伝えます。したがって、将来、私が以前のフレームワークを他の場所、またはその派生バージョンで使用し、現在雇用主のために構築しているこの新しいフレームワークに似たコードの一部がある場合、彼らは私が言うことはできません私が彼らのために書いたコードを使用します。

私の質問:

  • 私は自分のコードを誰にも配布していません。著作権を所有している場合、MITライセンスコードを他の人に配布する必要はありません。つまり、MITライセンスの下にあると今主張しているコードをリリースするように誰かに要求できますか?それは世界の終わりではないだろうし、私は確かに法的脅威の下でそれを行うことに同意するだろう。

  • この戦略には意味がありますか?私の最終目標は、以前のコード化フレームワークの派生バージョンを、著作権を失うことなく使用できるようにすることです。同時に、このコードをオープンソースプロジェクトとして誰にも配布したくありません。私は自由に配布する他のオープンソースプロジェクトを持っていますが、これは自分の仕事に任せたいので、請負業者の仕事ではなく自分の仕事に使用したいと思います。

これは、実際に誰にも配布したり表示したりせずに、MITライセンスの下でフレームワークを所有していると主張するようなものです。無料で簡単に入手できるものであれば、私の雇用主はもう私を必要としません。彼らはコードを取得し、それを他の誰かに渡して使用することができます。

ノート:

  • 仕事を始める前に、このフレームワークを以前の発明として挙げました。

  • このコードはどこにもリリースしていません。プライベートサーバーでホストするプライベートSVNリポジトリにあります。

一言で言えば私のアイデア:

  • 私の計画は、以前のコードを保持し、雇用主のために構築しているこの新しいフレームワークでその一部を使用し、それを以前にコード化して誰にも配布していないMITライセンスフレームワークから派生した仕事であることを雇用主に伝えることです」 MITライセンスの下でコーディングしたソフトウェアを強制的に配布する必要はありませんか?後で何らかの法的請求が発生した場合(できればそうではない)、すぐにすべてのソースにライセンスを貼り付けてコードを表示/リリースできます。

回答:


21

私はかつてIP弁護士でしたので、ライセンスの経験があります。用語自体はかなり読みやすく、理解しやすいと思いますが、それから再び、3年のロースクールと弁護士の時間に悩まされてから、再び知恵を得てハッキングに戻ります。特に現在私は積極的な弁護士ではないので、これは確かに法的助言として意図されたものではありません。

MITライセンス言語自体から始めましょう。次に、オープンソースライセンスを理解するためのいくつかの重要なポイントを示し、質問に対処し、高度な観察結果を提供します。

これにより、このソフトウェアおよび関連ドキュメントファイル(「ソフトウェア」)のコピーを取得するすべての人に、使用、コピー、変更、マージの権利を含むがこれらに限定されないソフトウェアを許可する許可が無料で付与されます。 、ソフトウェアのコピーの発行、配布、サブライセンス、および/または販売を行い、ソフトウェアの提供先に以下の条件に従って許可します:(この通知を残す。)

著作権所有者向けのほとんどのオープンソースライセンス(BSD、MIT、GPLを含む)で重要なことは次のとおりです。

  1. このライセンスは、著作権自体の所有権を変更するものではありません。その非独占的なライセンスであり、所有権の譲渡または没収ではありません。OSライセンスを使用することは、「パブリックドメインに何かを入れる」ことではありませんが、それは確かにオープンソースへの1つのアプローチです。
  2. 著作権所有者であるあなたに、ライセンスを添付したからといって、コードを公開することを「強制」するものは何もありません。
  3. しかし、OSライセンスを使用している場合、OSライセンスのコードを「取得」した人がそれを何らかの方法で公開することを防ぐことはできません。
  4. コピーレフト(例:GPL)ライセンスでは、取得した作品(所有者ではなく)が派生作品を公開し、オープンソースにする必要があります。Permissive(MIT、BSD)はサポートしていません。(これは少し単純化されているかもしれませんが、本質的な違いです)
  5. ほとんどのオープンソースライセンス(MITなど)には「テイクバック」条項はないため、誰かがコードを「取得」すると、それを受け取ったライセンス条項の下で永久に使用する権利があります。
  6. コードの将来のバージョンを別のライセンスでいつでも配布することも、完全に独自のコードとして保持することもできます。だからといって、誰かがあなたの以前のオープンソースバージョンから始めて(「入手した」と仮定して)、自分の新しいパーツを追加して配布するのを止めることはできません。
  7. コードの以前のバージョンの「取得」チャネルを削除できます。たとえば、githubから削除します。ただし、前述のように、オープンソース化した以前のバージョンを他の人が使用したり配布したりすることは、決して妨げられません。

それに基づいて、あなたの質問に移ります。

私は自分のコードを誰にも配布していません。著作権を所有している場合、MITライセンスコードを誰にも配布する必要はありません。つまり、MITライセンスの下にあると今主張しているコードをリリースするように誰かに要求できますか?それは世界の終わりではないだろうし、私は確かに法的脅威の下でそれをすることに同意するだろう。...同時に、このコードをオープンソースプロジェクトとして誰にも配布したくありません。

著作権所有者は、コードを誰にも配布する必要はありません。そのような要求を尊重する必要はありません(たとえGPLであっても)。すべての権利を保持します。ただし、あなたが説明する状況では、新しい会社に配布し、OSライセンスの下でそれらに永続的にライセンスを供与します。あなたの雇用主(おそらく元雇用主)はあなたのコードをインターネットに貼り付けることができ、不平を言うこと以外にそれについて何かをすることはできません。

あなたは「私の雇用主以外の誰でも」という意味だと思います。「オープンソースとして」雇用主にそれを与えたくない場合、そして彼らが望む方法での再配布と永久使用を含む、そのライセンスに含まれるすべての権利を彼らに与えたくないなら、あなたは使用しないでくださいオープンソースライセンス。あなたが望む条件で彼らに直接ライセンスを与えるべきです。箇条書きは、あなたが望むものを指摘し、弁護士にそれらをパラグラフ形式に入れるために1時間か2時間請求させます。または自分で書いてください。ライセンスは単なる契約であり、言葉で言えば単なる契約です。

私の最終目標は、以前のコード化フレームワークの派生バージョンを、著作権を失うことなく使用できるようにすることです。

著作権は、誰かに割り当てるか、独占的にライセンスを取得するか(自分自身を除外することを含む)、または没収しない限り、失うことはできません。オープンソースライセンスはこれらのいずれでもありません。作成した派生バージョンをいつでも使用でき、派生のライセンスを変更したり、すべての権利を保持したりすることもできます。

しかし、あなたの主な正当な懸念は、雇用者がコードを自分のものであると主張することなく、またはあなたがそうする権利の外にいることなく、今後も著作権を保持し、コードを使用できることです。これの鍵は、A)前の著作物の著作権を保持し、Xライセンス条項に基づいて著作物を提供しているという反論の余地のない証拠を作成することです(上記のオープンソースの側面に問題がなければ、MITは動作します)。 )B)彼らはこれらの条件に同意し、C)何が、まさに以前の仕事でした。

(A)と(B)については、ライセンスを参照または含むものに署名または書面で同意させ、それらの条件の下でコードをテーブルに持ってきていることを理解してもらうことができます。(C)については、これを行うための標準的な方法がどうなるかはわかりませんが、論理的です。それほど大きくない場合は、コードを印刷して、あなたとあなたの雇用主の両方が署名した契約書のコピーの補遺に含めることができます。署名をコピーして保管してください。大きすぎて実際に印刷できない場合は、md5ハッシュが役に立つと思われます。「プライベートgithubリポジトリ/(またはftpサイトなど)のXという名前のzipファイルは、XXXXXXのmd5ハッシュを持ち、Zのreprentative Yに電子メールで送信されました」日付"。その後、あなたのマネージャーまたはその弁護士、またはあなたの個人的なメールアカウントから誰にでもそれを電子メールで送信することができます。 。理論的には、彼らが将来、他の何かを主張するのを防ぐでしょう。


すごいね、ベン。ご協力いただきありがとうございます。私はすでに雇用されているので、私からマネージャーへの状況とライセンスの条件を記載したメールをマネージャーに送るだけで十分かと思います。それから、私は持ち込む各ソースコードにライセンス(著作権(c)MY NAME-COMPANYなんとか、なんとか、なんとかするライセンス)を含めます。どう思いますか?
ジョンプリスティン

電子メールは、確かに理解や同意、例えば契約の証拠になる可能性があります。特定の条件の下でコードをテーブルに持ち込むことを提案し、会社の権限を持つ人がそれに同意する場合、それは十分に契約を作成するようです。各ファイルの(C)/ライセンス用語についてのあなたのアイデアも良いものだと思います。問題は、ファイルの改善を維持する(C)かどうかです。そうでない場合は、Zipファイルとmd5ハッシュをマネージャーに送信するなどして、保持するファイルの元のバージョン(C)の記録を作成することをお勧めします。
ベンロバーツ

素晴らしい答え、ありがとう。非常に詳細で定式化されています。
ヘイレム

6

(私は弁護士ではありません。)

これにはいくつかの潜在的な問題があります。

  • 最悪の事態になった場合、そこで作業を始める前にこのコードを書いたことを証明する必要があります。また、仕事でプロジェクトで使用したとき、雇用主はそれがあなたの著作権とMITライセンスの下にあることを認識していました。これの主な目標は、再配布条件を設定するのではなく、著作権を保持することなので、以前に作成したコードの使用に関する雇用主との書面による契約は、より良いアイデアのようです。

  • あなたはあなたの著作権と「派生版」を構築する能力を保護したいと言います。現在、あなたの現在の仕事中に、いくつかの素晴らしいアイデアを持ち、それらを実装する可能性があります。あなたが仕事を辞め、それからあなたのライブラリの別のバージョンを構築するためにそれらのアイデアを「再実装」するとき、これは毛深いことになるように思えます-あなたがあなたの仕事で書いたコードであなたがやりたいことはできないので(そしてある程度、その背後にあるアイデア)。


1)ライセンスファイルと会社のコードを使用してこれを行うことを計画しており、MITライセンスの派生作業に基づいていることを示します。私が以前の発明フォーム宣言で数えるつもりである前に、それが書かれたことを証明するために。2)特許がない限り、アイデアには著作権はありません。コードは著作権で保護されています。課題は、実装した元のコードの著作権を破ることなく、アイデアを再入力/再実装/再利用する方法です。
ジョンプリスティン

2
アイデアは著作権で保護されていないが、「企業秘密」、「ノウハウ」、または(特許性がある場合)「特許可能なアイデア」、または会社が所有していると思われるその他の種類の「知的財産」と見なすことができるということは事実です。そのような面倒なエリア。
ベンロバーツ

4

私は弁護士ではありませんが、これは私の解決策です。

  1. GNU GPL v3ライセンスの下で、誰でも見ることができる公開リポジトリでコードをリリースします。

  2. GPLライセンスでは、他の人があなたのコードを取得し、それを独自の商用ソフトウェアに入れてコードを閉じることは許可されていません。

  3. コードがあなたによって100%作成されたものであり、他の人の作品または派生した作品が含まれていない場合、GPLでは別のライセンスの下でコードのライセンスを許可することができます。コード。ただし、雇用主をこの代替所有権ライセンスのライセンシーにする必要があります。

  4. このソリューションは、仕事を引き受ける前にコードを書いたことを証明します。

  5. コードが所有権のあるライセンス(販売)の下で利用可能であることを宣伝し、興味のある団体があなたに連絡して購入することができます。


私は1をしたくない、または公開リポジトリでコードをリリースしたくないでしょう。私はそれがコードが以前に書かれたことを証明する最も簡単な方法だと理解しています。ソフトウェアの専門家はこの種のライセンスを失っていると思います。これは、オープンソースにしたり失うことなく、仕事にコードを使用できるライセンスです。すべてをやり直すと、コードは似たものになり、そこから逃れることはできません。また、従業員にとってクリーンルームの設計は実用的ではありません。
JohnPristine

ただし、ソリューションを使用すると、雇用主は公開リポジトリでソースコードを公開できます。オープンソースにしたくないときにオープンソースライセンスを使用するのは賢明ではないと思います。
markijbema

2

あなたがあなたのフレームワークのために書いた一般的なコードの著作権を保持することは可能かどうか雇用主に尋ねることができない特定の理由がありますか(それは今すぐそれらにいくつかの無料のコードを与えます)、そして彼らにあなたができるすべてを与えます-you-want-with-it(同意、これはMITに非常に似ています)。

ただし、現在のコードMITのライセンスを取得している場合、雇用主が変更されたバージョン(あなたによって変更された)をオープンソースにする理由はないため、あまり解決しないと思います。コードが「配布」されていない限り、LGPLでさえこれを解決しません。

すべての取引はすべて理不尽に聞こえるわけではありません。フレームワークコードがあり、コードを保持し、後で他のプロジェクトで再利用できる限り、それらを会社に寄付してもかまいません。聞かない?


うん!それは常に私が同意しなければならない最良のアプローチです。勇気を出して聞いてください。彼らがあなたにそれを尋ねるのがおかしいと思うなら、別の仕事を探し始めてください。それと同じくらい簡単。人生はすべて誠実さとリスクです。:)
JohnPristine

2

IANAL、本物の弁護士などに聞く

まず第一に、あなたが著作権を持っている場合、他のすべての人にライセンスを付与するのと同じ条件の下で自分に製品をライセンスすることができると信じていると思います。これは間違っています。適切なライセンスで自分にライセンスを供与し、別のライセンスで他の誰かにライセンスを供与することができます。

つまり、あなたがあなたを雇おうとしている会社のために特別なライセンスを作成し、それらのソフトウェアを別の契約として利用できるようにすることができます。もちろん、これは本当の弁護士によって行われるべきです。

会社に別個のライセンスに署名してもらいます。これには、著作権があり、著作権ではなく特定の権利を付与していることが明示されています。

二次的な問題については、プロジェクトのオープンソース化以外に、以前の日付を証明する他の方法があります。たとえば、公開されているサーバーでファイルをホストすることができます。ファイルには、指定された日付に、たとえば現在のバージョンのいくつかの異なるハッシュ、またはプロジェクトの暗号化されたバージョンを含む、実際にこのソフトウェアを書いたことが記載されています。

これは、法的脅威にさらされている場合、裁判官に使用の前日を証明することができますが、あなたは著者であり、あなたがそれを明らかにした日付を除いて、プロジェクトについて事実上何も明らかにしません。このような議論の有効性について弁護士に相談する必要がありますが、ほとんどの裁判所で受け入れられると思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.