「オープンソース」の二つの意味

最近、「オープンソース」という言葉の意味を巡る論争が再燃したようだ。混乱が生じるのは、「オープンソース」という概念自体に、性格の異なる二つの要素が詰め込まれているからではないだろうか。

法的状態としてのオープンソース

ソフトウェア開発の文脈における「オープンソース」という言葉は、あるガイドライン(「オープンソースの定義」)を満たしたライセンスの下で公開されているソフトウェア、という意味である。先行した「フリーソフトウェア」という概念の言い換えとして生まれたものだ。これを、「法的状態としてのオープンソース」と呼ぶことにしよう。

「オープンソースの定義」が試みているのは、ソフトウェアの第三者による利用、特に改変や配布に関して著作権者が課す条件に対し、一定の基準を設けるということである。これにより、法的状態としてのオープンソースが保証されているソフトウェアであれば、個別にはどのようなライセンスが適用されていても、大筋では同等の自由度を持った利用法が認められる。ゆえに、著作権者の顔色を窺わなくとも、誰でも安心して自由に利用できるようになる。これは不特定多数によるソフトウェアの円滑な開発には大変資するもので、開発者や配布者といったソフトウェアの本格的な利用者にとっては非常に重要なことだ。近年では、ソフトウェア以外のコンテンツ一般の文脈においても、このコンセプトが応用されるようになってきた。その一例が、クリエイティヴ・コモンズである。

開発形態としてのオープンソース

しかし、今も昔も多くの人々が「オープンソース」と言われて思い浮かべるのは、エリック・S・レイモンドが書いた「伽藍とバザール」であり、LinuxカーネルやMozilla開発の成功譚であろう。そこで語られるのは、情報が公開されていれば、世界中の人々が自発的に協力することにより、優れたソフトウェアが生み出されるとか、あるいは「何か知的資産が生まれそうな萌芽がネット上に公開されると、そうしたことに強い情熱を持った『志向性の共同体』が自然発生して、そこに『集合知(ウィズダム・オブ・クラウズ)』が働き、有志がオープンに協力してある素晴らしい達成をなし遂げる」というような、麗しきストーリーである。すなわち、ここで語られるオープンソースとは、不特定多数を巻き込んで(ソフトウェア)開発を進めていくという方法論、いわゆる「バザール型」開発モデルのことだと言える。こちらを、「開発形態としてのオープンソース」と呼ぶことにしよう。

事情によく通じた人は、前者こそが正しいオープンソース理解で、後者は誤解だと考えることが多い。後者は前者の一帰結に過ぎないからである。それは決して間違いではない。間違いではないが、しかし一方で、今となっては「正しい」とも言い切れないのではないか、と個人的には思う。

オープンソース・キャンペーンの目的

そもそもエリック・S・レイモンドらオープンソースの主唱者が、「フリーソフトウェア」に代わり「オープンソース」という概念を新たに打ち出すことで狙っていたのは、熱心な開発者ならざる一般ユーザ層への、(法的状態としての)オープンソースソフトウェアの普及と浸透だった。そのためには、ユーザの自由だのライセンスだのといった重要だが迂遠な話より、何かもっと分かりやすい、キャッチ―な話が必要とされた。そこで、彼らが「オープンソース」という話を一般向けに売り込む際強調したのは、「こうすればソフトウェアの開発はうまく行く」というような、具体的な方法論や成功譚、すなわち後者のほうだったのである。

レイモンドらのキャンペーンは大成功を収め、「オープンソース」なる言葉は人口に膾炙した。また、確かにオープンソース・ソフトウェアは、それまで以上に広く使われるようになった。これは偉大な達成である。しかし、その達成に大きく貢献したのは、前者の意味でのオープンソースではない。明らかに後者である。結果として、今となっては「オープンソース」のイメージにはどうしても後者が含まれてくるし、それを真に受けた人を責めることは出来ないと私は思う。すなわち「オープンソース」という概念は、事実上その最初期から、本質的にはレイヤーを異にする二つの要素を含んだ二面的なものだったと考えるべきなのである(ちなみに、「フリーソフトウェア」や「クリエイティヴ・コモンズ」という言葉には、オープンソースで言えば前者の意味合いしかない)。オープンソースを巡る議論が往々にして錯綜しがちなのは、おそらくこのへんに問題があるのではないだろうか。だとすれば、少なくともオープンソースについて本格的に議論する際には、自分がどちらの要素について言及しているのか、常に意識し、明示したほうが良いと私は思う。

ちなみに、レイモンド自身は、「伽藍とバザール」続編の「ノウアスフィアの開墾」「魔法のおなべ」を読めば分かる通り、最初から後者のほうを重視していた。だから、彼に限っていえば、ご都合主義で突然宗旨替えをしたというわけではない。また、海外でもソフトウェア開発やライセンスとは全く無関係の分野において「Open Source~」と表現されることはままある。ただ、私が知る限り、オープンソース・ライセンスが適用されていないソフトウェアをオープンソースであると呼ぶケースは、洋の内外を問わず近年激減したのではないかと思う。開発形態としてのオープンソースだけで「オープンソース」と呼んでしまうことはあるが、少なくとも法的状態としてのオープンソースが何であるかについては議論の余地がない、ということだろう。それはそれで喜ばしいことである。

二つの「オープンソース」の関係性

ところで、多くの開発者は、前者が後者の前提だと思っているようだ。開発形態としてのオープンソースのメリットを享受するためには、法的状態としてのオープンソースも確保しなければならない、というように。これもまた、決して間違いではないし、そう言い切れれば話は簡単なのだが、実はそれほど自明ではないし、慎重な検討を要する論点ではないかと私は思う。というのも、かつての「オンライン・ソフトウェア」の多くやある種の商用ソフトウェア製品、あるいは現在のウェブサービスの多くがそうであるように、情報やソースコードを(法的状態としての)オープンソースとしては公開していないプロプライエタリなソフトウェアであっても、開発(の少なくとも一部)は開発形態としてのオープンソース「的」に行われているものは、いくつも存在するからである。

例えば、かつて人気のあったVz Editorはオープンソース・ソフトウェアではなかったが、ソースコードがおまけで付いてきたので、開発元以外にも熱心な開発者が存在し、パソコン通信を介して活発に情報や成果の交換を行っていた。最近で言えば、ソースコード等はオープンソースにしないが、APIは公開し、自社のウェブサービスを利用したサードパーティ・ソフトウェアの開発を推奨しているところは多い。さらに、ソフトウェアのみならずコンテンツ全般に目を向けてみれば、コミケや「電車男」、ケータイ小説、MADムービー、まとめサイトの類を見れば明らかなように、著作権の扱いが曖昧だろうがグレーだろうが、自発的協業は(それがおもしろければ)起こるときは起こる。裏を返せば、ライセンスがどうだろうと起こらないときは起こらない。法的状態としてのオープンソースは、開発形態としてのオープンソースの成功という点に限って言えば一条件に過ぎず、前提条件とも必要条件とも言い難いし、ましてや必要十分条件ではないのである。

では、法的状態としてのオープンソースは開発形態としてのオープンソースと全く関係ないかといえば、もちろんそんなことはない。上記のような、前者を欠く後者のみの「オープンソース」は、たとえソースコード等は公開されていたとしても、結局のところ権利者の完全に恣意的なコントロールの下で、見た目だけ成立しているに過ぎない場合が多いからである。グレーはどこまで行ってもグレーだ。よって、権利者の都合が悪くなれば、一方的につぶされてしまう。ようは、改変も配布も一時的にお目こぼしされているに過ぎないのである。そこで、せっかく開発形態としてのオープンソースのおかげで優れた成果物が生み出されたとしても、権利関係がグレーであるがゆえにお蔵入りしてしまったり、開発が止まってしまったり、あるいは何の関係もない権利者に成果を独占されてしまう、というようなことは大いにあり得るのだ。

法的状態としてのオープンソースが確保されてさえいれば、権利者は利用者がライセンス条件に明確に違反しない限り、たとえ権利者と利用者がいがみあっていたとしても、利益が相反する関係だったとしても、改変や配布などの許諾を後から恣意的に取り消すことはできない。A社が公開したオープンソースのコードを、競争相手のB社が大手を振って利用する、というようなことが日常茶飯に起きているのは、まさに法的状態としてのオープンソースが確保されているがゆえである。そしてこのことは、不毛な足の引っ張り合いを防ぎ、ソフトウェアの開発効率向上には明らかにプラスに働いている。例えばLinuxカーネルの開発が、IBMやNovell、RedHat、NEC、日立といった多数の「商売敵」同士によって協力的に行われているのを見れば、それは明らかだろう。

耕地のアナロジー

思うに、法的状態としてのオープンソースとは、畑を耕すようなものである。畑を耕しても作物が育つとは限らないし、耕さなくても育つことはある。しかし、耕してあれば育つ可能性は高まるし、自分は無理でも、誰かが育てる役には立つかも知れない。多くの場所が耕されれば、より多くの作物が育つようになるだろう。多くの人は育った作物にしか興味がないが、農夫は畑を耕すことの重要性をよく知っている。同様に、本格的な開発者であれば、開発形態としてのオープンソースによってソフトウェアを「育てる」上で法的状態としてのオープンソースがいかに効いてくるか、経験的によく知っているのである。

逆に言えば、一般的なユーザやカジュアルな開発者にとっては、法的状態としてのオープンソースというのは意味が分かりにくいのではないかと思う。そもそもタダならソースコードなんか公開されていなくてもいいじゃないかという人もいるだろう。ソースコード公開の重要性は認めても、非商用目的でのみ、研究目的でのみ利用できればそれでいいじゃないか、という人もいるのではないかと思う。会員制のサイトでのみ公開できればそれでいいじゃないか、特許に抵触するならライセンスを得ればいいじゃないか、著作権者と毎回直接交渉すればいいじゃないか、そもそもライセンスなんか無視したってバレなければいいじゃないか…おおまかに言って、厳密にはグレーでも、とりあえずタダで使えて、ちょっといじったものを自分のウェブサイトに置いて匿名掲示板で告知するくらいが出来ればそれで良いではないか、という程度の人は、おそらく相当数いるはずだ。それで何かおとがめがあるということも、実際のところほとんどあるまい。

確かに、耕さなくても作物はそれなりに育つ。あなたにとってはそれで十分かもしれない。しかしそれは結局のところ、本来あるはずのオープンソースのポテンシャルにあらかじめ枷をはめ、可能性を狭めてしまっているに等しいのである。法的状態としてのオープンソースを確保することによって始めて、オープンソース・ソフトウェアはお目こぼしによる子供部屋から、正当性をもって広い社会へと出て行くことが出来るのだ。おそらくここが、熱心な開発者以外に前者の重要性を説明する際、なかなか理解してもらいにくいところではないかと思われる。

むすび

「オープンソース」が語られる際、開発形態としてのオープンソースに脚光が当たるのはある意味で仕方のないことだ。しかし、開発形態としてのオープンソースのみをもって「オープンソース」と称することには、やはり慎重であって欲しいと私は思う。そこには、少なくとも現在のオープンソース界の隆盛を築いた要素の一つが欠けている。

素晴らしい作物にのみ目が奪われると、土地を耕すことの重要性は次第に忘れ去られていく。誰も耕さなければ、土地は荒れる。確かに荒れ地でも作物は育つ。しかし、荒れ地で作物を育てるには、従来の何倍もの労力を必要とする。収量も減るだろうしリスクも増す。そもそも作物を育てなくなる人も増えるだろう。そうなると、中長期的には、見渡す限りの荒野と、その中ではある程度自由に耕作できるものの、所有者にがっちり管理され、囲い込まれたわずかな荘園が残るだけではないだろうか。私が懸念しているのは、そういうことだ。「オープンソース」を巧みにブランドイメージに取り込みながら、開発形態としてはともかく、法的状態としては実のところ何らオープンソースではないという製品やサービスは、現在でも決して少なくないのである。

少なくとも私たちが「オープンソース」を語る際は、常に法的状態と開発形態の二面、特に前者の重要性を念頭に置いて議論すべきだと私は考える。オープンソースの生態系を律し、成長を促す仕掛けは、全てそこにあるからだ。さもなくば、私たちは、緩やかに「1984年」の世界へと戻っていくことになるだろう。ジョージ・オーウェルが描き出した幻想の1984年ではない。リチャード・ストールマンが広がりゆく「荒野」に絶望してGNUプロジェクトを立ち上げ、フリーソフトウェアを世に送り始めた、実際の1984年にである。

投稿者: mhatta

A rapidly-aging old-school geek in Japan.