似非GPL

私はBSDライセンスはあまり好きでない。

いや、他人がやるのは結構なことだと思うし、大いにやって欲しいと思うし、BSDLを批判する気は全くないが、自分の使うライセンスとして好きでない。いかにクレジットがつけられるとは言え、自分の書いたコードを他人が勝手にプロプライエタリに出来るのは、どうも釈然としないものがある。料簡が狭いと言われりゃそれまでだけど、「せっかく俺はオープンにしてやってんだから、お前もオープンでやれよ」と言いたい。「俺の書いた分のfeedbackくらい俺によこせよ」と言いたくなる。

同じ理由で、商売にも向かないと思う。GPLならプロプライエタリライセンスとセットのライセンスにして商売するという手もあるが、BSDLでそれは出来ない。元々「緩い」ライセンスなのだから、「許してやるから金を出せ」が難しいわけだ。そんなわけで、積極的に使いたいとは思わないし、似たようなものでBSDLとGPLがあったら、迷わずGPLの方を選ぶ。まぁあくまでも自分の「趣味」の問題ではあるけど。

こないだから経理システムとして「助太刀」を使っている。これ自体のライセンスはGPLなのであるが、上位の製品はプロプライエタリのままである。似たようなライセンスポリシーのものは、SugarCRMなんかもそうだ。商用とGPLと両方あるのだが、商用の方が上位バージョンというライセンス体系のものは、わりとありがちだ。

こういったソフトに対して、何らかの「貢献」をしたいと思うかと言えば、全く思わない。理由はBSDLを嫌うのと同じだ。自分がオープンで書いたコードが勝手に商用製品に使われる可能性があるということが釈然としないわけだ。BSDLのように第三者までもが「勝手の商用化」したりはしないが、オリジネータはそれが出来る。つまり、オリジネータにとってはBSDLと同じなのだ。

ちょっとの改良くらいならそんなことはどうでもいいが、たとえば「GPL版をうんと拡張して商用版と同等あるいはそれ以上にした」みたいな改良は、公開される版としてはマズいだろう。となると、そういった改良はオリジネータは排除しようとするはずだ。さらに「同等以上」であれば、商用版にだけコード吸収をする… ということだって出来るし、それ自体は何の問題もない。商用版とGPL版の両方をオリジネータが握り続ける限り、この問題は存在し続ける。

原理的には、「自分の修正した部分はGPLだ」と主張することもあるだろうが、新たな機能をつけたとかでなければ、「従属する著作物」ということになり、独立でライセンスの主張はできない(難しい)。だから、「貢献者」が「オリジネータによる勝手な商用化」を止めることは、法的には不可能と言っても良い。「道義的にどーよ」という話はあるだろうが、道義は法律でも契約でもない。

これが、MySQLあたりのように、「ライセンスの違う版はあるけど、それはあくまでもライセンスだけで、中身は同じ」というものであれば、そういった釈然としなさ加減は随分と軽くなる。自分の「貢献」は万人のためのものになるし、それが「商品価値を上げるだけのもの」ではなくなるからだ。自分の書いたコードを勝手にプロプライエタリにされることは納得出来ないから、その部分はひっかかるが、「プロプライエタリだけ」にされるわけじゃないからまぁ許せる。本当は「デュアルライセンスによる商売」よりは「サポートがついて商用版」になっていれば、もっと「貢献」の敷居は下がるんだけど。

あるいは前述のように、「商用版はオリジネータが握っているけど、GPL版は誰かに移管している」みたいなもの(RHELとFCみたいなもんだ) なら、「こっちはこっちで楽しませてもらうぜ」も出来る。「GPL版を大幅拡張して商用版を越えたものにする」なんてのは、考えるだけでワクワクする。

まぁそんなわけで、「商用版とGPL版」があって、かつ「商用版とGPL版の機能が違う」ものは、事実上BSDLと同じ「釈然としない感」がある。いや、もっと釈然としないかも知れない。何にせよ、そういった体系になっているものは、GPLそのものというのとは、似て非なるライセンスに「事実上」なってしまう。