作ったソフトが世界に広がる

 自分で新しいソフトウェアを作った開発者には,コミュニティはソフトウェアを発表する場となる。音楽家が街角で演奏するのと同じようなものだ。

 世界に通用するオープンソースのプログラミング言語「Ruby」を開発したまつもとゆきひろ氏は1993年にRubyの開発を始めた。最初はあくまで趣味だった。プログラミング言語が好きで,ほかと違うものを作りたかった。そして「作ったら公開しない理由はない」(まつもと氏)*2。人に使ってもらえるし「アイデアをもらえるかもしれない」。

 作り始めて2~3年経つと,Rubyは日本国内ではある程度知られる存在になった。世界で使われるようになったのはある意味偶然である。がんばって作っていた英語版のサイトを,米国人のあるコンサルタントが検索エンジンか何かで見つけた。その人がRubyに興味を持ち,米国で解説本を出版したいと言ってきたのだ。それが世界に広がるきっかけになった。

 Rubyを作り始めた当初は「世界で普及するなんて夢にも思っていなかった。何年か作るのを楽しんでそれで終わりだと思っていた」。オープンソース・コミュニティのインフラであるインターネットを使うと,個人が作ったソフトウェアが世界に広がる可能性があるのだ。

人のソフトを直すのが楽しい

 同じソフトウェアを開発するにしても,人が作ったものを改良するのが楽しいという開発者もいる。オープンソースのデータベース・ソフト「PostgreSQL」の普及とSRAでのビジネス確立に尽力したSRAネットワーク&サービスカンパニー オープンソースソリューション部オープンソースサポートグループ主幹の石井達夫氏は言う。「人のソースコードを見てバグを見つけたり,改良したりするのが好き。ちょっと直すだけで,ぐっと性能が上がったりすると特に楽しい」。オープンソース・コミュニティに参加すれば,人が作った優秀なソフトウェアがたくさんある。

 Debian GNU/Linuxの日本での普及に貢献したDebian JP Project Vice Presidentの鵜飼文敏氏も「もうちょっとで動くものを動かすのが好き」というタイプである。

 鵜飼氏が本格的にUNIXに触れ始めたのは1991年,大学院修士課程の1年生のときだった。1991年は,IBM PC AT互換機で動く二つのUNIX互換OSが登場した年である。一つがLinux(公開時のバージョンは0.02)で,もう一つが386BSDである。386BSDは,米California大学Berkeley校が開発したUNIXの流れを汲むOSである。

 世界で注目を集め始めているUNIXを自分でも動かしてみたい。しかし当時の日本では難しかった。NEC独自仕様のパソコンPC-9801が全盛の時代だったからだ。そこで鵜飼氏は大学サークルの2人の先輩とともにUNIXをPC-9801に移植する作業を始めた。

 米Sun Microsystems社のワークステーション上で,PC-9801用の実行プログラムを開発できる環境を整えた。移植するUNIXとしては,Linuxの方がソースコードのサイズが小さく作業が楽そうだったが,必要なアセンブラが手に入らない。そこで386BSDを移植することにした。

 どうせ移植するなら一番乗りしたい。そこで「日本のNetNewsに移植作業中であることをリークし,ほかの人を牽制したりしていた」(鵜飼氏)。無事に移植を終えたあとNetNewsに報告*3。大学のFTPサーバーで公開すると人気を呼んだ。

 ところが386BSDは後に問題が発生した。最初のバージョンに多数のバグがあったにもかかわらず,オリジナルの開発者が改良作業を放棄してしまったのだ。世界の有志が修正パッチを集めて配り始めた。鵜飼氏らは,それもPC-9801用に修正して配ったりしていた。そのうちに米AT&T社のBerkley校に対する訴訟が本格化し,386BSDの配布自体に問題が生ずる可能性が出てきた。

 そこで鵜飼氏はLinuxの移植に取りかかった。386BSDの経験を基に,あともう少しで動くところまでいった。ところが修士論文の執筆が忙しくなり,作業を途中で断念した。「ただこうした作業は本当に楽しかった」(鵜飼氏)。

 Debian GNU/Linuxを知ったのは就職してから1~2年経ってからである。まずは日本語化から初めたが,同時に開発プロジェクトの組織化も図った。Debian GNU/Linuxは巨大なソフトウェアで,とても少人数では対処できなかったからである。そうした活動から日本の著名なオープンソース開発者の一人となった。

欲しいから作る

 オープンソースの開発者がソフトウェアを開発するのは,もう一つ大きな動機がある。そのソフトウェアを自分で使いたい,つまり必要だというものだ。これは考えれば当たり前のこと。趣味でモノを作るのだから,自分で欲しいモノを作るに決まっているのだ。

 Debian Project Official Developerの八田真行氏がLinuxを使い始めたのも必要に迫られてのことだった。高校3年生の1998年に八田氏は米国に留学。そこで使われているパソコンがひどく古かった。「Windows 95さえまともに動かなかった」(八田氏)。そのときに友人にLinux上で動くゲーム・ソフトをLinuxとともにもらった。ゲームにはすぐ飽きたが,Linuxの方に興味を持った。いろいろなアプリケーション・ソフトウェアを動かしてみた。Linuxは最低限の機能なら古いマシンでも問題なく動くのが魅力だった。

 そこから八田氏のオープンソース・コミュニティでの活躍が始まった。現在はFree Software Foundation(FSF)の日本語サイトの管理者までこなす。「FSFの文章を自主的に訳してサイトに載せていた。すると突然Richard Stallman氏からメールが来て,管理者になるように依頼された。驚いた」(八田氏)。

 産業技術総合研究所グローバルITセキュリティグループの半田剣一氏は,Richard Stallman氏が開発したテキスト・エディタ「Emacs」を日本語化した。それも,Emacsで日本語を扱いたいという単純な動機から始まった。それが国際化版Emacs「Mule」の開発につながり,現在はEmacsの一部として統合された。

報酬は自然と付いてくる

 楽しい,自分で使いたいが基本のオープンソース・ソフトウェア。開発に参加しても,金銭的な報酬は得られない。それでも無形の報酬なら自然と手に入る。

 まず,ソフトウェア開発のスキルが自然と向上する。さらにがんばって良い仕事をすれば,コミュニティの中で優秀な技術者として認められる。ソフトウェア開発者として自分の価値が高まるのだ。

 海外のコミュニティに参加すれば英語の能力が向上する。八田氏の場合はさらに「外国人と正面から議論してコミュニケーションを取れるようになったことが大きな収穫」だという。

 コミュニティの外でも認められる存在になれば,「講演や寄稿の依頼が来て,金銭的な報酬も得られる。しかし金銭よりも,それだけ自分の価値が認められたということの方が嬉しい」(日本Sambaユーザ会幹事のたかはしもとのぶ氏)。

(安東 一真)
オブジェクト指向スクリプト言語
Ruby
まつもとゆきひろ氏
ネットワーク応用通信研究所主任研究員
CADベンダーに務めながら,1993年に趣味でRubyの開発を始める。それが世界で認められ普及に至った。同氏の実力を評価した現在の会社に,フルタイムでRubyを開発してかまわないという条件で就職した。
リレーショナル・データベース
PostgreSQL
石井達夫氏
SRAネットワーク&サービスカンパニー オープンソースソリューション部オープンソースサポートグループ主幹
1991年,同社のホノルル研究所に赴任したときにPostgreSQLに出会う。1999年に日本PostgreSQLユーザ会を設立。国内でPostgreSQLの普及が進んだのは同氏の功績が大きい。
多言語エディタ
Emacs/Mule
半田剣一氏
産業技術総合研究所グローバルITセキュリティグループ
Richard Stallman氏が開発した「Emacs」の日本語版「Nemacs」を1987年に公開。それをベースに開発した国際化版「Mule」は,後にEmacs本体に統合された。現在もEmacsの開発コア・メンバーの一人。
ファイル共有ソフト
Samba
たかはしもとのぶ氏
日本Sambaユーザ会幹事
UNIXやLinux上で動作するWindows互換のファイル共有ソフト「Samba」の日本語化に携わる。Sambaユーザ会の設立メンバー。WindowsとUNIXの両方の技術に詳しい。大手システム・インテグレータに勤務。