シニアプロダクトマネージャーの及川卓也氏
シニアプロダクトマネージャーの及川卓也氏
[画像のクリックで拡大表示]
Google社Senior Directo of Mobile PlatformsのAndy Rubin氏
Google社Senior Directo of Mobile PlatformsのAndy Rubin氏
[画像のクリックで拡大表示]
ワークスペースの画面を切り替えているところ
ワークスペースの画面を切り替えているところ
[画像のクリックで拡大表示]
Androidで「Street View」を実演
Androidで「Street View」を実演
[画像のクリックで拡大表示]
グーグル ソフトウェアエンジニアの鵜飼文敏氏
グーグル ソフトウェアエンジニアの鵜飼文敏氏
[画像のクリックで拡大表示]

 グーグルは2008年6月10日,「Google Developer Day 2008」を開催した。同年5月に米国・サンフランシスコで開催した開発者向け会議「Google I/O(Tech-On!関連記事)」を受けて,米Google Inc.の最新の開発者向け技術を世界の重要な拠点で紹介するもの。2008年は日本での開催を皮切りに,世界13都市で開催される。

三つの「C」を重視

 基調講演はシニアプロダクトマネージャーの及川卓也氏がコーディネータとして登場し,Google社が提供する技術を「三つの『C』」として説明した。「Client」「Connectivity」「Cloud」である。「コンピュータの歴史はメインフレーム,パソコン,インターネットと大きく三つの時代に整理できる。メインフレームは特殊な存在であり,アプリケーション・ソフトウエアにアクセスが難しかった。半面,アプリケーション・ソフトウエアの配布は容易だった。パソコンの時代は,これらの関係が逆になった。インターネットの時代になって,これらの関係が昔に戻った。アプリケーション・ソフトウエアの実装がWebブラウザーの機能に制約され,アクセスが難しくなった半面,配布は容易になった。だが一方で機能性は下がっている面がある。Cloud Computingを活用すれば,処理能力とデータ容量は上げられる。そこでGoogle社は,Clientをより強力にしてアクセスを容易にし,Cloudを利用しやすくするための技術を提供する。そして,その間を結ぶものとしてConnectivityも必要だ」(及川氏)。ただしあくまでもGoogle社が提供する技術を使うかどうかは技術者の選択であり,押しつけるつもりはないとしている。

 具体的な技術として,Clientに関しては「Gears」,Connectivityに関しては「Android」,Cloudに関しては「Google App Engine」を挙げた。Gearsは元々「Google Gears」と呼ばれていたもので,Webアプリケーションをオフラインでも利用できるようにするためのもの。ローカルに存在するデータベースにデータをコピーしておき,オンラインになったときに自動的に同期させることができる。「単にオフラインとして使うだけでなく,検索機能を実装するのにGearsを利用するMySpaceのような事例もある。Gearsを使うことでクライアントの機能を強化できる」(及川氏)。

Andy Rubin氏がAndroidをデモ

 携帯電話機向けのソフトウエア・プラットフォームであるAndroidに関しては,Google社Senior Director of Mobile PlatformsのAndy Rubin氏が登壇してデモンストレーションを実演した。デモ機は384MHz動作のマイクロプロセサに128MバイトのRAM,フラッシュ・メモリを256Mバイト搭載している。画面サイズはハーフVGA(320×480)。タッチ・センサを使って画面をなぞってワークスペースの画面を切り替えたり,仮想デスクトップ上にあるウィジェットを操作したりして見せた。「ワークスペースを移動するときに,背景も少し変わる。これによってユーザーが何をしているのかが分かりやすくなる」(Rubin氏)。

 またLinuxのマルチタスクを生かして,プレイリストで楽曲を再生させながら他の操作をして見せた。再生中は画面上部に実行中のプログラムのアイコンが表示され,その部分を引き下ろすように指で操作すると実行中のプログラムやイベント通知などが表示される。

 続いて“モバイル・マッシュアップ”の実例として,電話帳アプリケーションと写真アプリケーションの連携を実演して見せた。電話帳アプリケーションの人物のアイコンをクリックすると,写真ギャラリーを表示。該当する個人の写真を選択すると,顔を自動認識して適切なサイズに切り出し,それを電話帳に反映させてみせた。

 Google I/Oで見せた「Street View」の実演も見せた。電話帳アプリケーションにあった住所からGoogle Mapsを起動し,そこでStreet Viewを指定すると表示される。向きに応じて表示する画面を動かして見せた。

Google App Engineで「誰でもCloud」

 「Cloud Computingは誰にでもできるものではなかった。Googleはそのためのインフラを整備したからできるが,実際に始めようとすると難しい。小規模なうちはまだしも,大規模化するには耐故障性やデータベースの分割などを考慮しなければならず,コスト的にも技術的にも難しくなる」(グーグル ソフトウェアエンジニアの鵜飼文敏氏)。

 そこでGoogle社のインフラを使ってアプリケーション・ソフトウエアを実装するためのプラットフォームがGoogle App Engineである。ソフトウエア開発キットを用意し,ローカルで動作を確認したら,「それをGoogle社が用意するCloudにデプロイするだけで,スケーラブルな実装が可能」(鵜飼氏)。Google App Engineの事例としてミニブログ・サービス「Twitter」の発言の関連を表示する「TweetWheel」や後でWebページを読むためのサービス「laterloop」を紹介したほか,中国・四川省で発生した大地震の被災者向けに安否情報をやり取りするサイトを紹介した。最後の事例はGoogle社の社員が作ったもので,週末だけで作成したという。

 今後の方向としては,(1)オフライン操作への対応,(2)利用可能なプログラミング言語の拡充,(3)大規模データ・ファイルへの対応,を挙げている。