STAFFこんにちは、フロントエンドエンジニアの古沢です。業務で、効率化のためにJavaScriptのライブラリを追加しようと思ったのですが、MITやGPLといったソースコードのライセンスについて、詳しくは知っていなかったので、この機会に調べてみました。今回は主要な2つのライセンスについて調べてみました。MITライセンスGithubなどでよく見るのは、このライセンスですよね。有名なJavaScriptのライブラリjQueryはこのライセンスです。Wikipediaには以下のようにあります。Licenseとは次のようなライセンスである。このソフトウェアを誰でも無償で無制限に扱って良い。著作権表示および本許諾表示をソフトウェアのすべての複製または重要な部分に記載しなければならない。作者または著作権者は、ソフトウェアに関してなんら責任を負わない。自由に使っても良いが、使って問題が発生した場合にも、作成者に文句は言えない、ということですね。MITライセンスは、ライセンスの中でも非常に制約のゆるいライセンスのようです。GPLライセンスWikipediaには、以下のようにあります。GPLは、プログラム(日本国著作権法ではプログラムの著作物)の複製物を所持している者に対し、概ね以下のことを許諾するライセンスである。プログラムの実行プログラムの動作を調べ、それを改変すること(ソースコードへのアクセスは、その前提になる)複製物の再頒布プログラムを改良し、改良を公衆にリリースする権利(ソースコードへのアクセスは、その前提になる)一見、MITを同じような感じがしますが、MITライセンスとは、いったい何が違うのでしょうか?よくよく読み進めてみると、以下の様な一文がありました。GPLでライセンスされた著作物は、その二次的著作物に関してもGPLでライセンスされなければならないここが、MITのようなライセンスとの大きな違いのようです。MITの場合は、二次的著作物に関して、作った本人が自由にライセンスを変更することができますが、GPLライセンスの場合は、オリジナルがGPLならば、二次的著作物に関してもGPLライセンスでなければなりません。この仕組みのことをコピーレフトと呼ぶようです。オープンソースソフトウェアの活動を大きくしていく、ライセンスですね。まとめ今回は、オープンソース・ソフトウェアでよく使われる2つのライセンスについて紹介しました。いずれにせよ、業務で使う際にはしっかりと、そのプラグインを検証して、取り入れても問題ないか、確認はしっかりとしなければなりません。目の前の実装に夢中になってしまい、ライセンスのことは忘れがちになってしまいますが、イチ、エンジニアとして、しっかりと理解して使っていきたいと思います。自分でライブラリや、ソースを公開する際も、ライセンスを明記していくようにしていきたいと思いました。