ライセンスは、私が特に注意を払っていないものです。必要ないと感じたのでしょうね。しかし、私はそうすべきだと思うしかないわけではありません。
プログラマーとして私が知っておくべき最も一般的なライセンスはどれですか?また、提供されたそれぞれの簡単な説明を含めることができれば役立ちます。
ライセンスは、私が特に注意を払っていないものです。必要ないと感じたのでしょうね。しかし、私はそうすべきだと思うしかないわけではありません。
プログラマーとして私が知っておくべき最も一般的なライセンスはどれですか?また、提供されたそれぞれの簡単な説明を含めることができれば役立ちます。
回答:
MITライセンス
Aleister CrowleyのTwitterの概要は、「あなたが何をしようとするか(あなたがたに信用を与えたなら)」です。
MITライセンスの正確な形式を簡単に見つけることができるので、ライセンスの目的について説明します。
これは寛容なライセンスです。つまり、他の人があなたのコードを簡単に使用できるということです。特に、彼らはあなたのコードを使ってお金を稼ぐことができます。ユーザー側のライセンス義務は、単にソフトウェアのすべてのコピーまたは重要な部分に著作権表示を含めることです。
これは、他の誰かがあなたのソフトウェアを使用して何かを構築し、そのイノベーションを共有しないことを気にしない場合に、ソフトウェアを最大限に活用するために使用するライセンスです。
クリエイティブ・コモンズ
これらのライセンスのいずれかに基づいて、無料のグラフィックコンテンツがかなり見つかります。
CCライセンスで見た最高の例は、アプリケーション(iPhoneやDroidアプリなど)で使用される無料のフォント、アイコン、画像です。
私はBoost Software Licenseの大ファンです。ソフトウェアまたは派生著作物がバイナリ形式で配布される場合、明示的に帰属を必要としないことを除いて、他のほとんどのコピーレフト以外のOSSライセンスと非常に似ています。私は自分の暇なときにD標準ライブラリのコードを開発しているため、これは私にとって大きな問題です。標準ライブラリコードは、ユーザーが多数の属性を追加することなく、ライセンスの観点から「そのまま」機能する必要があります。したがって、標準のライブラリの一部ではない場合でも、寛容なオープンソースライセンスでリリースしたい場合は、他の誰かが私の標準ライブラリのコンテキストで使用するコードを借りたい場合に備えて、Boostライセンスを使用する傾向があります。 。
検索する大きなオープンソースの1つは、一方でBSDとMIT(許容、クレジットを与えるだけでよい)とGPLとApache(同様に共有、より多くの制限)です。
プラトニックは私にとって理想的だと感じているので、オープンソースの作業にはMPLを好みます。MITやBSDライセンスとは異なり、変更や更新を利用可能にする必要があるため、オープンソースとしての作業を保護します。一方、GPLのようにプロジェクトで何が可能で何が不可能かを伝えようとするバイラルライセンスではありません。(プロジェクトの任意の場所に1つのGPLライブラリを配置すると、すべてがGPLである必要があります。これは、使用した爪を作った人が家全体に対する権利を持っていると主張するIMOに少し似ています。)
パブリックドメインは、企業がパブリックドメインコードをアプリケーションに組み込んでから、弁護士がすべての貢献者からパブリックドメインプロジェクトへのリリースを取得するまで、すばらしいものです。良い例はSQLiteです。SQLiteはパブリックドメインであり、MITのような消費者に優しいライセンスでリリースされていないという点で珍しいものです。
参照 SQLiteのライセンスページ。
どういうわけか私は聞いたことがない 比較的最近までAffero GPL(AGPL)。
GPLの共有と共有の側面のバイラルな信仰を楽しんでいる場合は、サーバーサイドで実行される可能性が高いコードにこれを使用することをお勧めします。それは人々がGPLコードベースの独占的な派生物を作って、それから人々がそれらの人々とコード変更を共有することなしに人々が使ういくつかのサーバーでそれを実行することができないことを規定します。
(GPLスタイルのライセンスは、GNUエコシステムの一部である大規模なプロジェクトには意味があります。しかし、@ MasonWheelerが指摘するように、JavaScriptライブラリなどの小さなものに軽薄に使用することは、あまりにも強引です。あなたの家の権利を主張します。)