私は現在、JavaScriptで書かれたソリューションに取り組んでいます。 2つのバージョンをリリースする予定です。
どのライセンスが私に役立つのだろうかと思っています。これまでの私の考えは次のとおりです。遠慮なく訂正してください。
あなたはGPLの下でそして商用ライセンスの下でソフトウェアを完全に自由にライセンスすることができます。 GPLのコピーレフト要件は著作権所有者には適用されず、GPLにソフトウェアのコピーと変更を許可する必要がある人にのみ適用されます。
これがデュアルライセンスの仕組みです。
もちろん、詳細については弁護士に尋ねる必要がありますが、ウィキペディアのページはまともな紹介です: http://en.wikipedia.org/wiki/Dual_licensing
編集:
「GPLのコピーレフト要件は著作権所有者には適用されない」という私の声明を明確にするために:これは単なる基本的な著作権法です。著作権法(および関連法)に基づき、著作権所有者はすべての権利を有します。ライセンス(GPLなど)に基づいてコードをリリースすると、著作権所有者が付けたい制限とともに、これらの権利の一部が他の人に付与されるだけです。
GPLによって課せられた制限は拘束力があるだけです。なぜなら、ライセンスがなければ、著作権法のためにソフトウェアをコピーおよび変更することは許可されないからですまったく-。これが「コピーレフト」の背後にある考え方です。もちろん、これはすべて著作権者には当てはまりません。
GPLから直接FAQ FSFから:
Q:GNU GPLで書いたプログラムをリリースしたいのですが、非フリープログラムの同じコード。
A:フリーでないプログラムをリリースすることは常に倫理的に汚染されていますが、法的にこれを行うことに支障はありません。コードの著作権所有者である場合は、さまざまな非独占的ライセンスの下でさまざまな時期にコードをリリースできます。
出典: http://www.gnu.org/licenses/gpl-faq.html#ReleaseUnderGPLAndNF
編集2:
もう1つの説明:デュアルライセンスのもの全体は、あなたが著作権所有者である場合にのみ機能しますすべてのコードについて。あなたが他人からのコードを受け入れ始めるとすぐに、あなたはwill彼らが彼らの貢献のために選んだどんなライセンスにも拘束されます。つまり、GPLライセンスのコードをコードベースに受け入れる場合、これらの貢献を含むバージョンもGPLライセンスである必要があります。
これを回避する唯一の方法は、寄稿者があなたに著作権を割り当てることです-そのため、多くの組織は寄稿者からの著作権の割り当てを要求しています(例: FSFはこれを行います )。もちろん、寄稿者はあなたに著作権を割り当てたくないかもしれません-その場合、あなたは彼らを説得するか(例えば彼らに支払うことによって)、あなたの非GPLバージョンから彼らの寄稿を除外する必要があります。
あなたは著作権所有者であるため、どのライセンスを選択しても、自分のソフトウェアで実行できることに制限されることはありません。その点で、MITまたはGPLの選択はほとんど宗教的なものです。GPLまたはMITのいずれかを使用しても、その上に商用製品を構築できます。他の誰かが追加したものと同じ機能を持っていても。
ただし、誰かがelseコードを変更した場合、それを盗んで独自の商用バージョンに組み込むことはできないことに注意してください。それがオープンソースのすべてではありません。いくつかのクールな新機能の独自の実装を作成することはできますが、他のコードを盗むことはできません。
私にとって、ライセンスの選択はほとんどイデオロギー的です。誰かが実際にあなたのコードを取得し、それを改善し、そしてどういうわけかあなたの将来の利益を盗む可能性は非常に小さいです。いつかそのようなことが起こったに違いないと思いますが、それはおそらく非常にまれです。本当に心配な場合は、弁護士に相談するか、コードをオープンソースにすることを再検討する必要があります。あなたがそれが費用の価値があると思わないならば、おそらくあなたのソフトウェアは他の人がそれを盗んでそれから利益を得たいと思うほど十分に価値がありません。
私個人としては、MITまたはBSDを選択する必要があると思います。他の人がソフトウェアを使用する方法を制限しないので、おそらくそれがあなたのソフトウェアを最も無料にします。それが最も利他的だと思います。アプローチ、そして利他主義の感覚からコードを提供していないのなら、なぜそれをオープンソースにするのですか?それは私の意見です。私は彼らの選択に同意しなくてもGPLを選択する人々を尊重します。