先日、GPL にライセンスされた商用サービスのソースコードが開示されないというツイートを見かけました。我々エンジニアの仕事柄、切っても切れないライセンス・著作権の話をしたいと思います。なお、私は知的財産権の専門家ではないので誤っている場合もあります。ご了承ください。
ソースコードは著作物?
著作物は著作権法第二条1にて「思想又は感情を創作的に表現したものであって、文芸、学術、美術又は音楽の範囲に属するもの」と定義されています。また、著作物の例示として、第十条2で「小説、脚本、論文、講演その他の言語の著作物」や「プログラムの著作物」が挙げられています。今読まれているこの記事や我々エンジニアが日頃書いているソースコードも、法律で守られる著作物ということです。しかし、「創作的」とあるように、ありふれた数行の誰でも書けるような簡単なソースコードは創作性があるとは言えないでしょう。アプリやライブラリとして、創作性のあるとしてなれば、著作物と言われるものになるでしょう。
引用
この記事でも他の著作物を利用しています。第三十二条3で明記される引用「公表された著作物は、引用して利用することができる。この場合において、その引用は、公正な慣行に合致するものであり、かつ、報道、批評、研究その他の引用の目的上正当な範囲内で行なわれるものでなければならない。」です。また、第四十八条4にて、出所を明示しなければならないとあります。
大学のレポートや卒業論文などを経験された方なら、次の指導を受けたことがあるかと思います。
- 正当な範囲内で利用する
- 出所の明示をする
簡単に言うと、他人の著作物をまるで自身が書いたように思わせてはダメ。他者の著作物を侵害してはいけません。
我々が開発する場合、サードパーティのライブラリ利用は欠かせません。これら条項が適切かは分かりませんが、利用したライブラリのライセンス表示をしっかりと明記するなどして、他人の著作物を適切に扱いましょう。
ソースコードのライセンス
著作権法を取り上げましたが、第六条5からこの保護対象は日本国民が作成したものに限られています。だからといって、外国人の方が作成されたソースコードを好き勝手に使っていいわけではありません。同条の三項にて条約を批准した他国の著作物も保護対象にされています。国内著作物と同様に扱いましょう。
またそれぞれのライセンスに従いましょう。代表的なライセンスを簡単に紹介します。それぞれの詳細は とほほのライセンス入門 さんが丁寧にまとめられているので、そちらを見てください。
MITライセンス
マサチューセッツ工科大学を発祥とするライセンスです。改変や再配布が自由にでき、比較的緩い条件になっています。私も個人開発する場合はこのライセンスを適用することが多いです。
- このソフトウェアを誰でも無償で無制限に扱って良い。ただし、著作権表示および本許諾表示をソフトウェアのすべての複製または重要な部分に記載しなければならない。
- 作者または著作権者は、ソフトウェアに関してなんら責任を負わない。
BSDライセンス
カリフォルニア大学バークレー校を発祥とするライセンスです。MITライセンスと同様に改変や再配布は自由に行えますが、いくつか種類があり、初期開発者のクレジット表示が必要なものもあります。
GPLライセンス
上記のライセンスとは考え方が異なります。コピーレフトとも呼ばれる自由なソフトウェアの普及を目的としています。GPLライセンスのソフトウェアを組み込んだ場合、その成果物を配布する際に開発コードを公開する必要があります。一部の商用サービスがこのライセンスのソフトウェアを利用した場合でも、ソースコードを開示しないライセンス軽視がしばしば問題になります。
まとめ
現在の開発では、他人のソースコードやオープンソースコードの利用は欠かせません。さまざまな著作物を利用して、開発は成り立っています。それらをリスペクトして、適切に利用しましょう。
-
著作権法第二条 https://elaws.e-gov.go.jp/document?lawid=345AC0000000048#Mp-At_2 ↩
-
著作権法第十条 https://elaws.e-gov.go.jp/document?lawid=345AC0000000048#Mp-At_10 ↩
-
著作権法第三十二条 https://elaws.e-gov.go.jp/document?lawid=345AC0000000048#Mp-At_32 ↩
-
著作権法第四十八条 https://elaws.e-gov.go.jp/document?lawid=345AC0000000048#Mp-At_48 ↩
-
著作権法第六条 https://elaws.e-gov.go.jp/document?lawid=345AC0000000048#Mp-At_6 ↩