Y N U M C OpenJDK 協力体制の下で - Oracle文:JANICE J. HEISS Smith:...

4
ORACLE.COM/JAVAMAGAZINE /////////////// MAY/JUNE 2012 26 blog JAVA TECH COMMUNITY JAVA IN ACTION ABOUT US OpenJDK 協力体制の下で D onald SmithがJavaコ ミュニティにかかわるよう になり10年以上が経過 しました。複数のIT企業でエンジ ニア、コンサルタント、製品マネー ジャーに従事した後、2002年には オラクルに入社し、2005年までテ クノロジー・エバンジェリズムのディ レクターを務めました。その後は非 営利団体のEclipse財団に移り、 2006年から2011年までエコシ ステム開発ディレクターとして職務 を遂行しました。Donald Smith は現在、Oracle Canada ULCで Java SEに関する製品管理チーム に所属し、おもにOpenJDKコミュ ニティを担当しています。 2011年5月にオラクルに復帰 した際、Smithは自身のブログに こう投稿しました。「私が配属され たチームには1つのシンプルな役 割があります。それはJavaを世界 一 のコンピューティング・プラット フォームとして維持することです」 Java Magazine:OpenJDKと は何でしょうか。 オラクルのDonald Smithが、Java SEの共同開発の場で あるOpenJDKコミュニティについて語ります。 文:JANICE J. HEISS Smith: 基本的には、OpenJDKとはJava SEと関 連プロジェクトのオープンソース実装を共同開発す る場です。オラクルや他のベンダーが主催する一部 のオープンソースJavaコミュニティとは異なります。 たとえば、GlassFishコミュニティというのは、Java EEに関する共同開発の場です。Eclipseは、Eclipse 財団のJavaツールやランタイムに関する共同開発の 場です。NetBeansコミュニティは、オラクルのJava ツールに関する共同開発の場になります。このよう に、Javaエコシステムにはさまざまなコミュニティが あり、OpenJDKもJava SEに関する作業を行うコ ミュニティの1つです。 Java Magazine: OpenJDKの歴史についてお 聞かせください。Sun MicrosystemsがJavaを最 初にオープンソース化したのは2006年のことでし たね。 Smith: 最初の発表は2006年11月で、2007年に は実際のプロジェクトが立ち上がり、ソース・コードへ のアクセスが可能になりました。2007年から2009 年には、参加者が増加するにつれて、多くのプロジェ クトが実施されました。2009年になると、オラクル ではSun買収に向けてのプロセスがスタートし、Sun Microsystemsは2010年1月に正式に解散しまし た。その結果オラクルは、OpenJDKや進行中のプラ ンに対する取組みを公表できるようになりました。 写真:BOB ADLER

Transcript of Y N U M C OpenJDK 協力体制の下で - Oracle文:JANICE J. HEISS Smith:...

Page 1: Y N U M C OpenJDK 協力体制の下で - Oracle文:JANICE J. HEISS Smith: 基本的には、OpenJDKとはJava SEと関 連プロジェクトのオープンソース実装を共同開発す

ORACLE.COM/JAVAMAGAZINE /////////////// MAY/JUNE 2012

26

blog

JAVA TECH

COMMUNITY

JAVA IN ACTION

ABOUT US

OpenJDK

協力体制の下で

Donald SmithがJavaコミュニティにかかわるようになり10年以上が経過

しました。複数のIT企業でエンジニア、コンサルタント、製品マネージャーに従事した後、2002年にはオラクルに入社し、2005年までテクノロジー・エバンジェリズムのディレクターを務めました。その後は非営利団体のEclipse財団に移り、2006年から2011年までエコシステム開発ディレクターとして職務を遂行しました。Donald Smithは現在、Oracle Canada ULCでJava SEに関する製品管理チームに所属し、おもにOpenJDKコミュニティを担当しています。2011年5月にオラクルに復帰

した際、Smithは自身のブログにこう投稿しました。「私が配属されたチームには1つのシンプルな役割があります。それはJavaを世界一のコンピューティング・プラットフォームとして維持することです」Java Magazine: OpenJDKとは何でしょうか。

オラクルのDonald Smithが、Java SEの共同開発の場であるOpenJDKコミュニティについて語ります。 文:JANICE J. HEISS

Smith: 基本的には、OpenJDKとはJava SEと関連プロジェクトのオープンソース実装を共同開発する場です。オラクルや他のベンダーが主催する一部のオープンソースJavaコミュニティとは異なります。たとえば、GlassFishコミュニティというのは、Java EEに関する共同開発の場です。Eclipseは、Eclipse財団のJavaツールやランタイムに関する共同開発の場です。NetBeansコミュニティは、オラクルのJavaツールに関する共同開発の場になります。このように、Javaエコシステムにはさまざまなコミュニティがあり、OpenJDKもJava SEに関する作業を行うコミュニティの1つです。Java Magazine: OpenJDKの歴史についてお聞かせください。Sun MicrosystemsがJavaを最初にオープンソース化したのは2006年のことでしたね。Smith: 最初の発表は2006年11月で、2007年には実際のプロジェクトが立ち上がり、ソース・コードへのアクセスが可能になりました。2007年から2009年には、参加者が増加するにつれて、多くのプロジェクトが実施されました。2009年になると、オラクルではSun買収に向けてのプロセスがスタートし、Sun Microsystemsは2010年1月に正式に解散しました。その結果オラクルは、OpenJDKや進行中のプランに対する取組みを公表できるようになりました。

写真:BOB ADLER

Page 2: Y N U M C OpenJDK 協力体制の下で - Oracle文:JANICE J. HEISS Smith: 基本的には、OpenJDKとはJava SEと関 連プロジェクトのオープンソース実装を共同開発す

ORACLE.COM/JAVAMAGAZINE /////////////// MAY/JUNE 2012

27

blog

JAVA TECH

COMMUNITY

JAVA IN ACTION

ABOUT US

買収のプロセスが進行していた2009年は動きがなく、それが永遠に続くと考える人もいました。残念なことに最悪の事態を想定した人もいるようです。しかしオラクルは公表できる状態になるとすぐに、OpenJDKに真剣に取り組む姿勢を明らかにしました。私たちは何よりもまず、Java SE開発の拠点になることを目指しました。また、それまで以上の多様性を得るため、多くの重要なJava関係者の参加が必要であると考えました。Red Hatは数年間参加しており、IBMやSAP

などの企業も加わりました。AppleがMac OS Xポートで一部のコードを提供するという発表をしたことも重大です。参加者は企業に限りません。OpenJDKには大勢の個人参加者がおり、非常に重要な役割を担っています。おそらく多くの人々が、オラクルがオープンな環境でのJava SE開発に真剣に取り組んでいることを知り、歓迎しているのではないかと思います。最近、Attachmate Groupの1事業部門であるSUSEがOpenJDKプロジェクトに参加しました。2011年には組織構造が安定したことから、

さらにプロジェクトを拡大することにしました。ガバナンス委員会を立ち上げ、開発プロセスを記述した新しいガバナンス・モデルを採用しました。2011年には新しいJava SE 7もリリースしました。Java SE 7のリファレンス実装はOpenJDKソースのみをベースとしているため、OpenJDK 7がJavaのリファレンス実装になったのです。OpenJDKが(JDK 6で)最初にスタートした時

は、開発のほとんどがSun社内で行われ、やや無計画に外部公開されました。幸いなことに、JDK 8プロジェクトとJDK 7アップデート・プロジェクトは両方ともオープンな状態でスタートしたため、進め方を見極める上で重要なステップとなりました。ほかに2011年には、Twitterや

Azulなどが新たに参加を表明し、さらに勢いが増しました。Java Magazine: OpenJDKの多様性を示す具体的な数字を教えてください。Smith: まず、多様性がオープンソース・プロジェクトにとって非常に重要であるということを理解してください。私がEclipseで学んだことの1つが、多様性がプロジェクトの質と長い間持続可能かどうかについての重要な判定基準であるということです。できればオープンソースのプロジェクトに参加する組織の

種類や大きさ、それに個人についても多様なものが混在する方がいいのです。また、地理的な位置や経験など、他の要因に基づいた多様性もプラスになります。OpenJDKについては、初期のコード・ベースや

コード提供を行ったのはSunであり、その次はオラクルが行いました。つまり、私たちは多様性が限られた状態からスタートしたということです。これは、大規模なコード提供からスタートした多くのオープンソース・コミュニティによくあることです。ただし私たちは多様性の増加を推し進めました。その速さやどの程度まで進めるべきかについては議論もありますが、コミュニティのほぼ全員が多様性を求めることについては賛成しています。2011年半ば、定款が承認された時に実施さ

れた調査によると、幸いなことに、現在OpenJDKコミュニティには約350人の開発者が参加しており、その内約80人はオラクルの社員ではありません。これはスタートとしては良いことです。そのほか、電子メールのトラフィックでも多様性が確認できます。MarkMailによると、電子メール・トラフィックの約40%がオラクル社員以外からのものだそ

うです。Java Magazine: Java SE 7用O p e n JDKコミュニティTechnology Compatibility Kit(TCK)について教えてください。Smith: OpenJDKコミュニティは(OpenJDKコミュニティ用のTCKライセンス契約により)互換性テスト・キットを使用して、自分たちのOpenJDKのビルドにJava SE仕様との互換性があるかどうかを確認できます。ライセンスは無料ですが契約が必要で、その処理に数週間かかります。契約書はOpenJDK Webサイトにあります。Javaの互換性はこれからも維持していく予定です。Java Magazine: OpenJFXコ

グッド・ニュースオープンソース・プロジェクトには多様性が重要です。幸いなことに、現在OpenJDKコミュニティには約350人の開発者が参加しており、その内約80人はオラクルの社員ではありません。これはスタートとしては良いことです。

OpenJDK と Oracle JDKの相違点Java SEのオープンソース・バージョンへのご協力を希望される方は、OpenJDKに参加してください。OpenJDKには個人と企業(Apple、IBM、オラクル、Red Hatなど)からコードが無償提供されます。オラクルはOpenJDKをOracle JDKのコード・ベースとして使用しており、他の組織も(特にLinuxのディストリビューションで)、OpenJDKソースに基づいたJavaプラットフォーム・ビルドを作成して配布しています。Oracle JDKは、オラクルが作成した特有のJDK実装です。コード・ベースは非常に似ていますが、Oracle JDKにはいくつか小規模な変更が加えられています。たとえばOracle JDKには、グラフィック・ラスタライザ、サード・パーティ・フォント、追加ドキュメントなど、クローズドソースのサード・パーティ・コンポーネントが含まれています。オラクルはOpenJDKに対して、(Oracle JRockit Mission Controlなどの)商用機能を除き、徐々にOracle JDKを可能な範囲でオープンソース化する予定です。こうしたオープンソース化作業の大半は、クローズドソースのサード・パーティ・コンポーネントのオープンソース・コンポーネントへの差し替えや、サード・パーティとのライセンス契約交渉を伴います。

どちらを選択するか機能という観点から見た場合、Oracle JDKとOpenJDKビルドの間に大きな違いはありません。オラクルは、人気の高い開発プラットフォームやサーバー・プラットフォーム用に、最新でテスト済みのJDKバイナリを公開しています。大半のユーザーや開発担当者にとって、これはJavaを入手するもっとも便利な方法です。長期のサポートが必要なエンタープライズ・ユーザーの場合や、ISVアプリケーション向けにもっとも予測可能なバイナリ配布を希望される場合は、Oracle JDKを選択してください。ニッチなパフォーマンス変数に対応するか、特殊なプラットフォームをサポートするなど、独自のJDKの構築、制作、微調整を行うことを希望される場合は、コード・ベースとしてOpenJDKを使用してください。

Tori Wieldt

Page 3: Y N U M C OpenJDK 協力体制の下で - Oracle文:JANICE J. HEISS Smith: 基本的には、OpenJDKとはJava SEと関 連プロジェクトのオープンソース実装を共同開発す

ORACLE.COM/JAVAMAGAZINE /////////////// MAY/JUNE 2012

28

blog

JAVA TECH

COMMUNITY

JAVA IN ACTION

ABOUT US

ミュニティへの業界の参加という点では、今どのようなことが起きていますか。Smith: 2011 JavaOneでJavaFXのオープンソース化を開始すると発表しました。これまでに初期コードの提供で成果を上げ、今はコミュニティへの参加者増加に期待しているところです。組織によってはJavaFXの戦略的利用を始めており、これからプロジェクトへの参加が増えることを期待しています。今年のJavaOneではJavaFXに関連して驚くべき発表がなされることを予測しています。Java Magazine: OpenJDKに参加しているグループについてお聞かせください。Smith: グループという概念はOpenJDKの定款で明文化されています。グループとは、共通して関心のある事柄に対し、オープンな話し合いへの参加に興味のある人たちの集まりです。たとえばコア・ライブラリやコンパイラ、あるいはセキュリティを中心テーマとするグループがあります。今話題の分野であれば、私が属するチームでは、参加者が自分たちのテスト・ケースやテスト・ハーネスを簡単に提出し、実行できるような品質グループに注目しています。ビルドに関係するグループもあります。これらのグループやその活動にとっての課題は、コミュニティの要求に合わせる

ため、インフラストラクチャの構築を進めることです。今新しいバグ報告システムの開発に取り組んでいますが、新しいビルドの立ち上げや実行をより簡単に行えるようにするためのビルドの改善やテスト・シナリオも必要となります。運がいいことに、私たちは支援を得ています。ロ

ンドンJavaコミュニティがビルドの実施方法に関する情報や、そうしたテーマに関する建設的でタイムリーなフィードバックを提供しています。また、SAPの開発担当者であるVolker Simonis氏は、数多くのプラットフォームでOpenJDKを構築してきた体験を文書化するという素晴らしい仕事を完成させました。コミュニティには多くのスターがいます。それでも私たちはさらに多くのスターを探し続けます。Java Magazine: OpenJDKに貢献している企業としては、AppleのほかにもIBMやTwitterがいます。ソフトウェア・ライセンスから収益を得る企業ではなく、JavaのエンドユーザーであるTwitterが参加したことは特筆に

値することです。Smith: それは非常に重要なポイントです。私がEclipse財団にいたころ、学者らが取り上げているあるテーマに気づきました。それは、オープンソース・コミュニティの参加には、異なる波がいくつかあることです。第1の波では通常、何らかの理由でオープンソース化しようと考えている重要なコード・ベースを所有する1つまたは2つの組織がオープンソースに興味を持ちます。一般にはソフトウェアのライセンス供与から直接収益を上げているISV(独立ソフトウェア・ベンダー)やその他のエンタープライズ・ソフトウェア会社です。次に、プロジェクトが有効なものであることが

証明された後、ソフトウェア・ライセンスから直接収益を上げていないソフトウェア会社で構成される第2の波が起こります。つまり、そうした企業にとってソフトウェアは商品ではありません。Twitterが良い例です。Twitterではソフトウェアを構築し、最大の支出はおそらくソフトウェアの開発費だと思われますが、ソフトウェア自体を販売してはいません。サービスを提供し、広告やデータ・インテリジェンスによって収益を得ています。ソフ

トウェアについて豊富な知識を持ってはいますが、ソフトウェア・ライセンスの販売はしていません。その次に来るのがソフトウェア・

ライセンスからさらに離れた、銀行や保険会社、さらには運送会社や小売業者などを含んだ第3の波です。これらの組織ではソフトウェアからの収益はゼロですが、戦略的理由から内部でソフトウェアを使用しています。Java Magazine: ではその点に関して、OpenJDKや他のオープンソース・プロジェクトを有効なものとするビジネス・コミュニティ・モデルとはどういうものでしょうか。Smith: ビジネスの原理から、企

左から: OpenJDK コミュニティ・イベントの プランを練るオラクルの Donald Smith(Director of Product Management)と Dalibor Topic (OpenJDK Principal Product Manager)

OpenJDKコミュニティでの成果について語る Donald Smithと Cecilia Borg (OpenJDK Onboarding Program Manager)

確かな未来OpenJDKによって、Javaに対するオラクルの基本的なコミットメントを確立できたと思います。私たちには、リリース・ロードマップ、HotSpot およびOracle JRockit向けJava 仮想マシン戦略があります。また、重要な業界からも数多くの参加があります。

Page 4: Y N U M C OpenJDK 協力体制の下で - Oracle文:JANICE J. HEISS Smith: 基本的には、OpenJDKとはJava SEと関 連プロジェクトのオープンソース実装を共同開発す

ORACLE.COM/JAVAMAGAZINE /////////////// MAY/JUNE 2012

29

blog

JAVA TECH

COMMUNITY

JAVA IN ACTION

ABOUT US

業の価値を高める方法は3つあることが分かります。収益を増やすこと、コストを削減すること、そして企業買収を検討している会社が買収先の機敏性や成長力などに基づいて買収額を決める際の倍率を高めることです。オープンソース化やオープンソースへの参加は、この3つの方法で有用となります。オープンソース化では

他の組織と開発コストを共有することになるため、コスト削減に有効だと言われる場合があります。しかし実際にはそうではありません。現実には、組織は

それぞれ自分たちが得意とする事柄に焦点を絞るため、コスト削減には結びつきません。ただし、1社で単独開発するよりもはるかに優れた機能を持つ製品が出来上がります。収益は、新たに生まれるビジネス・チャンスから得ることになります。その意味で、オープンソース化は高度な品質の製品を創り出すのにかかるコストが少なくて済むため、コスト削減に結びつくといえるのです。製品をまったく新しい方向へと展開することが可能になり、収益増に貢献します。Java Magazine: オープンソース・コミュニティを発展させる好循環について教えてください。Smith: どんな循環でもそうですが、出発点が必要です。ほとんどの場合と同様に、今回のプロジェクトでもコード・ベースから出発します。プロジェクトはその後、エンドユーザーに取り込まれます。OpenJDK

の場合、ユーザーには2つのタイプがあります。Java開発者と、デスクトップやサーバーでJavaを使用する数百万人のエンドユーザーです。開発者でもエンドユーザーでも、多数のユー

ザーがいることで、ベンダーや個人には魅力的なビジネス・チャンスや個人的チャンスが生まれます。ベンダーは通常、金銭的利益を求めます。個人でも利益を追求することはありますが、単に重要なソフトウェア・プロジェクトに参加し、支援したという満足感を得ようとしているだけということもあります。もしくはスキルを高める場合や、問題を解決するという個人的な満足にとどまる場合もあります。そうしたメリットが企業や個人を引き寄せ、ソフト

ウェアの質や堅牢性を高め、その結果プロジェクトが強化され、実装数を増やし、多くのベンダーを惹きつけ、それがまた別の人物を誘引し、質が高まっていくというように続きます。これが好循環です。Java Magazine: OpenJDKへの関与を深めるにはどうしたらいいでしょうか。Smith: 多くの方法があります。貢献するにはJavaプラットフォーム全体に関する知識が不十分だと考えている人が多くいますが、そんなことはありません。必要なのは専門的に特化すること

であり、その対象となるテクノロジーはたくさんあります。私たちは、Java SE 7アップデートや新しい言語機能、Lambda、Jigsaw、Mac OS Xポート、JavaFXなどに関する協力を必要としています。オープンソース・コミュニティをし

ばらく観察すれば、少し参加しただけでは、すべての基準や開発プロセスを学ぶことや、すぐに意味のある貢献ができることは困難であることが分かります。Eclipseではそれをメリトクラシーと呼んでいましたが、変化を産み出す能力がある者は、求めればその権利を手にすることができるということです。これ

は時間がかかるプロセスであり、結果がその人の真価を証明することになります。</article>

専門家求む貢献するにはJavaプラットフォーム全体に関する知識が不十分だと考えている人が多くいます。必要なのは専門的に特化することであり、その対象となるテクノロジーはたくさんあります。

Janice J. Heiss:オラクルの Java Acquisitions 編集者であり、Java Magazine のテクノロジー編集者

LEARN MORE• OpenJDK • Donald Smithのブログ

プレゼンテーションの構想を練るDonald Smith