今日のフリーソフトウェア文化の始まった背景を知るオープンソースソフトウェアの育て方(3/3 ページ)

» 2009年08月17日 14時30分 公開
[Karl Fogel, ]
前のページへ 1|2|3       
  • 無意識な抵抗

 フリーソフトウェア運動の初期には、ほかにも多くの運動が起こっていました。しかし、ストールマンのGNUプロジェクトと同じくらいにイデオロギーを前面に押し出したものはほとんどありませんでした。その中でも最も重要なものの1つがBerkeley Software Distribution(BSD)でしょう。これは、徐々にUNIXオペレーティングシステム――1970年代の終わりごろまでAT&Tにおける半ば独占的な研究プロジェクトでした――を再実装しようという動きで、カリフォルニア大学バークレー校のプログラマーがはじめました。

 BSDグループは「プログラマー同士お互いに手を取り合って団結しなければならない」といった政治的な声明は出しませんでした。その代わりに彼らの才能と熱意でもってそのアイデアを実現させていきました。さまざまな場所に散らばった開発者たちが協力し、UNIXのコマンドラインユーティリティやコードライブラリ、そしてオペレーティングシステムのカーネル自体についても1から書き直していきました。そのほとんどはボランティアによるものでした。BSDプロジェクトは、イデオロギーを前面に押し出さないフリーソフトウェアプロジェクトとして最も有名な例です。また、その後オープンソースの世界に残って活躍することになる多くの開発者のための訓練の場としての役割も果たしました。

 別の盛んな共同開発の例としてはX Window Systemがあります。これはフリーでネットワーク越しに使用できるグラフィック環境で、1980年代半ばにMITとハードウェアベンダーが共同で開発しました。ベンダー側も、顧客に同じようなウインドウシステムを提供したがっていたのです。独占的ソフトウェアと対立するのではなく、Xライセンスではフリーなコアのコード上に独占的な拡張を施すことを意図的に許可していました。コンソーシアムの各メンバーはデフォルトのXをそれぞれ拡張し、それによって競合するほかのメンバーに対する優位を確保しようとしたのです。Xウインドウ*4自体はフリーソフトウェアですが、その主な目的は、いわば競争する参加企業間の試合の場をならすことであり、独占的ソフトウェアの支配を終わらせるといった意図はありませんでした。

 もう1つの例を挙げましょう。GNUプロジェクトの数年前に開発が始まったTeXです。これは、ドナルド・クヌースによるフリーで高品質な組版システムです。彼は、誰でもコードを改変して再配布できるというライセンスの下でTexを公開しました。ただし、改変したコードを再配布する際には、非常に厳しい互換性テストをクリアしない限り“TeX”の名を使ってはならないという制限をつけました(これは、フリーなライセンスにおける“商標保護”の例です。詳細は章9.ライセンス、著作権、特許で説明します)。クヌースは、自由なソフトウェアか独占的なソフトウェアかといった問題については特に立場を表明していませんでした。彼は、単に真の目的(コンピュータプログラミングにかんする書籍の出版)を達成するためのまともな組版システムがほしかっただけなのです。そして彼にとって、自分の作ったシステムを一般に公開しない理由はなかったのです。

 すべてのプロジェクトやライセンスをここで挙げることはしませんが、1980年代後半にはさまざまなライセンスのさまざまなフリーソフトウェアが存在したということはここまでの例でも十分に伝わるでしょう。さまざまなライセンスが存在するということは、フリーソフトウェアを公開する動機にもさまざまなものがあるということを表しています。GNU GPLを選択したプログラマーであっても、GNUプロジェクトほどにはイデオロギーを押し出していない人も存在します。彼らはフリーソフトウェアの開発を楽しんでいますが、その多くは、特に独占的ソフトウェアを敵視しているわけではありません。

 この世から「ソフトウェアの囲い込み(software hoarding)」(ストールマンがフリーでないソフトウェアを指すときに使用する用語)をなくすんだ! という道徳的な衝動にかられる人もいましたが、単に技術的な興味からフリーソフトウェアを開発している人もいました。また、同じ趣味を持つ人と共同作業をするのが楽しいとか、有名になりたいとかいう理由の人もいたことでしょう。しかし、このように本質的に異なる動機を持った人たちがお互いに悪影響を及ぼしあうことはありませんでした。小説や絵画と異なり、ソフトウェアには最低限の基準(きちんと動くこと、バグが存在しないこと)があったことも理由の1つでしょう。そのため、プロジェクトの参加者が共同で作業する際に技術面以外の適性をあまり気にする必要がありませんでした。

 開発者たちが手を取り合う理由がもう1つありました。フリーソフトウェア界が非常に高品質なコードを生み出していることが分かってきたのです。時には、フリーでない同等製品より明らかに技術面で上回っているものもありました。あるいは、少なくとも同等の機能を持っているものも多くありました。当然、これは低コストで入手することができます。フリーソフトウェアの思想に厳密に従うためにフリーソフトウェアを使用するという人はあまり多くなかったかもしれません。多くの人たちは、単にそちらの方が高性能だからという理由でフリーソフトウェアを選択していました。そしてソフトウェアを使う人たちの中には、そのソフトウェアの保守や改善のために時間と力を貸してくれる人が常にある程度以上いたのです。

 この「よいコードを生み出す」という傾向はまだ普遍的なものとはなっていませんでしたが、徐々に世界中のフリーソフトウェアプロジェクトでも同様の現象が見られるようになってきました。ソフトウェアに強く依存する産業界でも、徐々にそのことに気づき始めました。彼らの多くは、すでに日常の作業にフリーソフトウェアを使用していましたが、それに気づいていませんでした(上級管理職がIT部門の動きを常に把握しているとは限りません)。企業は、フリーソフトウェアプロジェクトに対してより積極的、公共的な役割を担うようになりました。彼らのために時間や設備を提供したり、あるいはもっと直接的に資金を提供したりすることもありました。うまくいった場合は、そのような投資が何倍にもなって返ってくるかもしれません。そのプロジェクトにフルタイムで専念している一部の専門プログラマーに対して資金を提供することで、プロジェクト全体(無償のボランティアやほかの企業に属するプログラマーなど)の活動の利益を得られることになります。

[4] 彼らは“Xウインドウシステム”と呼んでほしいようですが、現実には“Xウインドウ”ということの方が多いでしょう。だっていちいちそんな長い名前を言うのは面倒くさいから。


著者:Fogel Karl

翻訳者:高木 正弘

翻訳者:Takaoka Yoshinari(a.k.a mumumu)

製作著作 © 2005, 2006, 2007, 2008, 2009 Karl Fogel, 高木正弘, Yoshinari Takaoka(a.k.a mumumu), under a CreativeCommons Attribution-ShareAlike (表示・継承) license (3.0, 2.1-jp)


前のページへ 1|2|3       

content on this article is licensed under a Creative Commons License.

注目のテーマ