Xaraのオープンソース化の失敗から得られた教訓
Xara Xtremeのソースコードは、2006年3月にフランスのリヨンで開催されたLibre Graphics Meetingの開会式において公開された。この時のリリースはバージョン0.3であり、その後数ヵ月の間に、それに続く数バージョンがリリースされている。最後にリリースされたバージョンは、2006年8月にリリースされたバージョン0.7だ。
Xaraとボランティア開発者コミュニティは重大な点、すなわちXara XtremeのコアレンダリングライブラリであるCDrawのソースはクローズドのままにするというXaraの決定について、ほぼ最初の時点からずっと意見を衝突させてきた。開発者たちは再三に渡って、「半分オープン、半分クローズド」という状態のアプリケーションには協力できないと主張してきた。
しかしXaraは、公開した部分のコードだけで十分なはずであり開発者コミュニティは開発時間を寄与しておらず約束を守っていないと主張し、開発者コミュニティの意見を聞こうとしなかった。
2006年の秋にはXaraは同社の開発者をオープンソースプロジェクトから撤退させて、同社のメインの「ドル箱」であるWindows用製品の次期メジャーリリースに全力を傾けるようになった。
その後すぐにXara Xtremeのメーリングリストは、コード自体についての建設的な話し合いではなく、オープンソースプロジェクトとしての存続可能性についての議論で埋め尽くされてしまった。このメーリングリストに投稿された2007年8月29日のメッセージの中でXaraのCharles Moir氏は、XaraのプログラマはオープンソースプロジェクトのXara Xtremeにはもう取り組んでいないとはっきりと述べて、オープンソースコミュニティにその後の責任を押し付けた。
期待と想定
振り返って考えると、Xaraはオープンソースに対する先入観と期待をもってこの試みを開始した――そしてその先入観と期待は間違っていたのだ。
Xaraの考えでは、Xaraはソースコードを寄与し、オープンソースコミュニティは開発者時間を寄与するはずだった。そしてXaraは実際にコミュニティのためにコードを公開したのだから、コミュニティにはコードに取り組む義務があるはずだったのだ。しかし残念ながら、今ではXaraにとっても明らかになったように、開発者コミュニティはそのようなルールで動いているわけではないのだ。
とは言え、そのような誤解があったとしても、それは取り返しのつかない失敗だったというわけではない。どのような新しいビジネスモデルについても初めて取り組むときにはそのような恐れがあるのと同じように、オープンソースに初めて取り組む際に多くのプロプライエタリソフトウェアベンダが誤った想定をしている。
ではXaraの試みを失敗に向かわせたのは何かと言えば、開発者コミュニティからの率直なフィードバックが繰り返し得られていたのにも関わらず、そのような誤った想定を固持し続けたということだ。Xaraに対しては大勢の開発者たちが、コアであるCDrawがクローズドソースのままであるのであればXara Xtremeに取り組む時間もエネルギーも寄与しないときっぱりと告げていた。しかしXaraは当初の立場をそのまま貫き、要はコミュニティ側が間違っている(すわなちXaraがリリースしたコードは「十分」であり、開発者たちは不平を言うのをやめてコードへの取り組みを開始するべきだ)と開発者コミュニティに対して述べてきた。
2つの問題点
Xaraは、まず第一に表面的な問題点――CDrawをクローズドにしておくことの重大性――について間違っていた。Xaraが主張していたことは要は、同社が「全コード」をリリースしないからといって一体何の問題があるというのか、ということだ。つまりXaraはコードの90%をリリースしていたのだから、何から何までをリリースした場合に得られるはずの見返りの最低でも90%は得ることができるはずではないのか、ということだ。
しかしソースコードは、計り売り可能な干し草の山とはわけが違う。公開されていない10%が全体をまとめている部分である場合には、90%と言えどもゼロに等しい――そして開発者コミュニティはCDrawはまさにそういう部分だと考えていた。CDrawはアドオン的な機能なのではなく、Xara Xtremeの中心的な部分だったのだ。またCDrawは、Xaraにはリリースすることのできない、Xaraがサードパーティからライセンスを受けたサードパーティの所有物であったわけでもない。つまりXaraが自分たちだけで所有して自分たちの管理下に置くために、Xara自身がクローズドのままにしておくことを決めていたのだ。
とは言え、より根本的な問題点は表面的なものではない。Xaraは、開発者コミュニティが従って動くべきルールを規定する権利が自らにあると考えていたが、そうではないのだ。コミュニティ内の開発者たちは、それぞれが自ら好んで自発的に参加している。そのような開発者たちの行動を許可したり禁止したりする命令を一方的に行なうことは、関係を壊すことになる。Xaraは、コミュニティが受け入れがたいと感じるようなルールを決めた。しかしより重要なこととして、コミュニティの意見に耳を傾けてそれに適応するということを拒絶した。それにより、(開発者コミュニティはみなボランティアなので)彼らには参加してコードに取り組む動機がなくなってしまったのだ。
開発者コミュニティと協力して対等な関係で協働することをしなかったことで、Xaraは結局、ボランティア全員を(自らの手で追い払ってしまい)失ってしまった。そして2007年2月になってやっとXaraがオープンソースのCairoレンダラに移植したXara XtremeのSubversionブランチを公開することに同意(翻訳記事)したときには、勢いを維持するのに十分な数の開発者を引き付けることができなくなってしまっていた。
オープンソースプロジェクトにとって「終わり」とは?
最近、プロジェクトは終わったのかとメーリングリスト上で誰かが尋ねたところ、あるXaraの社員が、リリースされたソースコードはまだXaraのウェブサイト上でダウンロード可能になっているのだから、終わってはいないと主張した。「申し訳ないが、私は何か理解し損なっているのだろうか? Xtremeがあなたのマシン上で突然動かなくなってしまったということなのか? そうでなくても何か変化があったというのか?」。
確かに今でもXara XtremeのGPLの部分を利用して野心的な開発者が開発を継続するということが可能であることに違いはないが、そうすることの動機となるようなことはほとんどない。コードを書いて把握している本人である著作権保持者も参加しておらず、他のオープンソースのベクタグラフィックスプロジェクトの活発なコミュニティの方がずっと魅力的な存在となっている。
さらに言えば、Xara Xtremeの2006年のリリースであるバージョン0.7は、多くのLinuxディストリビューション上で今でも動く「可能性がある」とは言え、コアシステムライブラリが進化するのにともなって、やがてはビット腐敗に悩まされることになるだろう。そしてある時点で動かなくなり、SourceForge.netなどのプロジェクト用ホストサービス上で今なおダウンロード可能にはなっているが放棄された状態の何千というアプリケーションのようになるだろう。
当然ながらXaraにはまだ、同社の開発者をオープンソースプロジェクトに戻すか、Xara Xtremeのソースコードのすべてを公開するかのどちらかを行なうことにより、プロジェクト全体を生き返らせることができる。ただ、Xaraにその意思はないようだ。
オープンソースコミュニティと協力することを考えている企業は、Xaraのこの経験から少なくとも2つの教訓を得ることができる。一つは、ボランティアをアゴで使うことはできないということだ――良くても彼らははあなたの元を去ってしまい、最悪の場合はあなたのライバルに協力することになる。
もう一つは、コミュニティと協働するということは、適応して自らを変えようとすることであるということだ。コミュニティは、事前には思いも寄らなかった方向に動くかもしれない。そのときコミュニティの意見に耳を傾けたり適応したりすることを拒否すれば、おそらくコミュニティを殺してしまうことになるだろう。