オープンソースソフトウエアの開発プロセスに...

19
ΦʔϓϯιʔειϑτΤΞͷ։ϓϩηεʹ ΔίϛϡχςΟͷߏมԽʹ ɽং ɼLinusTorvaldsϦνϟʔυɾλωϯόϜڭतͷMinix ΛʹجॻΊಠͷUNIX෩OSͷkernelͷιʔείʔυ։ͷΞφϯε ΛUsenet ʹߘɻͷIBM PCʗATޓػڥͰಈΔkernelLinux ͱݺΕɼࡏݱɼLinuxPCʗATޓػڥΒCellARMͳͲͷଞ ͷCPUͷʹڥҠ২ΕɼܞଳͷkernelεϚʔτϑΥϯ༻ͷAndroidOS, PlayStationڥʑʹҠ২Εɼͷ։ଓߦ ͰΔɻɼ LinuxͷઃܭਤͰΔιʔείʔυωοτͰ։Ε ɼڵຯΕ୭Ͱ ಡΉͱͰΔɻ ͷ։࠾ʹޙ༻ΕGPL ͷԼͰɼͷLinuxͷ։ଓ Εɻͷ։ͷ୲खPCʗATٴΔதͰɼߪΔʹ·ΓʹߴՁͰ༻UNIXʹସΔڥͷཉٻحΛݸਓɼLinuxΛͳΜΒͷ༻Ͱۀ༻ʹར༻ӦརٴʹۀاͿɻ ͷ։ɼ։ɾҬʹॴͳΒɼΠϯλʔωοτͷ ʑͳπʔϧΒॾใͷΛߦΊͷձ߹·ͰʑͳखஈΛհɼί http:ʗʗwww.minix .orgɻϑϦΠΤେʢVrijeUniversiteitAmsterdamʣͷAn- drew Tanenbaumڭڭҭ༻ʹച ΔUNIXΫ ϩ ʔ ϯɻ ɼ ιʔείʔυೖϑϩοϐʔσΟεΫΛՁʹߪೖͰɻ http:ʗʗgroups.google.comʗgroupʗcomp.os.minixʗmsgʗ dbab ʗ ʗ ࡏݱɼKernel ɽ ʕRCʢReleaseCandidateʣ։தɻ The Linux Kernel Archivesʢhttp:ʗʗwww.kernel.orgʗʣ Gnu Public Licenseʢhttp:ʗʗwww.gnu.orgʗcopyleftʗgpl.htmlʣ ΦʔϓϯιʔειϑτΤΞͷ։ϓϩηεʹΔίϛϡχςΟͷߏมԽʹ

Upload: others

Post on 25-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

論 文

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

市 川 哲 郎

1.序 文

1991年10月6日,Linus Torvaldsはリチャード・タネンバウム教授のMinix1

を基に書き始めた独自のUNIX風OSのkernelのソースコード公開のアナウンス

をUsenet2に投稿した。このIBM PC/AT互換機環境で作動するkernelはLinux

と呼ばれ,2011年現在,LinuxはPC/AT互換機環境からCellやARMなどの他

のCPUの環境に移植され,携帯電話のkernelやスマートフォン用のAndroidOS,

PlayStation3環境等々に移植されつつ,その開発は続行中3である。そして,

Linuxの設計図であるソースコードはネット上で公開され4,興味があれば誰で

も読むことができる。

1991年の公開直後に採用されたGPL5の下で,この20年間Linuxの開発は持続

されてきた。その開発の担い手は当時PC/ATが普及しつつある中で,購入す

るにはあまりに高価であった商用UNIXに代替する環境への欲求や知的好奇心

を持つ個人,Linuxをなんらかの用途で商業用に利用したい営利企業に及ぶ。

その開発は,開発者が分散した国・地域に所在しながら,インターネットの

様々なツールから諸情報の交換を行うための会合まで様々な手段を介して,コ

1 http://www.minix3.org。フリイエ大学(Vrije Universiteit Amsterdam)のAn-

drew Tanenbaum教授が教育用に販売しているUNIXクローン。1990年当時,

ソースコードが入ったフロッピーディスクを安価に購入できた。

2 http://groups.google.com/group/comp.os.minix/msg/2194d253268b0a1b

3 2011/12/24現在,Kernel3.2―RC(Release Candidate)7が公開中。

4 The Linux Kernel Archives(http://www.kernel.org/)

5 Gnu Public License(http://www.gnu.org/copyleft/gpl.html)

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

49

ミュニティと呼ばれる集団を形成してコミュニケーションを保っている。そし

て,インターネット上での開発を前提とすれば,GPLというソースコードの非

排除性と非競合性を要請するライセンスの上で,複製費用がほぼゼロという非

希少性を伴ったソフトウエアを開発していることになる。これは個人の時間と

知識はもちろんのこと,営利企業からも自社の従業員の時間と知識を収奪して

他者に頒布するのみでありつづけるライセンスの下で,非常に速い速度で20年

以上にわたって開発を保ち続けているということに他ならない。そしてその20

年の間,開発者そして利用者の構造とコミュニケーションの構造は変化を続け

ている。

本稿では,オープンソースソフトウエア6という名称で包含されるソフトウ

エア開発の中で,GPLの下で開発されるソフトウエアにおいて観察される,コ

ミュニティ構造の変化について検討する。検討の上では,特にLinuxを念頭に

検討を行う。Linuxと称するとき,狭義のLinuxカーネルと称するソフトウエ

アと,ディストリビューションと呼ばれる広義のLinuxをカーネルとしたOSを

指す場合がある。本稿では,狭義を“Linux kernel”,広義を“Linux OS”7と

表記する。また,狭義広義を問わず開発者とエンドユーザーが各々同じコミュ

ニティに属する状況を想定する8。以下,構成を説明する。最初にOSSが採用

するソフトウエアライセンスと,他のソフトウエアライセンスとの差異につい

て説明する。次に,開発者そして利用者のコミュニケーションの構造の変化に

関していくつかの例を挙げる。この中には,発展的解消を行う際に主催者の意

向でアーカイブが残されなかったために読者が参照できない,きわめて初期に

6 以下OSSと称する。

7 BSDの派生物やSolarisなど商用UNIX OSは,あくまで「OSを開発するプロ

ジェクトあるいは事業」だが,Linusが中心となり開発しているのはOSの中核で

あるkernelである。商用のRedHatやOSS的プロジェクトの成果物であるDebian

等々ディストリビューションと称される“OS”は,Linux Kernelを中核にそれ

ぞれの目的やポリシーによってOSとして機能するためのソフトウエアで構成さ

れる。

8 Linux kernelの開発の場であるLinux Kernel Mailing List(アーカイブは

http://lkml.org/)でバグ報告や議論が可能を行う純粋な利用者が存在し得ない

ことではない。

駿河台経済論集 第21巻第2号(2012)

50

個人が解説したメーリングリストが含まれる。次に,本稿に問題意識が近接し

ている先行研究を示す。開発者そして利用者のコミュニティの構造の変化に関

するシンプルなモデルを紹介した後,今後研究すべき問題について述べる。

本稿に関する先行研究としては,Eric Raymondの「The Cathedral and the

Bazaar(以下,伽藍とバザール)」「Homesteading the Noosphere(以下,ノ

ウアスフィアの開墾)」「The Magic Cauldron(以下,魔法のおなべ)」が挙げ

られる。これらの文章は,Raymond自身がOSS開発プロジェクトを組織した

経験に基づいて,いくつかの重要な議論を行っている。「伽藍とバザール」で

は開発者がOSSを開発する動機に関する仮説と,大規模ソフトウエアの開発に

おける,・常にソースコードを集団で共有して,不具合の指摘や改善の提案を

受ける開発手法(バザール)と,・才能のある少数の開発者が集中して行う開

発手法(伽藍)の比較を行っている。その中で,バザールがBrooksの「人月

の神話」からの推論の結果に反して破綻せず,場合によっては後者よりも成功

することを指摘している。「ノウアスフィアの開墾」では,OSSの所有権の暗

黙の取り扱いルールと米英慣習法における土地所有権との理論的類似性と,コ

ミュニティにおけるインセンティブがMarcel Maussが研究した贈与経済に近

いこと,開発者のインセンティブに,コミュニティにおける名声が大きく影響

しており,評判ゲームに基づく贈与経済と見なせること等を指摘している。ま

たその一方で,OSSの開発が学問の進展のプロセスと極めて類似していること

も指摘している。「魔法のおなべ」では,OSSの商業化の際に運営資金を獲得

する方法と,公共財的性質を持つOSSの開発において「共有地の悲劇」が発生

しない理由としてライセンスの制約が機能していることなどを論じている。

Lerner, Tirole(2002)では,OSSという財の存在の紹介と,具体的ないく

つかのOSSのサーベイを開発者自身へのインタビューなどを通じて行っている。

そしてOSSに関する,経済学から見たいくつかの研究課題を提示している。

Lerner, Tirole(2004)はLerner, Tirole(2002)の再考に相当し,急速に成

長する現象であるOSS開発を,様々な開発者の意図および役割の解説と,OSS

開発のプロセスの経済の他の分野に移植する可能性について論じている。

Hippel, Krogh(2003)では,OSSの開発が,私的財が知的財産保護の体制

が整っている下での「私的投資」と,市場の失敗が存在する中で公共財を開発

していくための「集合行為」という2つのモデルの混合モデルであると提唱し

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

51

ている。

Bitzer, Schrettl, Schroder(2007)では,私的に供給される公共財という性

質を持つOSS開発者の動機に対して,(a)OSSコミュニティ上の「利用者かつ

開発者」は個別のOSSソフトウエアの問題の解決が必要であること,(b)「利

用者かつ開発者」は個別のOSSソフトウエアの問題に取り組みあるいは精通す

ることに楽しみを見いだす,“homo ludens”9的な利得を楽しんでいること,

(c)活動中のOSSプログラマーの集団に所属したい,といった本源的な欲求,

を挙げている。

2.OSSライセンス

一般にOSSを取り上げる場合,The Open Source Initiative(以下OSI)のThe

Open Source Definition(以下OSD)が規定するOSSの定義に順ずるライセン

スの下で開発,頒布されるソフトウエアに焦点が向けられる。しかしOSDが

規定するOSSより厳格なGPLを採用する「Free Software」も,またOSSより

複製権などの規定に関して緩やかなBSDやMIT/Xに基づくソフトウエアも

OSSに密接に関連している。本稿ではOSSという名称で,OSDによって定義さ

れる範疇の中で,より厳しいライセンス条件を持つGPLを採用するソフトウエ

アを対象に検討する10。GPLはソースコードの著作者人格権11の一部は留保され

るものの,複製権,頒布権などは放棄することが明記されているという特徴を

持つソフトウエアライセンスである。このライセンス条項は,上記で指摘した

ようにソースコードに非排除性と非競合性,非希少性という性質をもたらすこ

とになる。しかも,GPLで公開されたソースコードを第三者が派生物を創造し

た場合,派生物のソースコードにもGPLが適用されるという伝染性を持つ12。

開発者がGPLソフトウエアのソースコードに埋め込む開発者の才能や開発にか

ける作業の機会費用,また成果物としてのソフトウエアの知的財産の価値を金

9 「遊ぶ人の意」。遊ぶことに人間の本質的機能を認めるという人間観の一つ。

10 最近ではOSSおよびGPL採用のソフトウエアを総称して“FOSS”とする例も

あるが,本稿ではこれをOSSと呼ぶ。

11 著作者人格権のうち同一性保持権はソースコードが改変可能であるので留保

されず著作権上問題となる。

駿河台経済論集 第21巻第2号(2012)

52

銭で計測すれば,それは明らかに無視できない金額になるはずである。商用ソ

フトウエアのライセンスは,開発者が保有するソフトウエアの知的財産を第三

者から保護するために策定されていると考えて良いが,GPLが商用ソフトウエ

アのライセンスと完全に対立する要請をしていることに注目したい。つまり

GPLの要請は,利潤の最大化を目指す企業はもちろんのこと,個人の開発者の

多くの権利の放棄を要請していると考えられる。多くの先行研究はこの状況下

でなぜ個々人の開発者が開発に参加し,営利企業すら参加しているのかについ

て考察を行っている。

GPLにせよ,OSDにせよ,その出現には歴史的経緯があると考えざるを得

ない。そこで,Linuxが目指したUNIXの開発から経緯を振り返ってみる。

UNIXはAT&Tベル研究所のKen ThompsonとDennis Ritchieが1969年に開発

を開始し,1973年には開発言語がアセンブラからC言語に移植された。当時

AT&Tがシャーマン法13に抵触していたためコンピュータ業界でUNIXを製品

化できず,AT&Tからソースコードが複製代のみで公開されていた。ソース

コードを入手したカリフォルニア大学バークレイ校14(以下UCB)などは,作

動の不具合に対する修正コードをAT&Tに送付していた。これらが,UNIXの

開発過程におけるオープン性,あるいは「オープンソース文化」と言える流れ

を生成したと言える。後にAT&Tから独立したBSDを開発したUCBや,UNIX

上で作動するX Window Systemを開発したマサチューセッツ工科大学(以下

MIT)の成果物は,学術研究が大きな役割を占め,従ってUCBが規定したBSD

ライセンスやMITの研究プロジェクトが策定したMIT/Xライセンスは,UCB

やMITの成果物から派生物を創造する場合,UCBやMITの成果物である旨を

クレジットすることを要請する内容である。これは,当時のAT&Tの状況に

12 GPLの下では,GPLで開発されたライブラリにリンクしたソフトウエアは,

GPLが継承されてしまう。この制約があまりにも厳しいために,ライブラリには

「リンクしてもGPLが継承されない」LGPL(Lesser GPL)というライセンスが

適用されている。

13 アメリカ合衆国における独占禁止法。1982年にはこの制約が軽減され,AT&

TはUNIXに対して10万ドル(1988年)という使用料を設定している。

14 Ken Thompsonが,1975―1976年の1年間,UCBで研究を行っている。

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

53

対応した学術研究の成果への扱いの流儀を強く反映したライセンス条項だと考

えられる15。

1980年代に入ると,ソフトウエアビジネスの中でソフトウエア自体に対して

知的財産としての価値が評価されるようになり,商用ソフトウエアのソース

コードは開発元から公開されないケースが現れた16。このような推移の中で,

MITのMedia Labに在籍していたRichard Stallmanが,プログラムの人間可読

な形式であるソースコードの「自由」を守りたいと考え,1985年にフリーソフ

トウェアの生産と促進に貢献するためにFree Software Foundation(以下FSF)

を設立し,その手段としてソースコードの非排除性と非競合性を要請する法的

有効性を持つ契約書であるGNU Public License(以下GPL)を策定している。

3.OSSコミュニティ構造の時間的推移

OSSでは,「伽藍」と呼ばれるソフトウエアを少数の優秀な開発者が閉鎖し

た状況の中で開発する方式17と,「バザール」と呼ばれるコミュニティで開発者

が新規にソースコードを創造するとそれは開発に関心がある他者に公開され,

実装実験を行う開発方式がある。特にLinux kernelを念頭に検討を行う場合,

開発構造は後者にあたる。これはRaymond18が指摘したように,Linux kernel

の開発における技量貢献度を問わず開発に関心があるユーザー兼開発者が開発

の過程で参加する機会が与えられているということを意味するこの開発スタイ

ルは,Linux OSの開発や普及促進でも類似した構造的傾向がある。そしてこ

のコミュニティの構造は開発や商用化の推移と相関して変わっていく。ここで

は1990年代から現在までのLinux OSの日本におけるコミュニティの推移をそ

の事例として考察する。

1991年秋にLinux kernelが公式にリリースされたが,kernelがOSとして機能

15 この論文もまた,先行研究者の研究を何ら金銭的対価も支払わずに継承して

いる。

16 現在のソフトウエアでは機械可読なバイナリを解析するリバースエンジニア

リングすら禁止されているケースが多い。

17 BSDやGNUのソフトウエアの開発方式は「伽藍」である。

18 Raymond, E.1999伽藍とバザール

駿河台経済論集 第21巻第2号(2012)

54

するためにはOSに諸機能を提供するための個々のソフトウエアと,更に開発

環境がLinux kernelの下で作動してはじめてOSとして機能する。しかしその

Linux OSは256個の文字で構成される1バイト言語圏の欧米で開発が進んだた

めに,90年代中盤までは1バイト言語を使う前提で実装されており,日本語や

中国語など最高で65,536文字表現できる2バイト言語には非対応だった。そこ

で,Linux OSに2バイト言語,特にEUC―JPやISO―2022―JPなどの日本語圏の

文字セットの移植が行われた。この「日本語化」の作業と平行して,早くから

当時日本ではガラパゴス的に広く普及していた富士通TownsやNECのPC98系

などの環境への移植も進められた。日本語環境では,1992年10月にコンソール

で漢字を表示するためのKON19を豊橋技術科学大学20の真鍋敬士氏が公開した。

インターネットが民間に開放されていなかった当初,研究機関に所属しない層

がパソコン通信サービスの日経MIXやNIFTY―Serveなどで情報交換が行われ

ていたが,インターネット上では1992年12月に真鍋氏がLinux―ML21を開設し

ている。さらに1993年8月にはネットニュースにfj.os.linuxというニュースグ

ループを開設している。日本におけるインターネット上のLinuxのコミュニ

ティは,1997年3月にlinux―users―MLが開設されるまでこれらが担っていた

と考えられる22。当時はLinux OSをインストールするにしても希に専門雑誌で

紹介されるのみで情報が不足していた。そこでコミュニティでは日本語化の作

業と同時にコミュニティへ新人が参入するたびに繰り返し発せられる質問

(FAQ)への解説文章の整備23,Linux OSが作動するハードウエアの一覧,

Linux OS上で作動するソフトウエアに添付してあるマニュアルの日本語化作

19 Kanji ON console。ウィンドウシステムが作動しない画面での日本語表示では

便利であり,2000年代に至っても他のUNIX系OSで利用されることがある。

20 1992年当時

21 過渡期では,パソコン通信サービスからインターネットに接続するサービス

がパソコン通信サービス業者から提供されていた。Linux―MLは真鍋氏のサーバ

でサービスをしていたが1997年に真鍋氏の開発環境のハードディスクがクラッ

シュした事故を機会に閉鎖された。

22 IRCを通じたチャットでも意見交換が行われていたが,これもアーカイブは

残っていない。

23 JF(http://linuxjf.sourceforge.jp/)

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

55

業24等が行われた。KON以降Linux OSの日本語対応化25を行ってきた真鍋氏の

開発環境が1997年にクラッシュした後と前後して,いくつかのプロジェクトで

Linux OSに組み込まれているソフトウエアの日本語対応化作業26,27が行われた。

このころ「日本Linuxユーザ会(JLUG)」が発足している。

マイクロソフトから発売されたWindows3.1およびWindows95がPCユー

ザーの人口を増加させていったこの時期までは,Linux OSの利用者は開発や

普及に少なからず関心を持つ参加者がコミュニティに残る傾向があった。そし

て何らかの形で開発や普及に参加することで自ら環境を改善させることができ

た。そしてその実績は,コミュニティを通じて実績という名の名声を作り出し,

その名声が職への契機となる場合もあった。

しかし1997年に,GPLライセンス下の既存の日本語対応化ソフトウエアを導

入しつつ,保守サービスを提供する対価として有償とした商用Linux OS28が発

売された。この時期はLinux OSがデスクトップOSとしてWindowsに置き換え

られる可能性と,サーバ用途なのでの商用化を模索した時期でもあった。

Linux OSは主にオープンソース,特にGPLライセンスのソフトウエアで構成

されていたが,ソフトウエアの集積であるOSへの保守サービスに対して有償

とすることをGPLは妨げられない。この時期からコミュニティに参加する層は,

MS Windowsの代替となる「無料の」OSとして一般紙でも採り上げられたこ

とが手伝い,「利用者兼何らかの形での開発者」に替わって「商用Linux OSに

有償で保守サービスを任せる利用者」が増加してきたと思われる。

一方,基幹業務用やエンドユーザー向け商用を提供するソフトウエアベン

ダーやハードウエア企業は,Linux OS29の出現当初は関心を寄せていなかった

と推測される。特にPCに追加機能を提供する各種ハードウエア企業は,Linux

OSに対してハードウエアを制御するためのドライバと呼ばれるハードウエア

24 JM(http://linuxjm.sourceforge.jp/)

25 JE(Japanese Extension)と称された。

26 1997年11月5日にこじまみつひろ氏がPlamo Linuxの最初の公開を行っている。

27 他のUNIX(系)OSでも採用されるX Window systemの日本語化などはOSか

ら独立して日本語対応化(L10N),国際化(I18N)が行われた。

28 TurboLinux(http://www.turbolinux.com)

駿河台経済論集 第21巻第2号(2012)

56

を最適に制御するソフトウエアを提供しなかった。この理由としては第一に

kernelがGPLライセンスのLinux OSに対してドライバのソースコードを提供

することを拒否したためであり,第二に95年頃まではLinux OSの市場価値を

否定したためと思われる30。Linux kernelの開発も,90年代前半までは機能の

実装が最優先で,実装方法はIntel86アーキテクチャに依存していたと言われ

ている。ところが90年代後半に入ると,研究環境や各種サーバ用途でLinux

OSの負荷に対する頑健性を示す運用実績が出現し,市場規模も拡大していっ

た。kernelの設計も徐々に柔軟に他の環境に移植可能な設計に書き換えられて

いった。この状況の変化に対応して,現在ではいくつかの企業が自社の従業員

をkernelの開発に参加させている。これは単なるブームでは終わらなかった

Linux kernelが,いわゆるバザール方式の開発スタイルで,利用者の利用に

よって常時問題点を抽出解決しながら開発されてきたおり,しかもそのソース

コードの入手が確保されてきているからだという仮説を立てることができる。

コミュニティ自体の変化としては,法人格を持たない「日本Linuxユーザ会

(JLUG)」から1999年に「任意法人日本リナックス協会31」として組織化され

た時期32でもあった。そして現在では,一部の商用Linux OS33では,MS Win-

dowsやMacOSと同様に見なす純然たる利用者と開発者が分離している構造に

変異している34。これらの商用Linux OSの利用者は利用者に徹しており,不具

合に遭遇した場合,商用Linux OSベンダーの利用者向けメーリングリストで

不具合を報告しベンダーからの回答を待つ場合のほかに,BTS35と呼ばれる開

29 ビデオボードのドライバに関しては,高性能の特殊なハードウエアを開発す

る企業はX Window system用のドライバを公開しなかった。X Window system

は他の商用UNIXでも採用されていたが,X Window systemには一時期これらの

メーカのボイコット文章が同梱されていたことがある。

30 当時の専門誌の一連の記事およびコミュニティの議論からの類推であり,参

考文献をあげるとすればそれらの情報すべてであるといわざるを得ない。

31 http://jla.linux.or.jp/

32 1999年4月1日発足

33 RedHat,SUSE,TurboLinux等が商用Linuxに該当する。

34 コミュニティベースのDebian(http://www.debian.or.jp/)などでは,MLの

流量は変わらず多い。

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

57

発者への不具合追跡システムで連絡しベンダーからの回答を待つ場合もある。

利用者がソフトウエアをブラックボックスとして扱いさらに利用者数が多い場

合BTSは効率的な不具合追跡システムだが,利用者が開発側の不具合に対する

すべての議論を閲覧できない場合があり,その点で利用者を開発側には誘導し

にくい。また現在ではJF,JMなど日本Linux協会下にあったプロジェクトは

“Sourceforge Project”36に収納されている。

ここまでは1990年代から現在までのLinux OSの日本におけるコミュニティ

の推移を振り返ってみた。これを一般化すると以下のようになる。

コミュニティは時間の経過と共にOSSソフトウエアの開発の進行と利用者数

および利用者の「質」の分散を続けていった。OSSコミュニティ,特にバザー

ル方式を採用している場合は,コミュニティの構造はコミュニティの主催者や

運営集団が決定するものではなく,コミュニティの状況が構造を決定すると考

えられる。そこで,以下ではコミュニティのシンプルなモデルを構築し,どの

ような場合にコミュニティの構造変化が起きるのかを検討する。

4.モ デ ル

OSSを開発する場として「コミュニティ」が存在する。コミュニティの参加

者は,OSSソフトウエアの単なる利用者ではなく,GPLライセンスの下でOSS

を開発している利用者かつ開発者である。コミュニティの参加者はOSSの開発

に関する諸情報の交換を行うために会合を持つ他に,メーリングリスト,IRC,

35 Bug Tracking System

36 http://sourceforge.jp

図表1:コミュニティの分岐の推移

駿河台経済論集 第21巻第2号(2012)

58

その他を通じて情報交換を行う。コミュニティはソースコードとメーリングリ

ストの倉庫を持つ。倉庫の内容は,誰でも制限なく利用できる。

コミュニティにはHigh SkillとLow Skillの2種類の開発者が存在する。GPL

ライセンスの下でOSSの開発を行う開発者がコミュニティに参加する際には,

いくつかの互いに排他的ではない動機を持っている。すなわち,・高価でライ

センスが販売されるプロプライエタリなソフトウエアのクローン37を作ろうと

するなど,個人的な必要性に基づく動機,・コミュニティ内での名声の獲得に

基づく動機,・将来の就職に備えた履歴の蓄積に基づく動機38,・営利企業が

OSSを一ツールとして採用しており,OSSの開発に協力することが結果として

自社の営利企業に正の利益をもたらす場合,などである。

High Skillはソースコードを書く能力を持ち,開発したプログラムの不具合

を発見することができる。また,発見した不具合を,ソースコードを書き替え

ることを通じて解決する提案を行う能力がある。Low Skillは,ソースコード

を新たに書く能力はない。しかし,開発したプログラムの不具合を発見するこ

とができる。Low Skillはコミュニティでの活動において,High Skillになるこ

とを目標に活動している。

コミュニティには,GPLにおける開発を拒否しない限り個人でも企業でも参

加できる。この時,コミュニティにおける活動の結果は個人からすれば効用で

あり,企業にからすれば利益と呼ばざるを得ない。本稿ではHigh SkillとLow

Skillの2種類の開発者に注目するが,コミュニティ内では個人と企業がこれら

37 例としてS言語に対するR言語,MATLABに対するOctave,Scilabなどが挙

げられる。

38 Raymondの一連の主張のほかに,Bitzer, Schrettl, Schroder(2007)の説も導

入したい。

図表2:モデルにおけるコミュニティの分岐の推移

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

59

2種類の開発者として同時に活動している。従ってコミュニティ内における個

人と企業の活動の成果を「効用」と統一して称する。

コミュニティ内にはN(人)の開発者が活動している。全体の開発者のうち,

αNがLow Skillであり,(1-α)NがHigh Skillと仮定する。ただし,αは以下を仮定する。

0<α<1 (1)

αはコミュニティの状態変数である。High Skillの立場で考えれば,新たなソースコードの開発の段階では,仕様や実装についてHigh Skill間では議論が

可能だがLow Skillのコメントはノイズとなる。しかしソースコードの開発に

おいて,仕様が確定してコミュニティ内で公開テストを行う場合,High Skill

からの不具合の指摘のほかに想定外の操作を行う可能性を持つLow Skillから

の不具合の指摘は非常に有用である。また,各利用者かつ開発者は,自分が

High SkillとLow Skillのどちらかに属するかを正しく認識していると仮定する。

コミュニティの規模をN,Low Skillの全体に占める割合αとした場合,

High Skillの評価関数uhとLow Skillの評価関数ulを以下のように定義する。

uh=[ηh-λh(1-α)N]N (2)

ul=[ηl-λlαN]N (3)

ηxとλx(x=h,l)は,High SkillとLow Skillの特徴に関する係数である。コ

ミュニティの規模Nが増加する場合,従来からの参加者の間では既知の知識あ

るいはコミュニティ内の暗黙のルールが,開発者が新たに参入するたびにコ

ミュニティに繰り返し発生する質問に対応することになる。コミュニティの規

模Nが増加する場合,High Skillの数が比例して増加する結果,High Skill間の

仕様や実装に関する議論の内容が高度化しかつ流量が増加する結果,High

Skillから学習するソースコードを書く能力に関する低下する可能性がある。一

方,Low Skillの立場から考えれば,High Skillと同じコミュニティにいれば,

High Skillからソースコードを書く能力について学習することができる。つま

り,コミュニティの規模NとLow Skillの全体に占める割合αに依存して,同一のコミュニティにHigh SkillとLow Skillが混在していた方が望ましい場合と,

High SkillとLow Skillが分離して別のコミュニティを作った方が,High Skillと

Low Skillのどちらかが望ましい場合がある。そこで以下の仮定を置く。

駿河台経済論集 第21巻第2号(2012)

60

ηh

λh<ηl

λl (4)

これは,High SkillはLow Skillと比較して,コミュニティの規模よりも自分

と同じスキルの開発者が多く存在することを重視することを仮定している。コ

ミュニティの統合と分離の選択に関しては次の手続きを通じて決まる。すなわ

ち,High Skill又はLow Skillでコミュニティの分離または統合の提案があると,

コミュニティ内で提案に関する投票が行われる。投票の後,動議を行った提案

側が全体の過半数を上回ればその動議はコミュニティで採択される。

上記の仮定から,High Skillから「統合していたコミュニティを,High Skill

とLow Skillのサブコミュニティに分割する」という提案がなされたとする。

この際,High SkillとLow Skillは自分の所属するSkillの利益を最大化するよう

に投票を行う。

上記の評価関数を,α,ηh,λh,ηl,λlを与件としてNについてFOCを計算

すると,High SkillとLow Skill各々の効用が最大となるコミュニティの規模は,

以下のようになる。

N h*=ηh

2λh(1-α) (5)

N l*=ηl

2λlα (6)

High SkillとLow Skill各々の効用が最大となるコミュニティの規模は,コ

ミュニティにおけるLow Skillの全体に占める割合の関数となる。�および�

からN h*>N l*となる条件より,以下の命題が導出される。

命題:

α> ηlλh

ηhλl+ηlλh (7)

を満たすとき,High SkillとLow Skillから構成されていたコミュニティは,

High SkillのコミュニティとLow Skillのコミュニティへ分割される。

High SkillがコミュニティにおけるLow Skillの全体に占める割合αの増加による不利益が,コミュニティ規模の増加がもたらす利益を上回ったとき,コ

ミュニティの分割が提案される。コミュニティ全体におけるLow Skillの全体

に占める割合αは,(7)で示すとおりHigh SkillとLow Skillの特徴に関する係

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

61

数から決まる。この提案はN h*>N l*となることから可決され,コミュニティ

はHigh SkillのコミュニティとLow Skillのコミュニティへの分割が行われる。

5.ま と め

本稿では,OSSコミュニティ構造の変化について検討を行った。検討におい

ては,High SkillとLow Skillから構成される開発者かつ利用者からのコミュニ

ティの構造の変化に関するシンプルなモデルを構築し,内生的に構造変化をも

たらす条件を検討した。今後検討すべき点としては以下が挙げられる。第1に

本稿で検討したモデルの再検討である。本稿のモデルではHigh SkillとLow

Skillの2種類の開発者のみを考慮しているが,現実を顧みればコミュニティの

規模の拡大に従って,コミュニティに新たに参加してくる開発者の技量が連続

的に下がってゆく状況を検討する価値があると思われる。

第2に,営利企業がOSS開発に積極的に参加している現状に対する企業の動

機および目的の検討である。一例として企業がGPLをライセンスとするOSS開

発に参加する場合,GPLの下の公共財の性格を持つソースコードを無償で入手

し自社が開発するアーキテクチャに移植することができる。しかしGPLのソフ

トウエアを拡張して自社のアーキテクチャ向けに移植した改変部分は同じソフ

トウエアライセンスが適用されるので,ソースコードを公開することにあらか

じめ合意した上でソースコードを流用していることになる。企業はBitzer,

Schrettl, Schroder(2007)の“homo ludens”的動機で事業を行っているとは

考えられず,どのような条件を満たしている企業あるいはプロジェクトがOSS

開発に参加するのかについて検討したい。

駿河台経済論集 第21巻第2号(2012)

62

資料

Linux「日本語化の歩み」39

1991年10月5日 最初の公式版Linuxであるv.0.02が発表された。

1992年10月13日 KON(Kanji ON console)公開。

1992年12月3日 Linux―ML開始。

1992年頃にはSLS(*)のパッケージが入手でき,日本語環境ではkonやnemacs(日

本語Emacs)などがftpで入手できた。

1992年7月21日 NIfty―ServeでTowns Linux―0.96c―PL1―TL0αテスト版が公開。

1992年7月25日 Nifty/FFMPROにLinux porting Lab. 会議室が誕生(FM Towns関

連フォーラム)。1994年からNifty/FFMHOBへ移行。

1993年頃からPC/AT機が一般的に普及し始める。

1993年5月1日 JE(Japanese Extension)がLinux―MLでリリース

1993年5月 Nifty―Serve funixにLinuxの会議室が開設された。

1993年7月5日 JEパッケージ公開。

JEパッケージは1998年JE―0.9.8aで終了。

1993年8月4日 Linux JF(Japanese FAQ)Project結成。

1993年8月25日 fj.os.linuxニュースグループ開始。

1993年9月 「Linux情報メモJapanese INFO―SHEET」が公開され,以後定期的に更

新される。

1993年10月15日 META FAQ日本版(JMETA―FAQ)の最初の公開版。

1993年10月頃からJFでLDPのHOWTOの翻訳活動が活発になる。

また,Niftyの参加者がJFの活動へ参加するようにもなった。

1993年11月下旬 LASER5が日本語Linux + JEを発売開始。

1993年12月 Linux v.0.09リリース

1994年3月14日 Linux v.1.0リリース

1994年3月 Linux Journal創刊号

1994年2月 Laser5版日本語Linux + JE(JE2)発売。

ソフトウェアデザイン誌1994年3月号にLinuxのインストールについての記事

(*)掲載。

1994年9月 Laser5版日本語Linux + JE(JE3)発売。

Slackware V.2.0がパッケージに収録される。

39 中谷千絵 1999Linux「日本語化の歩み」,http://web.kyoto-inet.or.jp/people/

jeanne/linux/sd/japanese.txtより抜粋,著者が追補。

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

63

1994年11月4日 Linux Japanese Extensions HOWTO V1.10

1994年12月21日 Linux FAQ日本語版(英語版FAQ1994/12/21の翻訳)が公開。

1994~1995年頃からインターネット接続サービスをする「プロバイダ」が登場し,ppp

接続サービスを始める。

1995年2月10日 小山ほか著「Linux入門―PC互換機の最新UNIX環境」出版。

1995年2月 Linux Gazette創刊号

1995年4月20日 はねひでや著「Linuxお気楽・極楽インストール」出版。

1995年9月18日 Netscape Navigator2.0発表

1995年9月 Slackware3.0ELF版が登場

1995年11月11日 はねひでや著「Run Run Linux」初版 アスキー出版局

1995年11月 Windows95発売。

1995年12月2日 Linux + JE4(JE4)パッケージLaser5から発売。

1995年12月4日 Linuxの創始者Linus氏初来日。

1996年1月 Linux入門キット出版。

1996年3月 FreeBSD用の日本語文書の収集を進めるプロジェクト(jpman)発足。

1996年5月6日 日本Linuxユーザ会のウェブサイトが立ち上がる。

1996年8月29日 Debian JP Projectのdebian―devel ML発足。

1996年11月 Linux Japan創刊号発行

1997年1月 FreeBSDオンラインマニュアル翻訳プロジェクト(jpman)のページ公

開。

1997年2月 一般ユーザを対象にしたLinux Users MLスタート

1997年3月16日 Jman(JM)プロジェクトからLinux 日本語マン・ページVersion

0.1初版公開

1997年11月5日 plagia―alpha41st print配布(98/05/24にPlamoに改名)

1997年12月6日 PJE―0.1PJEリリース

1997年12月 TurboLinux1.0リリース

1998年8月 情報ビルダーズがTurboLinux日本語版2.0対応Applixwareリリース。

1998年10月11日 JMおよびXJMANで日本語に翻訳したマニュアルの検索ページ公

1998年10月14日 JMの活動から,X Window Systemに関連したマニュアル群を日本

語に翻訳するプロジェクトXJMAN発足。

1998年11月 Eric S. Raymond氏がGoodbye,“free software”; hello,“open source”を

発表。

1998年11月11日 Linux―users ML FAQ Ver0.6がまとめられた。

駿河台経済論集 第21巻第2号(2012)

64

1998年11月16日 RedHat Linux5. xをベースにしたVine Linuxリリース

1998年12月 Linux Conference ’98開催

1999年3月18日にVine Linux製品版発売決定。

1999年3月19日 NIFTY SERVEが初心者向けLinuxフォーラムFLINUXを開始。

1999年4月1日 日本Linux協会設立

1999年6月18日 Vine Linux1.1CR(Commercial Relese)発売。

1999年7月17日 Linux Japanese RPM ProjectよりJRPM60リリース。その後休眠

状態へ。

2002年5月24日 五橋研究所が最後のLinux Japan誌を出版後休刊

*SLS Softlamding Software(SLS)のパッケージ*ソフトウェアデザイン 1994年3月号「Laser5版 日本語 Linux + JE」

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

65

参考文献

Bitzer, J., W. Schrettl, P. Schroder Intrinsic motivation in open source software de-

velopment, Journal of Comparative Economics, Vol.35(2007), Issue:1(March),

Pp.160―169

Hippel, E., and G. Krogh, Open, Source Software and The“Private―Collective”Inno-

vation Model: Issues for Organization Science, Organization Science March/April

2003vol.14no.2, Pp.209―223

Lerner, J., and J., Tirole,“Some Simple Economics of Open Source,” Journal of In-

dustrial Economics,52(June2002) Pp.197―234

Lerner, J., and J., Tirole, The Economics of Technology Sharing: Open Source and

Beyond, NBER Working Paper No.10956, Issued in December2004

Levy, S.,2001,“Hackers: Heroe of the Computer revolution”, Penguin.

Mauss Marcel,贈与論(1925)有地他訳(社会学と人類学�収納)弘文堂

Raymond, E., S., The Cathedral and the Bazaar, http://www.catb.org/~esr/writings/

cathedral-bazaar/cathedral―bazaar/

Raymond, E., S., Homesteading the Noosphere http://www.catb.org/~esr/writings/

cathedral-bazaar/homesteading/

Raymond, E., S., The Magic Cauldron http://www.catb.org/~esr/writings/cathedral-

bazaar/magic-cauldron/

(伽藍とバザール 山形浩生訳・解説 光芒社収納)

Brooks. F., P.,滝沢徹他訳 人月の神話―狼人間を撃つ銀の弾はないアジソンウェス

レイパブリッシャーズジャパン

DiBona他編 倉骨彰訳 オープンソースソフトウエア O’Reilly

Waber, S.,2004.“The Success of Open Source”, Harvard University Press.

OSI 承認ライセンス 日本語参考訳 Open Source Group Japan. http://www.

opensource.jp/licenses

SourceForge http://sourceforge.net

オープンソースの定義 Open Source Group Japan. http://www.opensource.jp/osd/

osd-japanese_plain.html

中谷千絵 1999 Linux「日本語化の歩み」,http://web.kyoto-inet.or.jp/people/

jeanne/linux/sd/japanese.txt

[linux-users:00001] Hello! Linux Users, http://search.luky.org/linux-users.0/

駿河台経済論集 第21巻第2号(2012)

66

msg00000.html

オープンソースソフトウエアの開発プロセスにおけるコミュニティの構造変化について

67