一般的なコピーレフトと寛容なソフトウェアライセンスを読むのに少し時間を費やしました。アプリケーションまたはアルゴリズムの作成者が、自分の個人的な偏見に基づいて誰が製品を使用/配布できるかを広く指定できるライセンスはありますか?
人々がデュアルライセンスを使用して営利団体に許可ライセンスの支払いを強制するか、プロジェクトのソースコードの配布を強いられることを理解していますが、たとえば、「このコードは自由に使用できます。変更され、インダストリーx [私のフリーソフトウェアの使用に値しないと見なした]に関与していないエンティティによって配布されました。
私はそのようなライセンスやライセンステンプレートを見つけることができなかったので、少なくとも一部のプログラマーは彼らの製品の倫理的影響について心配していると思いました。 AIパスファインディングアルゴリズムを作成して、武装ドローンや北極の流氷モデルを誘導しないようにし、許容スタイルのライセンスを使用しながら、海底石油掘削に使用されないようにすることは可能ですか?
この質問はフリーソフトウェアコミュニティでかなり定期的に出てきますが、これは理解できます。フリーソフトウェアを(多くの場合は暇なときに)作成して一般に寄付する人々は、悪いことではなく、より良いことのために違いを生み出したいので、通常これを行います。したがって、あなたのクラフトが非倫理的であると考える方法で使用されないようにすることは、考えるのが自然なことです。
しかし、Free Software Foundationは、ソフトウェアライセンスを使用して人々がソフトウェアを使用する方法を制限する試みに明確に反対しています。 Richard Stallmanが記事を書いた 「プログラムがプログラムを実行する自由を制限してはならない理由」 ここで、ソフトウェアライセンスを使用してソフトウェアの使用を倫理的なアプリケーションに制限することは失敗する運命にあると確信している理由を説明する相互運用性を損ない、正当なユーザーの有用性を制限するだけです。彼の記事は非常に説得力があり、もちろんオリジナルを読むことをお勧めしますが、私がここで彼の主な議論であると私が思うことを(私のコメントとともに)言い換えています。
ソフトウェアを違法行為に使用できないようにすることは、せいぜい無意味です。これらの活動は、ライセンスの内容にかかわらず、常に違法です。ライセンスは、著作権所有者が持つソフトウェア権利のユーザーにのみ付与できます。それは彼の記事では明示的に書かれていませんが、不道徳な活動を違法とすることは政治的にキャンペーンするほうが理にかなっていると私は結論し同意します。
ソフトウェアが不道徳な活動(RMSが拷問を例に挙げている)に使用されることを禁止することは、ほとんどの州が、興味がある限り、好きなことをほとんど行うことを許可する特別な法律を持っているため、効果的ではないでしょう国家安全保障の。私はこれは多少誇張されていると思いますが、軍事使用のそのような法的免除が多くの州に存在するか、立法権がそれらを望ましいと考えれば通過することができるのは確かに本当です。おそらくもっと関連性の高いのは、機密情報にアクセスせずに作品が使用されていることを証明するのに苦労することです。著作権法は多くのプレーヤーによって法外なことを正当化するために拡張されていますが、「州を訴えることができるように機密情報」は、著作権法によって世界中のどの州でも許可されるものです。あなたは確かにあなたのソフトウェアを最も恐ろしいことのために使うかもしれない独裁的な外国を告訴することに成功しないでしょう。
そのような制限が著作権を介して強制可能であるかどうか、そして可能である場合、それが有益であるかどうかは明らかではありません。私はドイツについてのみ話すことができますが、そのようなライセンス条項はドイツの裁判では無効になると確信しています。これは良いことだと思います。著作権法はすでに他の人があなたに強いることができるものにおいては非常に強力です。最後に必要なのは、さらに多くの制限です。
ソフトウェアライセンスがソフトウェアの使用を「倫理的な目的」に制限する場合、ひどい混乱が生じ、ソフトウェアに互換性がなくなります。これは確かに可能性がありますが、信頼できる組織によって発行された事実上の標準の「倫理的公衆ライセンス」を作成できなかった理由はわかりません今日のGPLの場合と同様に、多くのプロジェクトで使用されています。私が見ているのは、そのような一般的なライセンスが広く受け入れられ使用されるためには、すでに非倫理的であると合意されているものを非倫理的であると定義するために煮詰めなければならない可能性が高いため、民主主義の公法によって禁止されているためです。それは多くを提供しないでしょう。さらに重要なのは、そのようなライセンスは現在存在しないため、自分でロールする必要があり、これは常に悪い考えです。
このようなライセンスを使用するソフトウェアプロジェクトが存在します。ただし、これらはOSIの定義では無料ライセンスとは見なされません。
さらに重要なことは、これらのライセンスの執行可能性は、それらが言及されるのを目にするたびに強く疑問視されており、私の知る限りでは、法廷でテストされたことはありません。このようなライセンスを使用しても、象徴的な価値以上のものはありません。
ここでの問題の一部は、Ixrecがコメントで指摘しているように、そのような用語が非常にあいまいであることです。自動運転車をガイドするアルゴリズムを開発するとします。倫理的?多分。次に、このアルゴリズムを使用して、自分で運転するトラックを構築します。まだ倫理的。そして今、これらのトラックは軍の収容所への補給や薬物の輸送に使用されています。あなたのコードがそこで使用されているため、これは許可されていないと言うでしょうか?たぶんそれらは人身売買にも使用されていますが、これは間違いなく非倫理的ですが、それをどのように制御しますか?トラックの製造元にもトラックにライセンスを付与するよう要求しますか?
最後に、平均的な軍事または石油会社には、アイデアを採用して再実装するだけの十分なお金があるので、それが使用したくないアルゴリズムである場合でも、とにかく運が悪かったのです。とにかく軍事コード(ロケットやドローンのガイダンスソフトウェアなど)は通常いずれにせよ分類されているため、自分のコードが使用されたことをどのようにして知ることができますか?
現在の市場を見ると、ソフトウェアの用途について規定されたライセンスがすでにあります。
[...]咬傷または体液との接触を介して伝染する広範囲のウイルス感染の発生(米国疾病対策センターまたは後継者団体により認定)。これにより、人間の死体が生き返り、生きている人間の肉、血、脳や神経組織、組織化された文明の崩壊につながる可能性があります。
おそらく同様に奇妙な条項を持つ他のライセンスがいくつかあるでしょう。したがって、倫理的根拠に基づいて差別するライセンスは、ライセンスが奇妙な規定を持つのは初めてではありません。
あなたは好きなライセンスを書くことができ、著作権侵害のライセンスの条件に違反してあなたのコードを使用した人を訴えることができます。
たとえば、「業界Xでは使用しない」という用語は、ライセンスをGPLライセンスと互換性がないものにします。配布したい(または偶発的に配布される可能性がある)GPLコードにソフトウェアを含めることはできません。私の会社のクローズドソースコードにあなたのコードを含めることはできませんでした。法務部が私を殺してしまうからです(つまり、誰かが私たちのソースコードに対して何百万もの提供をした場合、あなたの制限のためにそれを販売できない可能性があります)。少なくとも私たちの法務部門は「ライセンスをチェックするのに5,000ドルかかります。自分でコードを書くのにいくらかかりますか?」
X産業の倫理について懸念している場合は、X産業を差別するライセンスを作成するのではなく、別の方法でアプローチすることができます。デュアルライセンスアプローチで、無料の商用バージョンを作成できます。次に、一部の反業界X組織に寄付を行います。これは、完全な商用バージョンの形式か、商用バージョンからの利益の一部のカットのいずれかです。
これは完全に合法であり、あなたが信じている理想をサポートしています。少なくともあなたが信じている何かをサポートしているので、プロ業界Xの群衆の人々でさえあなたを尊敬します。その理想に対抗するのではなく、理想をサポートしているのが見られる方が常に良いです。
私は進歩的な慈善団体向けのソフトウェア製品を開発する権限を持つ会社で働いています。オープンソースにしたいライブラリをいくつか作成しましたが、OPのように、見つけられるライセンスに満足できませんでした。
Just World License を作成しました。これにより、少なくとも、サポートする慈善団体の目標に反する者がコードを使用することがなくなります。 (これが 記事 背後にある理由の説明です)
以下では、コメントと回答で提起された倫理的ライセンスに対する異論をいくつか取り上げます。そうすることで、GPLと比較します。これは、強力なイデオロギーの観点から描かれたライセンスの例でもあり、ライセンスが単なる法的文書以上のものであり、その側面についても有益だからです。私たちは受け入れるようになりました。
なぜ倫理的ではないか
私が読んだ異議の多くはそのような免許の強制力に関連していますが、倫理的免許の目的は法廷でそれを強制することではないと私は主張します。実際、法廷でのテストを望まないほとんどの法的文書は高価で苦痛です。はい、あなたはそれらを明確かつ明確にする必要がありますが、ほとんどの人は法的文書を起草することはありません。
人々が(正しく)指摘したように、大企業が制限にもかかわらずあなたのソフトウェアを使用したい場合、彼らはおそらくあなたを法的書類に埋め込むためのリソースを持っています。
しかし、これはGPLと同じで、GPLも書かれていないため、FOSS開発者は大企業にオープンソースコードの誤用を訴えることができます。はい、それは法的に特定されており、強制することは可能ですが、それは著者がそれを意図していた主要な目的ではありませんでした。彼らはアイデアを広めるためにGPLを作成しました-ソフトウェアとそのソースは自由に共有されるべきだというアイデアです。
同様に、倫理的なライセンスを作成する際には、私たちのソフトウェアは世界の改善に使用されるべきであり、開発者は私たちのソフトウェアの使用方法に責任を持つことができるという考えを広めたいと考えています。
実施可能性
とはいえ、倫理的なライセンスを行使できることも主張します。 JSLintの非常にあいまいなライセンス条項があっても、IBMは、執筆者に 悪用にJSLintを使用する への明示的な許可を求めるように施行を十分に懸念していました。
はい、大きなタバコは私たちのコードを使用してそれについて静かに保つことができますが、発見されるか口笛を吹かれる恐れと、執行の可能性は、それがリスクを負う価値がないと判断するために、悪いことをしているほとんどの会社にとって十分です他のコードを探してください。
違法なものの使用を制限しても意味がありません
同意した。
この理由から、また、一部の国では人々の自由をひどく制限する法律が非常に悪いため、倫理的ライセンスを作成する際に、私たちは違法行為を排除しないことにしました。それらに反対して活動している活動家が私たちのソフトウェアを使用したい場合、彼らは私たちが現れて停止を追加し、彼らのトラブルに抵抗することを心配することなく心配するのに十分です。
それが悪い場合、それを止める法律があります
<WhatsApp経由でのメール送信についてMark Zuckerbergに尋ねる議員の必須ビデオを挿入>
残念ながら、私たちの国会議員は、テクノロジーはもちろんのこと、社会規範の変化への対応に関して、最も遅い動きの1つです。手始めに、それは2018年であり、棚には現在 実際のスレーブ によって製造された製品があります。
倫理を定義できません
世界は、しばしばそうであるように作成されているほど灰色ではありません。
私たちのライセンスは、人々が私たちのソフトウェアを(とりわけ)将来の世代のために惑星の状態を台無しにすることが知られている行動を取ること、奴隷労働を利用すること、人種差別を促進すること、または人々の生活の負荷を浪費させるために行動心理学をハッキングすることを防ぎます広告をクリックします。
これらは正確ではありません トロリーの問題 。
倫理は主観的です
はい、でもこれは悪いことではありません。
私たちの最も重要な決定のいくつかは主観的です。興味があれば、事故で感情的中心が損傷し、 もはや機能できなくなった である人々の理由や客観性が完全に損なわれていないにもかかわらず、本当に興味深い話があります。
哲学的に少ない。 FOSSソフトウェアを採用し、変更をリリースせずに改善するのは間違っているという考えも主観的な立場です。これはGPLの重要な部分を形成する主観的な視点であり、ソフトウェア開発の世界の誰もがそれが良いことであることに同意できるわけではありませんが、この意見の違いはまだFOSSコミュニティを衰退させていません;-)
それは不便でしょう
まあ、それは一種のポイントです。企業が倫理的に疑わしい行為のためのソフトウェアを作成している場合、倫理的なライセンスは不便であることが意図されています。
同じことがいくつかのFOSSライセンスについても言えます。現在、一部の企業では、製品にGPLコードが必要ないため、ライセンスチェッカーなどのツールを使用しています。
すべての著者が独自の倫理の定義を投入し、非標準の倫理ライセンスが大量にある場合、これは非常に困難で不便になりますが、一般的なオープンソースの場合と同様に、少数の標準ライセンスに同意することができますそれが不便になる理由はありません。
悪い会社は自分で書くだけです
良い。人と私たちの未来に害を及ぼすことから利益を得たい場合は、リソースを無駄にさせてください。
自分がリリースした小さなライブラリを立ち入り禁止にすることは、大規模な悪企業を実質的に阻害することになると自分自身をからかうつもりはありませんが、より大きなプロジェクトがそうした場合はどうなりますか?
たとえば、Apache’s Hadoopは、石油およびガス会社が事業を支援するために使用しています より収益性が高い 気候災害を回避するためにドアを閉める必要があるときに。
Apache Foundationがそのような使用が 公益 に含まれないと判断した場合、ミッションはリソースを想定しており、ライセンスでそれを成文化することを決定した場合、企業は別の何かに頼る必要があります。高価な独自のソリューション。私たちの未来に害を与える会社の最終的な利益にこの抗力は良いことでしょう。
それは新しいアイデアです
これが言ったように、 Just World License は新しいアイデアです。足りないと思いますが、改善のためにフィードバックやプルリクエストをお待ちしています。
軍事使用を明確に禁止するライセンスがいくつかあります。
http://mindprod.com/contact/nonmil.html
軍事アプリケーションを明示的に禁止する「オープンソース」ライセンス
これらの種類の問題は、GPLなどの他のライセンスと互換性がなくなることです。したがって、表面上は「リーズナブル」に継ぎ目があるかもしれませんが、使用法が損なわれる可能性があります。
CryEngineのライセンス は、「ゲーム」の開発のみを許可し、特に以下を禁止します。
- 軍事プロジェクト
- ギャンブル;
- シミュレーション(技術、科学、その他);
- 理科;
- 建築;
- ポルノ;
- 深刻なゲーム。
深刻なゲーム:
1.10。 「シリアスゲーム」、つまり娯楽のみを目的として開発されたのではなく、トレーニング、シミュレーション、科学、建築などの目的で開発された「ゲーム」。
もちろん、それは、例えば軍事請負業者からより多くのお金を得ることができ、別の免許を取得する必要があるだけなので、倫理的な理由ではなく、ビジネス上の理由による可能性が高いです。また、教育的なゲームが許可されていないというちょっとくだらないこともあります。
ソフトウェアの使用を特定の目的に制限するライセンスは、定義上、フリーソフトウェアライセンスではありません。 GNUが考慮する 4つの基本的な自由 の最初の違反です。
- 目的を問わず、プログラムを自由に実行できる自由(自由0)。
GNUの non-free software licenses のリストにはいくつかありますが、率直に言って、世界はnon-freeソフトウェアのライセンシーでいっぱいです。良い例は JSONライセンス で、これには以下が含まれます。
ソフトウェアは悪のためではなく、善のために使用されるものとします。
このようなライセンスはGPLおよびLGPLと互換性がないことに注意してください。つまり、GPLまたはLPGLソフトウェアでそのライセンスを使用してソフトウェアを使用しようとすると、結果として得られる成果物が合法的に誰かに配布されない可能性があります。
一般に、誰かの自作のソフトウェアライセンスを調べて、自分のソフトウェアを使用できるかどうかを確認する必要が本当にありません。私は自分の時間をうまく使うことができます。ソフトウェアを公にリリースする目的で使用できる3つのライセンスがあることがわかりました。
あなたが何か他のものを使っているなら、私はすでにあなたに少しイライラしています。 GNUのライセンスリスト に載っていないほど不明瞭な場合は、自分で分析する必要があります。通常は、より優れたライセンスを持つ他のソフトウェアを見つけるだけです。
ソフトウェアを「悪」に使用しようとする人は、ライセンスの使用制限についてあまり気にしないはずです。