Microsoft社はなぜOSCONでオープンソースにすり寄ろうとしたのか
月曜日、Microsoft主催のParticipate 08パネルディスカッションがあった。水曜日、Hank Janssen氏がMicrosoftOpen Source Software Labのプレゼンテーションを行った。木曜日、John Lam氏がIronRubyについて語り、Sam Ramji氏がSourceForge.net Community Choice Awardsに姿を現した。金曜日、Sara Ford氏がオープンソースの「エコシステム」について講演し、Sam Ramji氏が朝の基調講演者の1人として、下ろしたてのFirefox Tシャツに身を包んで現れた(写真)。
もちろん、ほかに種々雑多な広告やら何やらで会場のいたるところを飾り立てていたのは、イベントスポンサーとして当然の権利である。
Microsoftは「オープンソースが好き」というメッセージを大声で流しつづけた。どの講演者もIronRubyやWindows Installer XMLといったプロジェクトについて語り、同社のオープンソースプロジェクトポータルとなるCodePlexを持ち上げ、同社がApache Foundationに参加するという金曜日の声明を繰り返した。
疑惑
筆者には他人の心の内を読む力はない。だが、実際に覗いてみたいくつかのイベント(とくにParticipate 08パネルディスカッションとRamji氏の基調講演)で聴衆がMicrosoftに見せていた態度から想像するに、同社の話を額面どおりに受け取るOSCON出席者はさほど多くなさそうだ。この懐疑的態度には2つの原因がある。同社はこれまでオープンソースを「癌だ」「反アメリカ的だ」とけなしつづけてきた。なのにこの激変ぶりは何だ、というのが1つ。もう1つは、競合する技術を「懐柔と拡張」によって結局は圧殺してきた同社のこれまでのやり口である。
Microsoftが何の理由もなくオープンソースに対する考え方を改めるとは、とても思えない。改めることが自社に有利に働く――何らかの理由で経営陣がそう判断したからだろう。では、その理由とは何か。Microsoftは何を狙っているのか。
陰謀説が好きな人は、Microsoftの狙いはオープンソースの壊滅だと言う。内部から工作するか、外部から吸収するか、そのどちらかだと言う。この2つのシナリオには実は微妙な違いがあり、その違いは「オープンソース」という言葉自体から生じている。その違いを理解することこそ、Microsoftの真の狙いを探るうえで鍵となるだろう。
具体名を示せ
「内部から工作してオープンソースを壊滅させる」と「外部から吸収してオープンソースを壊滅させる」では、オープンソースという言葉の意味が異なっている。「オープンソース」には、オープンソースコミュニティ、オープンソース開発モデル、(Microsoftの製品と競合する)オープンソースソフトウェアの3つの意味がある。
Microsoftにとって関心があるのは、3番目の意味のオープンソースだけである。オープンソース開発モデルはMicrosoftと直接ぶつからないが、オープンソースソフトウェアはぶつかる。Linux、Apache、PostgreSQL、OpenOffice.orgと、いくらでも競合製品の名前をあげることができる。オープンソースコミュニティは、Microsoftの製品(Windows、Internet Explorer、Internet Information Server、SQL Server、Microsoft Officeなど)と競合するプラットフォームの開発母体という点でのみ、同社にとって意味がある。
今回のOSCONでは、月曜日のParticipate 08パネルディスカッションでBryan Kirschner氏が発した言葉こそ、筆者の耳にMicrosoftの本音と聞こえた。才能ある開発者の間でMicrosoftのプラットフォームはマインドシェアを失いつつある――Kirschner氏はそう発言した。未来の開発者は、オープンソースプラットフォームにより大きな魅力を感じている。
Microsoftはその開発者を取り戻したいのだろう。急にオープンソースを唱えはじめたのは、才能ある開発者や独立ソフトウェアベンダ(ISV)に向けられたラブコールだ。オープンソース開発モデルを取り入れることで、その人々をオープンソースプラットフォームから引き離し、Windowsプラットフォームに取り込もうとしている。
Kirschner氏の思いは、Microsoftのプロジェクトホストサイトやポータルサイトからもひしひしと伝わってくる。統合開発環境、インストーラ、ビルドツール……どれも開発ツールのサイトではないか。
そう、Microsoftが「オープンソース」への愛を大仰に示すのには狙いがあり、その狙いは開発者である。最後の具体名を言わず、単に「オープンソース」とだけ言う。一見、Microsoftもついにオープンソースコミュニティと仲直りする決心をしたか、とも思えるが、だまされてはならない。オープンソース開発モデルに多少の関心を示すのは、ISVや将来の顧客がそれを好むらしいからである。同社の最大の関心事は、やはり、自社製品プラットフォームの競争相手であり脅威でもあるオープンソースソフトウェアにある。
この戦略は功を奏するだろうか。何かプロジェクトを打ち出すことは、Microsoftにとって大した負担にならない(なにしろ、オープンソース開発はTCOが低くてすむことが売りだ)。しかも、確実に何人かの開発者を引き寄せられる。それがどの程度の人数になるかは、Microsoftとオープンソースコミュニティのどちらがどれだけ巧みにプロジェクトを遂行できるかで決まる。
筆者は、陰謀説には与しない。Microsoftがオープンソースコミュニティにすり寄り、混乱と破滅に導こうとしているという筋書きには無理がある。あまりに複雑怪奇すぎて、そのくらいなら直接攻撃したほうがずっと簡単だろうと思う。OSCON 2008におけるMicrosoftの言動は実にあけすけだった。才能ある開発者とISVを自社の製品ラインに誘おうとする意図が透けて見えた。Microsoftのその意図さえ見据えておけば、いくら「オープンソース」という言葉を不正確に使い、開発モデルとコミュニティとソフトウェアの違いをぼかそうとしても、こちらが動じる必要はない。