デスクトップからWebへの流れを加速する─「Google DevFest 2010 Japan」開催

3月11日、Googleの開発者向けイベント「DevFest 2010 Japan」が開催された。

「DevFest」はいくつかあるGoogleの開発者向けイベントの一種で、これまでにインドやタイ、アルゼンチンなどで開催されている手作り感溢れるイベント。日本では初の開催となり、いくつかの実験的な試みが為されている。そのひとつが会場だ。メイン会場となる東京、ベルサール汐留とサテライトの京都リサーチパークをネットワーク中継で結び、両会場のコラボレーションを取りながら進められた。

場内に掲示されたセッションプログラムも筆書き!という手作り感
場内に掲示されたセッションプログラムも筆書き!という手作り感

参加資格は「クイズ正解者」

DevFestの最も特徴的な点が、その参加者選定方法にある。参加者応募期間中に応募サイトにて「DevFestクイズ」というプログラミングをテーマとしたクイズに回答し、その正答率の高い順に参加者を決定するというもの。単なる先着順や抽選と違い、かなりハードルの高い応募方法のため、主催者側も希望者がどのくらいいるのかまったく予測できなかったが、いざ蓋を開けてみると、クイズへの応募総数2113名/うち当選者461名という狭き門となった。当選者の平均点は46点満点中22点で、⁠実際にプログラムコードを書く問題に正解しないと、参加資格を得ることはできない結果となった」とのこと。

東京会場の様子。応募者の参加率も非常に高く、参加者の多いセッションでは壁際の床で「座り見」する人も現れるほど。
東京会場の様子。応募者の参加率も非常に高く、参加者の多いセッションでは壁際の床で「座り見」する人も現れるほど。

なおGoogleによると、今回の参加者選定は非常に貴重な経験となったとしながらも、クイズによる選定はあくまで試みの1つで、今後も参加者の意識、目的とイベント内容のマッチングをより最適化する方法を探っていきたいとのこと。

Chrome OS搭載マシンは年内に登場?

今回のDevFestは限られたセッション数ということもあり、セッションのテーマは「HTML5」⁠Google App Engine(GAE)によるクラウドの利用」⁠Android上の携帯アプリ作成」⁠OpenSocialによるソーシャルアプリ開発」といったGoogleの技術の中でも開発者からの注目度の高いトピックが選ばれ、各技術の中でも絞り込んだ内容のものが目立った。

このような構成に配慮し、DevFest冒頭の基調講演は、来場者に各技術を俯瞰して提示する内容となった。最初に壇上に立ったGoogle東京研究開発センター エンジニアリングディレクターのJoseph Ternasky(ジョセフ・ターナスキ)氏はまず、今回のセッションに選ばれたテーマの背景やDevFest全体の流れについて説明した。

なお、これも今回のDevFestの試みの1つだが、スピーカが英語の場合も一切通訳が行われなかった。ある程度のプログラミングスキルをもった開発者であれば、英語での説明はそれほど大きな障壁にはならないとの判断だが、これについても今後のイベントでさまざまな試行を重ねていきたいとしている。

基調講演を行うJoseph Ternasky氏。
基調講演を行うJoseph Ternasky氏。

基調講演の2人目は、Googleシニアエンジニアリングマネージャの及川卓也氏。Webが一般的に利用されるようになってから「Web 2.0」と呼ばれ、デスクトップに取って代わりアプリケーションプラットフォームや各種のフレームワークとしての役割を負う流れを概観し、その中でGAEなどのクラウド技術やHTML5などの表現や操作性に関する技術がどのような位置づけにあるかをあらためて示すものだった。

及川卓也氏
及川卓也氏

及川氏の話の中で、Googleの技術が実際に利用されている例が紹介された。

mixiクリスマスアプリケーション
GAE上に展開されたOpenSocialアプリケーション。2週間で100万以上のユーザ利用があった。
「エコポイント」サイト
複数のクラウドサービスが使われているが、GAEも含まれている。
「Google 未来を選ぼう 2009」サイト
2009年夏の衆議院議員選挙に合わせたキャンペーンサイト。GAE上で動くGoogle Moderatorを使って実現。

また同氏も深く関わるChrome OSについては「今年中にChrome OSを搭載したハードウェアがメーカから発表される」と語った。

Webプラットフォームがデバイスにまで影響している例としてAndroidにも言及
Webプラットフォームがデバイスにまで影響している例としてAndroidにも言及

基調講演の最後に、Googleディベロッパーアドボケイトの石原直樹氏が登壇。今回のDevFestの裏話、そして京都会場との連携について紹介した。まず今回の参加者登録で活躍した「DevQuiz」は、何より参加にあたって「楽しめる」システムを作りたかったという。この経験を、今年も予定されているGoogle Developers Dayなど今後の開発者イベントにつなげていきたいとのこと。

石原直樹氏のセッション。Googleの開発者イベントにおけるDevFestの位置づけは…
石原直樹氏のセッション。Googleの開発者イベントにおけるDevFestの位置づけは…

また今回のDevQuiz、会場の受付システムもGAEを利用したシステムが作られ、京都との中継にもGAEがベースのシンクロシステムを開発したとのこと。そのために各地のGTUG(Google Technology User Group)などのコミュニティにも協力を求めた。このようにGAEを利用しつつ、その利用ノウハウも蓄積、公開していこうという動きがあり、その1つがShare Code Lab Materialとして結実しつつあることも紹介された。

ブレイクアウトセッションから

基調講演後に行われたブレイクアウトセッションの模様をいくつか抜粋してフォトレポートとして紹介しよう。

たのしい Android:カスタムUIでAndroidアプリにワクワク感を加えよう

デザイナーで⁠日本Androidの会 女子部部長⁠としても活動中の矢野りんさん、Android開発者のadamrocker氏のコンビによる「easing(イージング⁠⁠」機能を利用したAndroidのUIをリッチにする方法の解説。easingとはダイアログ開閉などの動作にヒステリシスを持たせて弾力的な表現を可能にするもの。

矢野りん氏とadamrocker氏。adamrocker氏は「プログラミングと着ぐるみ担当」
矢野りん氏とadamrocker氏。adamrocker氏は「プログラミングと着ぐるみ担当」
easingにはTweenerというライブラリが便利。さまざまな言語で実装されている。
easingにはTweenerというライブラリが便利。さまざまな言語で実装されている。

HTML5 Overview for Web Application Developers

W3C(World Wide Web Consortium)のマイク・スミス氏によるセッション。同氏はHTML5 Japanese Interest Groupをまとめており、HTML5関連の書籍も執筆しているとのこと。HTMLの目玉機能であるWeb FontやWeb Socketsなどの利用について、実装状況などを交えて解説を行った。

個性的な佇まい? のスミス氏。日本語も堪能で端々に日本語を交えつつ、最後まで英語によるセッションだった。
個性的な佇まい? のスミス氏。日本語も堪能で端々に日本語を交えつつ、最後まで英語によるセッションだった。

Google App Engine - 分散クラウドコンピューティングの新しいパラダイム

Googleディベロッパーアドボケイト フレッド・ソオー氏によるGAEのテクニカルエッセンス。最初にローカルで動く⁠Hello World⁠のJavaサーブレットを60秒でGAE上のサーバ環境に移し、表示させるデモでGAEのメリットを強調。コミュニティの紹介からGAEを使ったコンピューティングやホスティング、データベースなどを分散させる際のポイントについて説明した。

ソオー氏は「ミーム」という小さな単位に分割する考え方が分散コンピューティングを理解するのに役立つという。
ソオー氏は「ミーム」という小さな単位に分割する考え方が分散コンピューティングを理解するのに役立つという。

やさしい Android:ユーザフレンドリかつデベロッパーフレンドリーなAndroidアプリケーション開発手法

Googleソフトウェアエンジニアの宮川大輔氏によるAndroidアプリ作成のTips。国際化への対応(絵文字などをどうするか⁠⁠、ユニットテストの方法、見落とされがちな携帯電話のUIのポイントなど、気づかされる点の多いセッションだった。

OpenSocial in Japan 2010

gihyo.jpの連載でもおなじみの田中洋一郎氏(ミクシィ)がモデレータとなり、OpenSocialを使ったソーシャルアプリケーション開発の「プログラミング以外の」実際の開発運用のポイントを紹介。実例として、⁠記憶を頼りにお絵かきする」人気のmixiアプリ記憶スケッチ開発者の中西晋吾氏((株)リアル)が登壇し、自らの経験を語った。

中西氏の話の半分は人気爆発によるサーバ負荷との戦い。クラウドの利用も考えたが、負荷レベルのアップダウンが激しいためコストの問題から断念したとのこと。
中西氏の話の半分は人気爆発によるサーバ負荷との戦い。クラウドの利用も考えたが、負荷レベルのアップダウンが激しいためコストの問題から断念したとのこと。

中西氏によると、人気が出るアプリにはいくつかポイントがあるという。

①ユーザ獲得コストが限りなく低いことを意識して新感覚のアプリを作る
今まで流行らなかったタイプのサービスにも人気が…?
②とにかく目立つ
アプリ名、アイコン、内容
③ルールをとにかく簡単に
アプリの内容を簡単に、キャッチーな言葉に置き換え伝える
④ユーザ間バイラルを効果的に
Activeityフィード、MessageAPIなどを効果的に
⑤初期ユーザ爆発を乗り越える
完成度高く、スケールアウト可能な体制を
⑥永遠のベータ版にする
お知らせを頻繁に更新
⑦マネタイズの仕組みをあらかじめ考えておく
中西氏の話を承け、田中氏がOpenSocialアプリの問題点を列挙。
中西氏の話を承け、田中氏がOpenSocialアプリの問題点を列挙。

最後に田中氏が登壇し、OpenSocalアプリはAPI少ないぶん作りやすいが、より多くの人に使ってもらうためには、コーディング以外の問題にも目を向けて欲しいと結んだ。

HTML5のWebイノベーション

Google API Expertの白石俊平氏、同じくAPI ExpertでHTML 5情報サイトHTML5.JPの開設者、羽田野太巳氏の2人によるHTML 5が開く新たなWebワールドについての紹介。

白石氏はHTML 5のWeb worker/Shared workerに着目。UIに影響せずJavaScriptをバックで動かし、メッセージングを用いて同期することで、これまで複数人による開発や非同期での開発で複雑化するJavaSctriptプログラミングがスッキリする。HTML5のこの機能により、JavaScriptを含めたプログラミングでロジックとUIの分離が進むと予言? した。

白石俊平氏。HTML5のworker利用によるUIとロジックの分離で「パラダイムシフトが起こる」と説いた。
白石俊平氏。HTML5のworker利用によるUIとロジックの分離で「パラダイムシフトが起こる」と説いた。

羽田野氏は、HTML5の「File API」に着目し、これまでファイル単位でアップロードや操作を行っていたWebで、ローカルのファイルの中身までアクセスしたり、Webブラウザ上でドラッグ&ドロップが可能となると紹介。HTML5の可能性については、オープンでブラウザの違いを越えた操作環境の構築が期待できる点を評価。マルチデバイス、マルチプラットフォームでますます重要になると語った。

羽田野太巳氏。HTML5時代には、JavaScriptがフロントエンドの中核を担うテクノロジーになるとのこと。
羽田野太巳氏。HTML5時代には、JavaScriptがフロントエンドの中核を担うテクノロジーになるとのこと。

プログラミング言語Go

「Binary Hacks」等の著作で有名なGoogleソフトウェアエンジニアの鵜飼文敏氏によるプログラミング言語「Go」の紹介。Go言語は、2009年11月に登場した静的言語。開発にはRob Pike、Ken Thompson(ともにUNIX開発者⁠⁠、Robert Griesemer(ChromeのJavaScriptエンジンV8開発者)など錚々たるメンバーが名を連ねる。鵜飼氏もコントリビュータだ。

Go言語の紹介を行う鵜飼文敏氏
Go言語の紹介を行う鵜飼文敏氏

鵜飼氏はGo言語の特徴として、とにかく「速い」ことを目的にしている点を挙げた。コンパイルも実行コードも高速で、静的言語であるデメリットを極力なくすというポリシーだ。言語仕様としてはCに似ているが、並列実行の処理を簡単に書けるのが特徴。プログラミング例として、DevFestで行われたクイズシステムのプログラムをGo言語で書き、そのソースコードを指しながら解説を行った。非常に駆け足の解説となったが、少ないコードで効率的に記述できるGo言語の特徴を押さえたセッションだった。

オフィスアワー

会場の外には"オフィスアワー"ブースが用意され、各セッションのスピーカが個別の質問に応じていた。

ブレイクアウトセッションよりもさらに濃い応答が交わされていた。
ブレイクアウトセッションよりもさらに濃い応答が交わされていた。
DevFest 2010 Japan
URL:http://sites.google.com/site/devfest2010japan/

おすすめ記事

記事・ニュース一覧