成果が永遠にみんなのものであり続ける仕組みも含めてオープンソースという言葉を使おう
オープンソースという言葉がソフトウエア以外の分野に広まることで、良いことと悪いことがひとつづつある。
私は、1.を重視して、他分野に転用してこの言葉を広い意味で使ってきた。だから「お前が言うな」と言われそうだが、オープンソースという言葉を使う時には、2.についても考慮すべきだと思う。
オープンソースとは、本来は、開発の方式ではなくてソフトウエアのライセンスを分類する為の言葉だ。オープンソースの定義 という広く認められた文書があって、これに合致するライセンスによって配布されているソフトウエアがオープンソースである。
つまり、ソフトウエアは、それがオープンソースであるかそうでないか、何の紛れもなく客観的に判定できるのだ。だから「オープンソース的」なソフトウエアというものは存在しない。100%オープンソースであるか、全くオープンソースと言えないか、どちらかだ。
そういう意味で、オープンソースは、Web2.0とかクラウドコンピューティングのように、みんなが違う意味で好き勝手に使っているバズワード的な言葉とは全く違う。「重力」とか「加速度」とか「微分」とか、そういう定義がクッキリ定まっている理系的な概念である。
だから、ソフトウエアに関して「オープンソース」という言葉を使う時には、それ以外の意味で使ってはいけない。それ以外の意味でオープンソースを使うことは有害なことで批判されるべきことである。
問題は、ソフトウエア以外のことについて「オープンソース」という言葉を使う時に、この厳密性についてどう考えるかだ。
たとえば物理学の話をしている時に、「重力」という言葉を俺定義で違う意味で使ったら批判されるけど、日常用語というか文学的な表現では「重力」という言葉は、原義を離れて好き勝手に使われている。それについて物理学者が目くじら立てて怒ったという話は聞かない。
しかし、「オープンソース」という言葉は、ある目的の為に人為的に作られた言葉だ。そして、その目的はオープンソースの本質と密接に結びついている。それを神話的に表現してみたい。
「みんなで一緒にみんなの為のソフトウエアを作ろう」と広く世界に呼びかけた時、プログラマ達は、世界に二種類の人がいることを発見した。
- みんなのものに貢献することそのものが動機になって喜んで参加するたくさんの人たち
- その結果できた「みんなのもの」を俺のものにしようと悪知恵を巡らす少数の人たち
オープンソースの開発者は、ほとんどの場合、まず自分がそれを使う為に開発に参加する。だから、中心にあるのは「自分の為」という利己的な動機だ。ただ、それだけでは開発者の行動の全てを説明できない。割合はさまざまだが、コラボレーションの経験そのものが動機になっている部分もいくらかは必ずある。
人間は利己だけで行動するのではないというのが、第一の発見だ。この第一の発見を中心に、バザールモデルと呼ばれる開発の方法が自然と体系化されていった。
これによってみんなの小さな利他が集まると、そこにコスト無しで所有者のいない経済的な価値が生まれる。
プログラマ達が発見したもう一つのことは、その価値は、ほっておいたらほぼ確実に奪われるということだ。
オープンソースの成果物を商品として販売しようと試みた企業はたくさんあって、叩いても叩いてもボウフラのように無数に湧いてくる。
販売すること自体はかまわないのだが、販売しようとする企業は、必ずそれを独占しようとする。開発に貢献した人たちが使えなくなってしまう。
「みんなのものを俺のものにしようとする奴は、一定数絶対に出現する」というのが、オープンソースの第二の発見だ。
オープンソースとは単なる性善説ではない。性善説と性悪説が衝突して生まれたもので、そこに「オープンソースの定義」の意味がある。
これに合致するライセンスを持つプロジェクトなら、自分たちの貢献の成果を誰かに奪われることは絶対に無い。安心して貢献することができる。
バザールモデルが思ってた以上によく機能するということがオープンソースの本質であるのと同等に、バザールモデルだけでは、その成果が奪われるという経験則も同じくらい重要なオープンソースの本質だと私は思う。
成果が奪われない為の確かな仕組みが必要なのだ。
だから、バザールモデル、つまり性善説としてのオープンソースという言葉が独り歩きして、それだけがオープンソースという言葉の意味になってしまうことは望ましいことではない。ソフトウエア以外のことにオープンソースという言葉を使うことには問題がないが、性善説だけを取りあげてオープンソースということはよくない。
オープンソースという言葉を使うならライセンスのことにも言及すべきで、その分野にライセンスに対応する概念が無いのであれば、みんなの成果が奪われない仕組みとして何か別の物をペアにして、両者を一体としてオープンソースと呼ぶべきだ。
幸いなことに、ソフトウエアの世界では、著作権という制度を転用したライセンスという仕組みによって、大半のプログラマが信頼できる枠組みができた。それさえできれば後は特に努力しなくても自然に回っていく(少なくとも苦労に見合ったそれなりの成果は期待できる)が、その仕組みを維持していくことは大変なことで、だから、ここをおろそかにすると、強い反応があるのだと思う。
それが保証されていれば、ほとんどの人間は利他的に行動する。それが保証されてなければ、ほとんどの成果が誰かに奪われる。その信頼をどうやって築けばいいのか、ということが、オープンソースが現代社会に投げかけた最も重要な論点だろう。
関連記事