オープンソースプロジェクトを成功に導くには何が必要か。リーダーシップは最も優秀な開発者が握るべきか。それとも最も知識のあるパワーユーザーか。つまり筆者以外なら誰でも良いのか。
いや、違う。結局はSiobhan O’mahonyとFabrizio Ferraroという2人の学術研究者が「Academy of Management Journal」で最近発表しているように、オープンソースのコミュニティーにおいても、コンピュータ開発とは無関係のオフラインの組織と同様に、リーダーシップはそれを実際に運営している人間が握っているのである。つまり、コミュニティー内部で単に最も優秀なコードを書いている人間ではなくて、プロジェクトを1つのコミュニティーとして大切に考え、それを育てている人間だ。
一般にオープンソースコミュニティーは能力主義で運営されていると信じられている。つまり能力のある人間が権威を持っているというわけだ。しかし、こうしたコミュニティーにおける「能力」が技術的な貢献度を意味するものなのか、それとも組織を運営する手腕なのかは明確ではない。「Debian」の2001年のプロジェクトリーダーを選ぶ選挙について、ある開発者は「無名の開発者がプロジェクト内部で絶対的な地位を獲得していく例をいくつも見てきた」と述べている。そうすると優れたコードが書ければ自動的に優れたリーダーの地位に就けるということなのだろうか。
答えはノーだ。研究者たちの調査によると、技術的な貢献度が高ければ必ずしも自動的にプロジェクトリーダー、プロジェクトセクレタリー、または開発者アカウントマネージャーといった統率チームの一員になれるわけではないという。一般には組織の運営に干渉しないリーダーが好まれているが、時間の経過とともに実際に組織をまとめ上げる能力の重要性がますます高まってくる。能力主義に基づく過度に単純化されたリーダーシップ論に反して、実際には組織をまとめ上げようという意識を持った開発者がリーダーになる可能性が高い。Debianのコミュニティーでは、各開発者の作業を調整し、それらをコミュニティーの最終目標に結びつけるという裏方の仕事が、特にプロジェクトが成熟するにつれて不可欠なリーダーの役割になっている。
これはLinus Torvalds氏に対するEric Raymond氏の見方と一致している。Torvalds氏は優秀な開発者だが、彼が真に天才的なのは開発を管理するその能力である。この差は大きい。
以上のことを総合すると、オープンソースプロジェクトでは、それが商用のものであれコミュニティーによるものであれ、最も優れたリーダーは最も優秀な開発者ではない可能性が高いということなのかもしれない。実際、その人の性格がどれほど神経質かにもよるが、たとえ天才的な開発者ではなくても人付き合いのいい人と一緒に仕事をする方が仕事がはかどるのではないか。
換言すれば、たとえどんなに優れたコードを書けても世間知らずな人間はだめだということだ。そのような人間もプロジェクトには必要かもしれないが、運営を(最後まで)任せるべきではない。
この記事は海外CNET Networks発のニュースをシーネットネットワークスジャパン編集部が日本向けに編集したものです。海外CNET Networksの記事へ