フリーJavaコミュニティで慎重な楽観論を持って受け止められたJavaのニュース
フリーJavaプロジェクトの中には、より大きなApacheプロジェクト向けのJavaを開発することを目的としたApache Harmonyプロジェクトのように、特定の目的のために存在するものがある。しかし、これまでフリーJavaプロジェクトが存在してきた主な理由は、多くのJavaベースのプロジェクトがフリー・ライセンスを使用しているにもかかわらず、Java自体がフリーではなかったためである。
Free Software Foundation(FSF)のRichard M. Stallmanは、ある論説の中で、非フリー・ソフトウェアに依存するフリー・ソフトウェアのパラドックスを「Javaトラップ」と表現し、これをやめるよう強く警告した。
Javaのライセンスの問題に対応するために、Kaffe、Classpath、GNU Compiler for Java(GCJ)など、フリー版のJavaを開発するさまざま活動が何年にもわたって続々と登場してきた。ここ数年は、特にClasspathとGCJの統合により、Eclipseなどのプログラムや、多少のハックでOpenOffice.orgのJavaベースのコードを実行できるフリーJavaが成熟の域に達していた。けれども、これらの成果はSun Javaの完成度にはほど遠く、おしなべて最新版のSun Javaに後れを取っていた。
コミュニティのリーダーたちの反応
Sunの発表により、この状況は一夜にして変化したように見える。コミュニティのリーダーたちは、ほぼ一様に肯定的な反応を示している。事実、Stallmanはよく反企業的であると非難されるが、この発表に対する彼の反応はSunを支持するものにほかならなかった。
数週間前から流れていた公開の噂に対し、StallmanはFSF Europeとのインタビューで、もっと早く公開されていればフリーJavaコミュニティの活動の大半は必要なかったかもしれないが、恨みを持たずにSunをコミュニティに受け入れることが重要だと強調している。彼はまた、フリーJavaコミュニティがますます発展しつつあることが、公開の一因になっていることは間違いないとも述べている。
実際の公開に際し、StallmanはSunの発表に伴って公開されたビデオに出演するほどの協力姿勢を見せている。皮肉にも、このビデオは非フリーのFlashプレイヤーでしか見ることができないが、ビデオの中でStallmanはSunの行動を手放しで賞賛している。「Javaトラップが存在しなくなるのはとても喜ばしいことです」Stallmanは言う。「今回の件で、Sunはどの企業にもまして、ソフトウェアの形でフリー・ソフトウェア・コミュニティに貢献したと思います。そして、Sunは指導力を発揮しています。他の企業も後に続くことを願っています。」
別のビデオでは、Software Free Law CenterのEben Moglenも同じように熱心な支持を表明している。この公開をフリー・ソフトウェアの「たぐいまれな信任投票」と呼び、フリー・ソフトウェア・コミュニティを支援することで、Sunは自らも支援することになると述べている。
Brian Behlendorf、Tim O’Reilly、Mark Shuttleworthをはじめ、他のコミュニティのリーダーもビデオ・インタビューに出演して公開に協力している。
開発者たちの反応
多くの開発者たちも、同じように熱心な反応を示している。「これは実際に、Kaffeプロジェクトにとって大きなカンフル剤となります」KaffeのメンテナであるJim Pickは言う。「SunのJDKからコードをそのまま合法的にコピーし、Kaffeで使えるようになりました。すぐにもその作業に取りかかるつもりです。開発者全員がとても興奮しています。」
Pickによると、公開の最も重要なメリットの1つは、Kaffeが「Sunからの訴訟を恐れることなく、自分たちの実装と公式な実装を比較およびテスト」できるようになったことだという。
大多数の開発者の反応にも、明らかに同様の興奮がうかがえる。しかし同時に、フリー・ソフトウェアの開発者たちはコミュニティのリーダーたちよりも慎重な姿勢を見せている。
公開当日に早くも警告の言葉を発したのは、Debianの開発者のMJ Rayである。「はしゃぎすぎるのは良くない」と、RayはDebian Planetで釘を差した。彼は、SunのFAQによると、「オープンソース化されたコードをほぼ完全にベースにした、きちんとビルド可能なJDKが2007年前半にリリースされる」予定であることに目を向け、「2007年にほぼでは、惜しいところだが及第点ではない」という表現で、自らが異議を唱える部分を強調した。
GCJの初期の作業を行ったCygnus Javaプロジェクトの技術リーダーをかつて務め、現在はKawaやJEmacsなどのさまざまなフリーJavaプロジェクトのコントリビュータとなっているPers Bothnerも、同様の反応を示した。公開当初、Bothnerは「たくさんの人々がGNU Classpath、GCJ、および関連プロジェクトに懸命に取り組んできており、もしJavaがもっと早くGPL互換ライセンスのもとで公開されていたら、おそらくその一部の活動をもっと効率的に活用できただろう」と指摘こそしたものの、公開は「とても良いニュースだ」と語っていた。しかし、その日の終わりになると、Bothnerは多くの開発者と同様、ニュースがコミュニティに与える影響をより子細に検討するにつれ、目に見えて慎重になっていった。
ショーは続く
FSF Europeとのインタビューの中で、StallmanはフリーJavaとSunのコードの統合の可能性を予想した。その統合の可能性はまだ残されているが、フリーJavaコミュニティは必ずしもそれを期待していない。実際、コミュニティの大半のメンバーは、多くのフリーJavaプロジェクトが継続すると予想している。
フリーJavaプロジェクトが継続するかどうかという点について、BothnerはGCCメーリング・リストで、「どちらとも言えない」と発言している。Bothnerは、Tim Brayとのインタビューのコメントを見ると、一部のJavaライブラリは含まれない可能性があるため、同等のフリー・ソフトウェアが必要になるだろうと指摘する。
「おそらく、Sunが公開するコードの大部分は統合されるでしょうが、全部ではないでしょう」とBothnerは続けている。彼は、フリーJavaの実装やアプリケーションの中には、Sunの同等品より望ましいと判明するものがある一方で、互換性がないものもあるのかどうかという疑問を提起している。こうした問題は、「技術的な問題でもあり、ライセンス/政治的な問題でもあり、プラグマティックスの問題でもあります」とBothnerは書いている。
GNU Classpathのメンテナで、GCJおよびEclipseの主要なコントリビュータでもあるMark Wielaardもほぼ同じことを言う。「たくさんの問題を検討する必要があります」彼はNewsForgeに語った。「もっと優れたフリー・プラットフォームを早急に実現するような方法で、GNU Classpath、GCJ、Kaffe、Cacao、JamVM、IKVMなどを、フリー化されたSunのコードとすぐに結合できるのか。Hotspotと他の[ランタイム環境]とでプラットフォームの対応範囲はどのように違うのか。持ち越すことができるのはどういった種類の改良で、分離する必要があるのはどれか。すべてを何らかの新しいコードベースに移動することなく、研究分野全体とGNU Classpathコミュニティのプロジェクト(現在20以上)を前進させるにはどうすればよいのか。」
その答えの多くは、次のコードの公開を準備するにあたり、「今後半年で[Sunが]コア・ライブラリのどの部分を公開できるか、できないか」 にかかっているとWielaardは指摘する。しかし、答えがどうであれ、短期的にも長期的にも、フリーJavaプロジェクトが消滅することはないとWielaardは明らかに予想している。
Apache HarmonyプロジェクトのGeir Magnussonは自身のブログで、GPL化されたJavaの影響について述べている。
「Apache Harmonyにどのような影響があるのかとよく訊かれます。私は、プロジェクトの日々の活動にそれほど大きな変化があるとは思いません。我々は同じ目標を持ち、同じ問題に取り組み、同じ成果を上げようとしています。以前にどこかで述べたように、ApacheとSunではコミュニティも、ライセンスも、貢献の条件も、管理モデルも異なっています。Apacheプロジェクトはピアの集合で、おのおのが独自の参加理由を持っています。私は、Sunがもたらしたこの良いニュースによって、我々の活動が変わることはないと考えています。単にオープンソースのJavaが増え、ユーザやコントリビュータにとっての選択肢が増えるだけのことです。」
結局のところ、Sunが最終的にどれだけの量のコードを公開しようと、SunはJavaのコントリビュータの1つにすぎず、すぐさま最も重要な位置を占めるわけではないというのが全般的な受け止め方である。GCJコントリビュータのJoel Diceは言う。「貢献と同じように重要なのは、既存の多くのフリーJavaプロジェクトが関与し続けることです。彼らの活動は、単に適合するJavaの実装を提供することだけにとどまらないからです。GCJが良い例です。Java、C++、およびCのコードを同じプログラムで混在させる場合、GCJはどのコンパイラよりも優れた働きをします。Sunがこうした実験的なコードを「真の」Javaの一部として受け入れるか拒否するかはわかりませんが、それだけを成功の判断基準にする必要はありません。」
多くのフリーJava開発者にとって、このニュースの要点は可能性の意識の高まりであるように見受けられる。「宴が終わったら、きっと我々全員からすばらしいことが聞けるでしょう」Wielaardは言う。「そして我々は、思いのままに改良する自由を行使するのです。」
Bruce Byfieldは、コース・デザイナ兼インストラクタ。またコンピュータ・ジャーナリスト としても活躍しており、NewsForge、Linux.com、IT Manager’s Journalに定期的に寄稿している。