Go to Contents Go to Java Page

JavaOne 2006 San Francisco

5/16 (火) Day-1

_DSC5963

ここ数年、JavaOne は月曜にはじまって、木曜までだったのですが、今年は火曜から金曜日までに変更されました。

というわけで、今日は火曜日です。

今年の会場は Moscone North の Hall A がパビリオン、South の Hall B, C が General Session という割りふりになりました。ずっと、General Session は North だったので、なんかへんな感じです。

でも、それがなぜかはすぐに分かりました。

人が多いのです。これだけ、人が多いのはずいぶん久しぶり。ここ、2、3 年増加傾向でしたが、今年は去年に比べるとかなり増加しています。下手をすると、一番参加者が多かったころに匹敵するかもしれません。

本当にどこにいっても人だらけという感じです。

さて、今日櫻庭が聴講したのは

この中でおもしろかったものについてレポートします。

General Session

General Session はわけあって、すべては聴講できませんでした。詳細は後述します。

というわけで、今年もフォトログ風に。

Long Lines, JavaOne 2006
いつものことではありますが、長蛇の列
Java Man, JavaOne 2006
今年もいました、Java Man。後ろのタンクにコーヒーが入っていて、サーブしてくれます
Before General Session, JavaOne 2006
さすがに Hall B, C だと大きいです
Before General Session, JavaOne 2006
セッションが始まるまえにはバンド。このバンドは 2003 年の JavaOne の最終日の General のまえに演奏していたバンドと同じです。そのころは女性ボーカルがいませんでしたが、入ることでコーラスワークがかっこよくなりました 2003 年の時の写真
John Gage at 1st Day General Session, JavaOne 2006
司会はごぞんじ John Gage
Jonathan Schwaltz, JavaOne 2006
CEO になった Jonathan Schwaltz。しかし、この人は本当に茶系のスーツ好きですね ^^;;
Jonathan Schwaltz, JavaOne 2006
この写真は Jonathan の特徴がよく出ていると思うのです。左手ポケット、全身がやや右寄りに傾くのが彼のスタイル
Jonathan and Ed, JavaOne 2006
なつかしの Ed Zander。今は Motorola の CEO です
Jonathan and Marc, JavaOne 2006
JBoss の Marc Fleury。赤帽子は Red Hat
Jonathan and Marc, JavaOne 2006
JBoss が NetBeans 連合入りを祝して。急に写真が暗くなったのは白い T-Shirt に引っ張られてしまったのです。まだまだ、修行が足りません... orz
Jonathan and Rich, JavaOne 2006
続いて登場は Rich Green
Rich Green, JavaOne 2006
Rich のファッションもいつもと同じ。ジーンズ、T-Shirt (黒無地が多い)、ジャケットが彼のスタイル
Compatibility Matters, JavaOne 2006
アプリケーションサーバが勢揃い
Compatibility Matters, JavaOne 2006
今年のキーワードは××× Matters。で、ひっくり返してみると...
Compatibility Matters, JavaOne 2006
Compatiblitiy Matters
Jeff Jackson
そして、Jeff Jackson の登場

 

Technical General Session

Technical General Session も途中まで。理由は General Session と同じなのです。

今年も三部構成でまず Java SE が Graham Hamiltion、そして Java EE が Bill Shanonn です。去年は最後に SOA だったのですが、今年は未来の話ということで、いろいろな話題について。櫻庭は最後のパートの Dolphin の所まで聴講しました。

このセッションの前に JAX-WS のスペックリードの Roberto Chinichi に会ったところ、Technical General Session に登壇するというではないですか。残念ながら、彼がステージに上がるところは見られなかったのです。残念。

Java EE や Mustang はさておいて、Dolphin では次のような言語仕様の変更があります。

スーパーパッケージは去年、friend と呼んでいたものらしいので、油断ができません。詳細はテクニカルセッションのレポートで紹介したいと思います。

新しい機能としては

などが紹介されました。

John Gage, JavaOne 2006
Technocal General Session も司会はやっぱり、この人、John Gage
Graham Hamilton, JavaOne 2006
Java SE は Graham Hamilton
Bill Shannon, JavaOne 2006
Java EE は Bill Shannon
Java EE 5 is Done, JavaOne 2006
Java EE 承認記念

 

Technical Session

今日の最後の Beyond AJAX ははずれ。Justsystems の樋浦さんのセッションだったのですが、タイトルにだまされました。タイトルだけ見たら絶対 xfy のセッションだとは思いません。そのせいもあるのか、途中退出がムチャクチャ多いセッションでした。

というわけで、その他の 3 つのセッションについて

 

TS-3439 Mastering "Mustang" and Developing Dolphin

TS-3439 の Java SE のロードマップに関するセッションは途中から部屋に入ろうとしたところ、Full。ということで、オーバフローの部屋でビデオで聴講。しかし、ビデオだととても分かりにくいです。

ちょうど、Dolphin に話題が移ったところだったのですが、途中からということとビデオということで追いつくのがやっと。全然理解できていないのですが、キーワードだけでも紹介しようと思います。

まず、言語仕様の変更について。Tenchnical General Session では XML とスーパーパッケージが紹介されていましたが、それ以外に

が紹介されました。

プロパティは getFoo() とか setFoo() パターンをサポートするということらしいのですが、C# のような形になるのかはよく分かりません。

メソッドの参照は reference というキーワードが使われるようです。クロージャはどのように実現するのかはいまいちよく分かりませんでした。

スクリプト言語のサポートという点からは

などがあげられています。

 

TS-1598 Squawk: A Java VM for Wireless Sesor Networks

Squawk は去年の JavaOne の最終日に John Gage がデモをしていた CLDC 準拠の JVM です。

そのデモで使われたガジェットが Sun SPOT として正式に発表され、そこで使われる JVM になります。その特徴は

Squawk 自体は Windows や Linux でも動作するらしいのですが、OS なしでいきなり VM というのは ARM 9 だけのようです。

割り込みやデバイスドライバが記述できるということは、組み込み用途には欠かせません。最後のアイソレーションは複数のアプリケーションを同一 JVM で動作させることができ、かつそれらを独立して動作させることができるというものです。

また、組み込み用途のために従来のバイトコード体系も手を入れており、そのためクラスファイルを使用せずにスイートファイルというものを使用しています。スイートはクラスをメモリに展開したイメージをそのまま、ファイルにマッピングしたもののようです。

使用するメモリは SPOT の場合、4MB のフラッシュを使用しており、そのうち、約 1/3 がシステム、残りの 2/3 がアプリケーションに解放されているようです。

 

TS-1297 Filthy-Rich Clients: Animated Effects in Swing Applications

Swing のアプリケーションで効果的なユーザインタフェースを作るための方法を紹介するセッションです。キーとなるのがアニメーションと 3D。

アニメーションは複数の絵を使って実現させますが、その時に使用するのがタイマです。つまり、一定周期で絵を差し替えることでアニメーションを実現させます。

Java では Swing のタイマと、java.util のタイマがあります。ところがこれらのタイマはアニメーションに使用することを前提においていないため、アニメーションを行なうにはちょっといまいちでした。

そこで、紹介されたのが java.net で開発されている Timing Framework です。

これはアニメーションにはかなりつかえそうです。複数のタイマを同時に管理できたり、イーズイン/アウト (はじめ速く動かして、だんだんゆっくりにするなどの効果) にも使えます。

また、トリガーを採用しており、誰かが止まったら、次のタイマを起動させるようなことができます。さらにタイマの区間を複数に分けることができ、それぞれ異なった周期でタイマを使うことができます。

これはすなわち、Flash などのタイムラインを実現させることも可能であるのではないかと思います。

次に消化されたのが、Swing での 3D です。

今まで Java 3D や JOGL は基本的に AWT の Heavyweight コンポーネントで使われることを前提にしており、Lightweight コンポーネントではパフォーマンスに問題がありました。

というのも、JOGL などでレンダリングしたイメージをバイト配列に配列に変換し、それを Lightweight コンポーネント上に描画するという二度手間なことをしていたからです。

それが、Mustang では 2D のレンダリングエンジンにも JOGL が使用されることになり、Lightweight コンポーネントでも直接 3D のレンダリングを行えるような構造になったのです。

JOGL を使う場合には GLJPanel クラスを使用することで JOGL の 3D のレンダリングを扱うことができます。

とはいうものの、3D をいきなり使うのはちょっとしきいが高いですね。3D というよりは、2D のアクセントとして 3D を使うことが紹介しました。

たとえば、

などです。 これらを実現したら、かなりカッコイイですよ。

 

BOF

最後の Dynamic Scripting Language はおもしろいのですが、いかんせん眠かった ^^;; 代表的な Java で扱えるスクリプト言語をあげて、比較するというものです。

 

BOF-0899 The Java 3D API and Java Binding for OpenGL

Java 3D と JOGL の合同 BOF。両方とも一時期、更新がまったく止まってしまったのですが、再び息を吹きかえてきました。

まずは、Java 3D から。

現行バージョンの 1.4 はシェーダ言語をサポートするなど、かなり力が入っています。

気になるのは次の 1.5 です。

1.5 では JOGL との統合が行なわれます。とはいえ、Java 3D の使い方が変るというのではなく、あくまでも内部的なレンダリングエンジンとして JOGL を使うようです。JOGL は Mac にポーティングされているので、Java 3D も Mac で動きます。

また、JCanvas3D のパフォーマンスが向上します。これは先のセッションで説明したように Java2D の描画にも JOGL が使われていることが大きいようです。

次にテクスチャの効率化があげられました。

テクスチャに New I/O を使用することや、ミップマップの自動生成などの機能が加わるようです。

そして、コミュニティで作り込まれた機能として、Windows で Direct 3D を使用した場合、シェーダ言語に Cg が使えるようになります。

Java3D のデモでは JOGL を使用した Mac のデモや、パーティクルのデモなどが行なわれました。

さて、一方の JOGL です。

JOGL は JSR-231 で仕様策定されていますが、6 月末にも 1.0 が完成し、8 月には JCP で承認がとれそうだという予定が紹介されました。

去年からの変更点としてパッケージ名の変更、や GLU NURBS の採用を見送ったことなどがあげられます。

また、ポーティングは Solaris (SPARC, x86, AMD64)、Linux (x86, AMD64)、Windows (x86)、Mac OS X (PPC, x86) に対して行なわれています。Mac の Intel の石に対してもポーティングが行なわれていることは全く知りませんでした。

 

BOF-0289 The Sun Small Programmable Object Technology (Sun SPOT): Java Technology-Based Wireless Sesor Networks

Randall Smith and Sun SPOT, JavaOne 2006
開発者の Randall Smith と SPOT。Smith はとても楽しそうでした

期待のガジェット SPOT です。

5 月に発売するというプレスリリースがあったので、てっきり JavaOne で売り出すと思っていたのですが... 残念ながら、延期されてしまったようです。まじで 5 セットぐらい買うつもりだったのですが ^^;;

その SPOT ですが、以下のような特徴を持ちます。

そして、センサや入出力として

これだけあればいろいろなことができそうです。

開発環境には NetBeans を使用します。

実際にいろいろデモをしてくれたのですが、本当に使えることを模索中のようです。

それにしても、Smith さん、もう、うれしくてうれしくてしかたがないようす。早く見せたくてうずうずしているのがよく分かるのです。で、SPOT を取り出すときに、「チャラーン」 こん平かと思ってしまいました ^^;;

櫻庭としても、こういうがジェットは大好き。売っていたらすぐ買っちゃうんだけどなぁ。

 

BOF-0609 Project Looking Glass: Meet the Team and the Community

今日は 3D づいていて、これで 3D に関するセッションは 3 つめです。でも、これだけははずすことができません。

プロジェクトオーナーの Paul Byrne、川原さん、Deron Johnson の他に新しいメンバである Krishuna も。それにしてもこの部屋は暗くて写真を撮るのはつらい。おかげでインド人の Krishuna はみなぶれぶれの写真になってしまいました ^^;;

セッションではリリースされたばかりの 0.8.0 が中心になり、そのデモを組み合わせた形になっています。

0.8.0 で注目なのが、LG3D 用の AWT Toolkit の実装です。これで、LG3D で Swing を使用することがより容易になります。

そして、デモでは JavaOne Tokyo でいのうえさんが披露した LgScope や風になびく Swing の GUI、そしてビデオだけですがジェスチャーによるまったく新しいユーザインタフェースの GoMonkey など。

次のバージョンは 0.8.1 で、主にバグフィックスがメインになるようです。そして、1.0 を目指した活動も開始されているようです。

それにしても、この部屋は暗すぎ。ISO 1600 であるにもかかわらず、写真がほとんど被写体ぶれしてしまい巻いた。

Paul Byrne at LG3D BOF, JavaOne 2006
Project Leader の Paul Byrne
Hideya Kawahara at LG3D BOF, JavaOne 2006
川原さんs
Deron Johnson at LG3D BOF, JavaOne 2006
質疑をおこなう Deron Johnson
SwingNode on Project Looking Glass, JavaOne 2006
Swing Node のデモ

 

おまけ

Dukelele Band

なぜ、General Session を全部聴講できなかったか。

それは、バンドのパフォーマンスをしなければいけなかったからです。その名も Dukelele Band。

去年ゲリラ的にライブをしましたが、今年はパワーアップして戻ってきました。もちろん、去年大活躍だった中村さんも健在です。その他のメンバは

みな、Swing や Java2D の著名なエンジニアです。そして、今年は Duke もきてくれることになりました。

こうなると、半分ぐらいオフィシャルですね。とはいうものの、日本とアメリカという離れた場所なので、すべてのメンバが集まって練習することは一度もありません。かなり、不安...

パフォーマンスは午前中の General Session の直後と、午後の Technical General Session の直後の 2 回に渡って行ないました。演奏する予定の曲は

  1. This Love (Maroon 5)
  2. The Game of Love (Santana featuring Michelle Branch)
  3. I Don't Want to Missa a Thing (Aerosmith)
  4. Sunday Morning (Maroon 5)

です。カッコ内がオリジナルを演奏している人たちです。

というわけで、General Session を途中で抜けてパフォーマンスの準備です。パフォーマンスの場所は Moscone North と South を結ぶ通路にあるショップの前。ところが、これが問題になってしまいました。

というのも、あまりに人が集まりすぎてしまったのです。

集まると何が問題なのか? それは、通路を塞いでしまうことです。消防法により、このような施設において通路を塞いではいけないらしいのです。

The Game of Love を演奏していたら、係の人たちがやってきて、ここで演奏してはいかんと。あえなく 2 曲だけでパフォーマンスは中止。まぁ、2 曲目の最後までやらせてくれたのはよかったのですが...

さぁ、ここからが大変です。2 回目のパフォーマンスの場所を探さなければいけません。係の人といろいろやりあって、結局 Moscone South の地上でやることになりました。もちろん、建物の中かと思ったら、外。できないよりはましなので、これで了承しました。

しかし、やはり場所が悪いため、2 度目のパフォーマンスはそれほど人は集まりませんでした。でも、最後までやれてよかった、よかった。

Hideya Kawahara, JavaOne 2006
準備中の川原さん
Hans, Mark and Chet, JavaOne 2006
左から Hans, Mark, Chet
Kaoru Nakamura, JavaOne 2006
中村さんも真剣な表情
Hideya and Hans, JavaOne 2006
川原さんと Hans
Mark Anenberg, JavaOne 2006
Mark のドラムは Cool!
The Powere of Java, JavaOne 2006
今年は The Power of Java といって、この写真のように矢印を持って写真をいろんなところで撮っているのです。で、餌食にされた中村さん
Duke and Dukelele, JavaOne 2006
左利きの Duke。でも、私がこの手に持たせたからという説あり
Duke and Hideya, JavaOne 2006
川原さんと Duke。呼吸があっています

Pavilion Reception

毎年、初日はパビリオンでレセプションがあります。

とはいうものの、BOF の時間は迫っているので、軽く食べて BOF に向かおうと思ったのですが... やっぱり、行列。

行列に並びながら、会場のようすを写真に撮っていたら、シェフが「なんで俺たちを写さないんだ」と。で、ちゃんとポーズまでつけてくれました。おちゃめ ^^;;

Always Long Line, JavaOne 2006
どこでも並ぶのです
Chefs, Pavilion Reception, JavaOne 2006
おちゃめなシェフ
Pavilion Reception, JavaOne 2006
チーズをとるのも並ぶのです

 

(May, 2006)