OSSライセンスはむずかしい、のと同時にどんどん変わっていっているので学び続けないといけないというのがあります。
自分自身がOSSライブラリを公開しているので、ライセンスは何をつかうか、なぜというのをアップデートしていく必要があります。 一方で、仕事も同様かそれ以上に必要な情報を、誤解なく伝えられるようにありたいです。(難しい)
ということで、OSSライセンスを正しく理解するための本が気になったのでKindle版を購入して読みました。
あんまり本のレビューはしないのですが、たまには書きます。そして本を読んで改めて、自分のライブラリは今後もMITをベースにします。
tl;dr;
OSSライセンス、これからもしっかり管理していこうという気持ちになったので、本の目標は達成できてそうです。
著作権とOSSライセンスの関係、使用と利用、例えがちょいちょいあるのは考えを整理しながら読むのに役になった、すごい。
— guitarrapc_tech (@guitarrapc_tech) November 13, 2021
個別のライセンスに関しては手薄だけど、GPL/AGPL だけはそこかしこに出る。著者の意見も基本的にそっちよりなので、まぁそうか。
面白かったけど、あんまりオススメしないかな。
どう読み進めたのか
この本はコードが出てこない一方、自分の考えをフラットにしつつまとめる必要があるので、Notionを使って読み進めつつメモを取る形式で進めました。
Kindleで読んでたのですが、文章をカーソル選択したりマークもできないのでこれは厳しい。電子本なのになにもできない悲しさ。語句の検索もできないのはつらいですね。(ことさらNotionにメモを書く必要があった)
大体6時間ぐらいかかったので、文量に対して時間かけて考えながら読んだようです。
気づき
OSSライセンスが各国の著作権法に根差しているというのは、そういえばと思いつつおぼろげだったことでした。(著作権といいつつどこの? というスタートラインが曖昧だったといえる)
OSSライブラリを「使用する」と「利用する」を基点として、明確に言語化されて例が示されているのは整理されます。(例えば、クラインアントとしてのバイナリ提供は? サーバーとしての提供は? 社内向けサービスは? デバッグで使うツールは? 負荷試験で使うツールは? などのよくあるものも含めて) よく考えてみても、利用と使用を明確に区別しているのは、説明するにあたって大事だけど意識していなかった。意識しなくても大きく解釈ずれることがないけど、伝えやすいと感じました。
「AGPLに関して著作権法上、利用といえるか疑問」(P113)、という著者の意見が素直に書かれていて、実際これってどうなんですかね? 私も疑問です。
日本における利用、使用の裏付けは、著作権審議会マルチメディア小委員会ワーキング・グループ中間まとめ (平成10年2月文化庁) に依るんですね。これはOSSライセンスで調べていても、たびたび出てくる出典ですが、ほかに出てこないのはそんなもの? 他の裏付けを見かけないのが気になります。平成10年は古いので、もう少し新しいものや別の切り口があるといいんですが。
分類がいわゆる「コピーレフト型、準コピーレフト型、非コピーレフト型」ではなく「BSDタイプ、GPLタイプ、LGPLタイプ、MPLタイプ」になっているのはなるほどでした。言ってることに大きな違いはないんだけど、これもわかりにくいと感じました。 permissiveかどうかに焦点を当てた視線も同じ本で触れられているといいんじゃないかなぁと思いつつ、発散して難しそう。 分類いろいろあるけど、個人的にはPublic Domainなどの著作権放棄に触れた本が読みたくなりました。
リバースエンジニアリングに関して、利用規約として改変の目的のためのリバースエンジニアリングは許可しつつ、機能分析のためのリバースエンジニアリングは禁止できるというのは新鮮でした。目的別に指定するという発想がなかった。
ライセンス管理の例として、ライセンス以外にライセンスタイプを書くことで対処しやすくするというのは良いと思いました。このライセンスだからXXXではなく、ライセンスのタイプだからXXXとするのは運用しやすい。
バージョンによってライセンスが変わるは、ここ最近もちょいちょいあるので結構難しいですね。アップデートしたらライセンス変わりますからね。調べないと気づけないのはまぁいいとして、変わったら強制的に気づく仕組みが欲しい。こういうのは人間のやることじゃないので仕組みで何とかしたいところです。Dependabotも脆弱性に応じて更新できてもライセンス変更をあれで気づくのは無理だしなぁ。ふと思ったけど、licensed使ってないんですがどうなんでしょう。
気になったこと
フラットな立場1で書かれた本ではないと感じました。それは自由なのでよいのですが、フラットな文章が読みたいと思った時には手に取りにくい本です。
著者の主張が強く、不満に思っていることを本の中で文面にちょいちょい出されているので、うっと敬遠する気持ちが増します。主語が大きく、強い言い回しが多いので、軽く読みすすめようと思って結果疲れました。私はこういうの苦手なので、人にすすめることは難しいです。
静的リンクと動的リンクによる違いに触れてないので、ちょっとこれだけだと片手落ちに感じました。 コンパイルとしての例があるので、静的リンクとしてはいいのだけどリンクの違いに触れてないので、この本だけで察するのはできなさそうです。
一部の主張は、10行前と矛盾していることを言っているように思ったので気になります。
出典不明なケースが数例あったのと、出典を示しつつ和訳のみがあるものがあり、解釈あってるかの再考証がむずかしいと思いました。出典がURL抜きで不明なものはちょっと困ります。
時々例示が古く、今それを例にするのかと思い残念です。(プリンタドライバーの例とか)
併せて読みたい
- 個人の好みはおいて、あるいはどのOSSライセンスがいいなどといった信条から距離をおいた立場↩