9/22 〜 9/26 にサンフランシスコで開催された Java 最大のカンファレンス、JavaOne 2013 に行ってきました。

9/22 〜 9/26 の 5 日間にわたって開催された Java 最大のカンファレンス、JavaOne 2013 に行ってきました。
はじめての海外出張、海外に出るのは10年ぶり、英語デキナイという状況での参加でした。

出発前の準備

ESTA

最近は渡米するためには ESTA というものの申請が必要みたいですね。10年前はなかった。言われなきゃわかりませんでした。あぶないあぶない。
ESTA – Welcome to the Electronic System for Travel Authorization

持ち物

事前に、体をゴシゴシするやつがあるといいよ、とかカップお茶漬けがあるといいよ、とかの情報を日本からの JavaOne 参加者の集う Facebook グループで聞いていたのでそれらやバンドエイドなどを 100 均で購入。
今回は滞在先ホテルで洗濯もするので 1回ずつ小袋入ったタイプの洗剤も。

ドルへの両替

事前に両替しとかなくても成田空港でおk、と聞いていたのでそうしましたが、「いくらぐらいドルにしとくか」を考えてなくてその場で適当に考えて手持ちが100ドルくらいになるように両替しました。
ほとんどカード払にしましたが、結果的にはちょっと少なかったです。150ドルくらいあるといいのかも。

ネット環境

グローバルWiFi でレンタル。受け取り/返却は成田空港でおk
海外WiFi レンタル|海外でWiFiを使うならグローバルWiFi

聴講セッション

事前に Schedule Builder というので登録しなければならない方式。
これがまた使いにく (ry
あと、 iOS / Android に対応した JavaOne アプリというのもあり、登録したスケジュールをモバイルで確認できたりします。わりと活躍しました。

サンフランシスコへ

入国

飛行機で 9 時間か 10 時間くらい。
到着すると、入国審査。強面の方にあたる。圧倒的速さのネイティブ英語で畳み掛けられる。
そんなこともあろうかと事前に印刷しておいた JavaOne の申し込みのメールを見せながら、OracleOracle言ってたらやっと通りました。どっと疲れました。

シリコンバレー巡り

弊社の“福“社長にシリコンバレーを車で案内してもらいました。
Facebook, Google, Apple, そして Computer History Museum
テンションあがりますね!
Facebook4J meets Facebook !

9/21

9/21 は レジストレーションついでに MySQL Connect という MySQL の枠のキーノートを聴いてきました。

  • 9:00-10:00 [KEY9924] The State of the Dolphin
  • 10:00-10:30 [KEY12611] MySQL at Facebook


MySQL 5.6 は今までで最も大きなチームで取り組み、ベストなリリースとの評価を受けているとのこと。
5.7 は現在マイルストーン版。5.6 からさらなる性能向上を実現。
さらには MySQL Cluster 7.3 の登場、 MySQL WorkBench 6.0, MySQL Enterprise Monitor など周辺ツールの整備も進んでおり、MySQL の着実な進化を印象づけるものでした。

9/22

9/22 は ユーザーグループフォーラムとストラテジーキーノート。

  • 8:00-9:00 [UGF10329] Introduction to Java 7 and 8: JVM, Language, and Platform
  • 9:15-10:15 [UGF10501] Garbage Collection: The Useful Parts, Part 1
  • 10:30-11:30 [UGF10520] Java 8: The Good Parts
  • 12:00-15:00 [KEY11050] Java Strategy and Technical Keynotes


UGF はテキトーにチョイス。
[UGF10520] Java 8: The Good Parts では、Time API や Stream, Lambda などの Java 8 の新フィーチャーを広くざっくりと。個人的にはここで jEnv という JDK のバージョンマネージャーの存在を知ったのがよかった。
ストラテジーキーノートはなんといってもライブ会場のような雰囲気がすごかったですね。内容的には目新しいトピックはないものの、Java の着実な進化と未来を印象づけるものでした。
キーワードは「MAKE THE FUTURE JAVA」と「Internet Of Things」。

9/23

9/23 から JavaOneが本気出してきてセッションてんこもりです。

  • 8:30-9:30 [CON10175] Java Caching (JSR 107): The State of the Union
  • 10:00-11:00 [CON7842] Gradle and the New Android Build System
  • 11:30-12:30 [CON1861] Enhanced Metadata in Java SE 8
  • 13:00-14:00 [CON6064] Introducing the Java Time API in JDK 8
  • 15:00-16:00 [CON8165] Type Inference in Java SE 8
  • 17:30-18:15 [BOF7807] Best Practices for Interoperable XML/XML Schema Data Binding with JAXB
  • 18:30-19:15 [BOF5793] Nashorn: Java and JavaScript—Shaken, Not Stirred
  • 19:30-20:15 [BOF5519] JAX-RS and JSON Binding: Past, Present, and Future


[CON10175] Java Caching (JSR 107): The State of the Union で ehcache 相当が Java 標準になるよー、
[CON1861] Enhanced Metadata in Java SE 8 でいろんなところにアノテーション書けるようになるよー、
[CON6064] Introducing the Java Time API in JDK 8 で いよいよ java.util.Date や Calendar の代替でるよー、
[CON8165] Type Inference in Java SE 8 で Java 8 では型推論賢くなるよー、
と早速 Java 8 の進化についてたくさんのセッションが。
特に型推論のところは理解できていないところもあるので資料読み返さねば。
あと、Gradle はブースも出してたし流行りそうな感じなのであとで試す。

9/24

  • 8:30-9:30 [CON7952] Small Change and Big Files: Retrospective on the Language and Some Library
  • 10:00-11:00 [CON3969] Apache TomEE, Java EE Web Profile, and More on Tomcat
  • 11:30-12:30 [CON9732] The Modular Java Platform and Project Jigsaw
  • 13:00-14:00 [CON4374] Practices and Tools for Building Better APIs
  • 17:30-18:15 [BOF3999] Eclipse Orion: Your IDE in the Clouds
  • 18:30-19:15 [BOF5267] Money and Currency in Java: Best Practices, Libraries, and JSR 354
  • 19:30-20:15 [BOF7862] What and How Java Troubleshooters Think: Eight Years of Troubleshooting Java

この日はまず [CON7952] Small Change and Big Files: Retrospective on the Language and Some Library で、Java 7 の話。Java 7 なので内容はアレでしたが、File API などの実装は Java 8 になったら Lambda や Stream に置き換えていくみたいなことを言ってました。
で、 TomEE や Eclipse Orion といったプロダクト、個人的にとてもおもしろかった [CON4374] Practices and Tools for Building Better APIs 、そして Project Jigsaw や Money and Currency といった Java 9 のセッションとバラエティに富んだ構成でした。
そして、Acroquest Technology の谷本さん・勝本さんの [BOF7862] What and How Java Troubleshooters Think: Eight Years of Troubleshooting Java !

日本人が JavaOne スピーカーをやる勇姿を見させていただきました。すごい!バッチリ笑いとれてました!

9/25

  • 8:30-9:30 [CON2055] Programming with Lambda Expressions in Java
  • 10:00-11:00 [CON7942] Java 8 Streams: Lambda in Top Gear
  • 13:00-14:00 [CON7731] JSR 353: JSON Processing API in Action
  • 15:00-16:00 [CON3838] Introducing the Java API for JSON-Binding (JSON-B) JSR
  • 16:30-17:30 [CON7755] A New Configuration Standard for Java EE

この日はなんといっても Lambda と Stream です。
Lambda と Stream は単なるシンタックス追加ではなく、プログラミングスタイルすら変化する、まさに Java 8 レボリューションの象徴的なフィーチャーです。このパラダイムシフトをどう迎えるか、今から考えておかないといけないなーと思いました。
JSON と Configuration はまだいろいろと決まってないっぽい。ディスカッションタイムになると英語にまったくついていけません。
この日は夕方はやめに終了、夜は Appreciation Event 。
用意されたバスにのってトレジャーアイランドへ移動。島を貸し切るというわけのわからない規模のイベントです。日本の夏フェスみたいな感じがしました。ライブは Maroon5 !

9/26

  • 14:00-15:00 [CON2962] If You Think You Can Stay Away from Function Programming, You Are Wrong
  • 15:30-16:30 [CON5480] Jetty 9: The Next-Generation Servlet Engine


疲れがどっとでてしまい。コミュニティキーノートのあった午前中はホテルで休む。
午後から [CON2962] If You Think You Can Stay Away from Function Programming, You Are Wrong へ。ファンクションプログラミングって何?何がうれしい?どうすべき?といった内容が盛り込まれたおもしろいセッションでした。24日の [CON4374] Practices and Tools for Building Better APIs といい、こういうのは面白いですね。
最後は、 [CON5480] Jetty 9: The Next-Generation Servlet Engine 。 WebSocket, SPDY にいち早く対応した Jetty ですが、WebSocket は今や 73% の環境で動き実用段階。 SPDY も 55% で動くし、Facebook などの著名なサービスも導入済みなので準備しておくべしっとのこと。HTTP, SPDY, SPDY+PUSH の比較デモもありました。Jetty はこれからもアーリーアダプターの期待に沿えるべくトンガリ続けるよ(意訳)みたいな感じなのでこれからも期待できますね!

その他

JavaOne 最終日の 9/26 には日本からの参加者で恒例らしい蟹パーティ、その後はゴールデンゲートブリッジへの観光など。
あと、 Change Vision の平鍋さんの滞在先にお邪魔したり、櫻庭さんにステーキをごちそうになったり、著名なのにとってもフレンドリーで素敵な方々に食べさせてもらいました。ありがとうございましたっ!