FOSSにおける絶妙な中庸を目指して
FOSS開発者が意識を向けているポイントは、次の4つにまとめられる。
- 自由という意味のフリー
- 無料という意味のフリー
- 法と倫理
- 有用性と実用性
これらの違いは、実務に即した部分というよりも思想的な部分に存在する。
自由という意味のフリー
1980年代、Richard M. Stallman氏は、すべてのソフトウェアは一般の人々が利用できるものでなければならず、そのソースコードの参照、習得、変更、改善はだれもが自由に行えるべきだ、と宣言した。かつてオープンだった学問の世界を蝕む営利主義の問題を捉えて、その解決策として示した言葉だった。彼は自らの考える、ソフトウェアが提供すべき4つの自由を次のように提示した。
- 好きなようにプログラムを実行する自由
- ソースコードを調べて所望の動作をするようにプログラムを変更する自由
- プログラムの完全なコピーをいつでも他人に配布できる自由
- 自ら変更を加えたプログラムのコピーをいつでも他人に配布できる自由
それ以来、彼はGNU一般公衆利用許諾契約書(GPL、現在はバージョン3まで改訂が進んでいる)の“産みの親”となっている。簡単にいうとこのライセンスは、GPLの下でリリースされたソースコードは無料またはわずかな料金でアクセスできるところに置かれ、だれもが参照でき、そこから派生したすべての著作物もまた同じ条項のGPLの下でライセンスされなければならない、というものだ。
こうした条項により、企業はGPLコードに興味があっても、派生著作物によって企業秘密が世界中に公開されることを恐れてその利用をためらっている。しかし、オープンソースのコードを利用して成功している企業の例は数多くある。たとえばRed Hatは、自社の製品で純粋なオープンソースを利用していることについて次のように述べている。
すべてのソフトウェアはソースコードで書かれている。オープンソースソフトウェアでは、だれもがコードを参照できることを保証する特別なライセンスによってコードが保護されている。これは、どんな企業もそのコードを独占できないことを意味する。自由とは選択できることだ。そして選択できるということは力の存在を意味する。ゆえに、我々はオープンソースを必然と考えている。オープンソースは主導権を顧客に返すものだ。人々はコードを参照し、変更して、そこから学ぶことができる。よって、バグの発見と修正にかかる時間はこれまでより短縮される。また、あるベンダのサービスが気に入らなければ、自らのインフラストラクチャを全面的に見直すことなく別のサービスを選ぶことができる。もはやテクノロジーによるロックインは生じないし、一社独占の状態にもならない。
これは開発者にとって何を意味するのだろうか。自らの作品(成果物)をだれもが自由に利用可能なもの、と規定するライセンスには、どんな自由が存在するのだろうか。その答えは、GPLとBSDの両陣営の間で起こった議論を取り上げたnumerodixのブログエントリのなかにあった。
どちらのライセンスモデルもソフトウェアを自由にするものだが、GPLソフトウェアでしか自由は持続できない。BSDはより深い自由を、GPLはより広い自由を提供する。より重要だと思うほうを選べばよい。
ソフトウェアの自由の大義は、ライセンスの問題が絡んでくるように、その作業に最適なツールを利用することで得られるものであり、その部分はソフトウェアの作者と開発者に委ねられている、とここでは主張しておきたい。
無料という意味のフリー
無償で提供されているソフトウェアは、必ずしも開発者に生活の糧を与えているわけではない。では、どのようにして彼らは生計を立てているのだろうか。サポート契約の販売によってだろうか。多くのプログラマは、エンドユーザに対する有料サービスの提供に必要なスキルを持ち合わせていない。専門用語や独特のスタイルはあまりに難解だし、彼らは数学的な論理に慣れきっている。エンドユーザの感情の高ぶりを示す声を聞けば、大半のギークはその場から立ち去るだろう。また、ビジネスセンスがなく、独力ではそうしたビジネスを軌道に乗せられない開発者もいる。数年前には、FOSSに反対するDaniel Wallace氏が自らの生活を困窮に陥れたとしてフリーソフトウェア財団と関係者を訴えたことさえあった。この訴訟は結局却下されたものの、実際にどのような形で“無料という意味のフリー”を持続可能なものにしていくのかという疑問を引き起こした。
FOSS開発者たちは、自らが書き上げたコードを手放して暮らしていけるのだろうか。うまくいけば、一日中FOSSに取り組むことで給料がもらえる大企業に勤めることは可能だろう。だが、こうした働き方は、自分自身のプロジェクトに取り組みたいという人々にとってはメリットがない。結局、そうした開発者の多くは余暇の時間をコーディングにあてるか、あるいはもっと恵まれた人々であれば勤務時間中に自分自身のプロジェクトに取り組むことを奨励している企業で働くことになる。そのほか、サポート契約の販売で実際に成功している開発者もいるし、そうした活動をすばらしいビジネスに育て上げることも可能だ。また、ソフトウェアに対する報奨金を利用して必要な機能を追加することを提案している人もいる。
“必要は発明の母”という言葉のとおり、FOSSコミュニティはプロジェクト、開発者、ユーザのそれぞれの立場を守る方法を模索し続け、今後も革新的で競争力のある存在であり続けるだろう。そうした方法はたくさんあるが、ある立場の人々の理念を傷つけないために、優先順位やプロセスの変更を必要とするものもある。
法と倫理
開発者は、どうすれば他人の機嫌を損ねることなく創造的で革新的になれるのだろうか。どうすれば最終的に法に背くことなくほかのプログラマから学べるだろうか。法的、倫理的制約に縛られながら革新的であることは可能だろうか。訴訟沙汰が多くなっているこの業界では、建前にこだわる必要性が増しつつある。
DellによるUbuntu 7.10の提供に関するコメントの多くは、libdvdcss(一部のディストリビューションのリポジトリで提供されている“CSS(Content Scramble System)で暗号化されたDVDデータを参照して暗号を解除するソフトウェアライブラリ”)の問題に集中している。その合法性は今なお議論されているため、Dellが顧客の満足度を高める最善の策として用意したのがLinDVDだった。しかし、この行為は断固たるソフトウェアの自由におけるRMS(Stallman氏)とその支持者たちの信念と真っ向から対立しているように思える。ディストリビューションを提供する組織の首脳陣は、プロプライエタリなコーデックやドライバを収録するにあたって自分たちのリスクとユーザのメリットとを天秤にかけなければならない。
カーネルを巡る議論に繰り返し出てくるのが、LinuxカーネルにバイナリBLOBやバイナリのドライバを含めるという考え方だが、これにはFOSS関係者のほぼ全員が反発している。こうしたドライバやBLOBをLinuxと共に配布することは、少なくとも倫理に反し、最悪の場合は違法行為にあたると考えられている。だからといって、カーネルのレベルから離れて、独自のバイナリドライバをダウンロードできる場をユーザに提供すれば、コミュニティにさらなる亀裂が生じることになる。無償で提供されてはいるが、こうしたクローズドなドライバは自由なものではなく、たいていの開発者はその存在を倫理的な面で苦々しく思っている。そうしたソフトウェアの管理がコミュニティに委ねられることはないからだ。そのようなドライバを使っているエンドユーザは、修正プログラムを供給する企業に翻弄されることになる。
あるLinux開発者がmadwifiドライバをBSDライセンスからGPLに移行させようと試みた際の法的騒動について考えてみよう。このときは、法律上の問題が解決された直後に倫理的な問題が持ち上がった。特に取り沙汰されたのは、BSDライセンスがコードの使用を万人に認めながらもコードに対する改良を認めていないというのは倫理的にどうか、という点だった。BSDライセンスを字義どおりに守ることは可能だが、オープン性の精神がないがしろにされていたことため、議論は続いた。
開発者たちは、GNU/Linuxにどんなソフトウェアを含めるのが合法で倫理的かという問題に加えて、FOSSプロジェクトに自社の知的財産(特許や著作権)が含まれていると考えるプロプライエタリ企業にも対処しなければならない。そうした例はいくらでもある。SCOと終焉に向かいつつある同社の訴訟、キーボードのデザインを巡ってのナイジェリアの訴訟に引きずり出されたOLPCプロジェクト、Microsoftが自社の特許235件をFOSSが侵害しているとふれ回った件などだ。これらの大半はでたらめなものだが、今なおプロジェクトの運営や開発者による成果物の認定方法に影響を与えている。開発者はただ単に創造的で協調的であろうとすることに専念できるわけではなく、法律面にも注意しなければならない。少しでも違反の兆候があれば、厳しい訴訟を起こされる危険性がある。
だが幸いにして、開発者たちは孤立無援の状況にいるわけではない。往年のGPL法的論争に立ち会った面々やSoftware Freedom Law Center(SFLC)の存在があるからだ。あるいは、当社の一部のソフトウェアにはGPLコードが含まれている可能性があるが、ライセンス契約は守られていないおそれがある、としたMcAfeeの言及を利用してもよい。今のところMcAfeeはこれを“正規の発表”ではないとしているが、GPLが法的な効力を示さなければそうした事実が明るみに出ることは決してないだろう。
すべてのソフトウェアが互換性のある一連のフリーライセンスの下で公開されるまでは、たとえ活動を妨げられることはなくても、また、確かに支援を受けることができても、開発者たちはソフトウェアの“合法性と倫理性”の両立に悩まされることになるだろう。
有用性と実用性
自分自身は理想主義者というより現実主義者なので、人々が機能を犠牲にして見た目を重視している状況を見るにつけ、苛立ちを感じる。きちんと動作することが第一であり、飾り付けは二の次であるべきだ。
Ubuntuのようなディストリビューションが成功している理由はこういった点にある、と私は考えている。そうしたディストリビューションは魅力的な外観を備えているが、機能性と使いやすさについても絶えざる改善のために努力が重ねられている。多くのLinux初心者ユーザが最初にUbuntuを利用するため、Ubuntu LinuxがGNU/Linuxの同義語になりつつある地域さえあるという。
ソフトウェアの問題の核心は、人間が使えるものでなければならないという点にある。アルベルト・アインシュタインはこう言っている。「あらゆる技術的活動の主たる目的は、常に人類とその運命への関心に基づいたものでなければならない。このことは、たとえ図表や数式に没頭していても決して忘れてはならない」
このポイントは一部の他者との対立を引き起こす可能性がある。全面的に自由に従うことは、ユーザがWebやその他の場所で培った何かを失う可能性があることを意味する。クローズドソーズのコーデックやツールをまったく使ってはならないとすれば、ときにユーザは理想を守りとおすために実用性を失うことになる。反対に、“便利で実用的な”ものに全面的に従うことは、何でも思いどおりに行える自由を踏みにじることになりかねない。また、“無料という意味の自由”を無視することは、利用を考えているソフトウェアのコミュニティの影響力を奪うことになり得る。一方で、プログラミングに対する直接的な対価を支払わなければ、有能な開発者はFOSSを敬遠するようになるかもしれない。
“普通”のユーザはただコンピュータに仕事をさせたいだけである。これはLinuxコミュニティに対してずっと言われてきたことだ。そのため、開発者は理想的なやり方に対する態度を軟化させ、プロプライエタリな考え方、特許、ライセンスを認めると共にFOSSを使いやすくするために必要であればどんな妥協でもすべきだ、という者もいる。こうした意見は、間違いなくRMSや筋金入りのFOSS支持者を激怒させるはずだ。
とはいえ、Flashやmp3のようなフォーマットやその他のコーデックはインターネット上の至るところで使われている。“普通”のユーザはWebサイトを渡り歩き、好きなものは何でも見聞きしたいからだ。では、彼らが自由を失ったらどうなるだろうか。コーデックの利用が有料になり、料金を支払わない限り使えないとなったら、どうなるだろうか。これらのコーデックの配布が違法行為、または倫理に反するとしたらどうだろうか。
プロプライエタリソフトウェアがバンドルされたLinux MintやPCLinuxOSのようなディストリビューションが人気を博しているのは、ごく自然なことだ。しかも、使いやすさの追求という点において、これらのディストリビューションは先に述べたいくつかのポイントにかなり近いところにある。Ubuntuはプロプライエタリなコーデックおよびドライバをユーザがインストールしやすくするというぎりぎりの線まで譲歩しているが、まだディストリビューションとしてそれらを公然と受け入れるところまでは行っていない。一方、Fedoraは何よりも自由に関心があることを皆にわかってもらおうとしているが、今では渋々ながらも追加のドライバおよびコーデックを容易にインストールできる方法をユーザに提供している。その他のディストリビューションもまた、独自の方法で自由と使いやすさのバランスをとっている。
GNU/Linuxは自らの力だけを頼りにしてその利便性を向上させつつあるが、多くのユーザは、開発者に対して使い勝手の向上とそれ以外のFOSSの信条を無視することを要求している。さらに、開発者たちは筋金入りのFOSS支持者たちに同様の譲歩を求めなければならない。
ほどよい中庸とは
我々はこれら4つの点で折り合いをつけることができるのだろうか。“うまい、早い、安い、のどれか1つは我慢せよ”という言葉があるが、FOSSはこれらの問題のバランスをとることに絶えず心を砕いている。
陸軍にいたときに行っていた運動の1つに、レンジャー・プッシュアップと呼ばれるものがあった。4人の兵士がそれぞれ別の兵士の背中に両足をのせることで正方形を作る。これは、全員が同時に足を持ち上げなければうまくいかない。1人でも失敗すれば、ほかの3人も態勢が崩れてしまう。
同じように、FOSSもまた前述の4つのポイントのバランスをとろうとしている。それは八方塞がりの状況であり、絶好のタイミングと多大な人数、そして歩み寄りを必要とする途方もなく難解な問題だ。すでにFOSSはその存在を認められ、ほとんどの状況で申し分なく利用できる。かつてはさざ波を立てる程度だったが、その影響力は順調に増し、ソフトウェアの世界に津波を起こすところまで来ている。成熟へと向かうFOSSコミュニティは、適切なバランスを見いだすことができるだろうか。
Thomas Kingは大手コンピュータ会社のサーバ技術者。30年に及ぶコンピュータの使用年数があり、FOSSの世界に身を投じて7年になる。