マイマップ EXPO開催中 ! 地図で自分を表現してみませんか。


2007 年 4 月、Google マップに、自分だけのオリジナル地図が誰でも簡単に作成できるマイマップの機能が追加されました。

すでに多くのユニークで、面白い、役に立つマイマップが作成され、公開されています。
自分の趣味に関するマップ ( 温泉マップ、ダーツバーマップ etc.) や、お役立ちマップ ( 会社の近くのランチマップ、ペットといっしょに行けるカフェマップ etc.)、また、待ち合わせ場所や自宅までのルートを友人教えるためのシンプルなマップなど、と使われ方はさまざまです。 マイマップをもっと多くの人に知ってほしい、また、公開されている数々のマイマップを紹介する場を提供したい、という想いから、「Google マイマップ EXPO 」をスタートしました。

Google マップのマイマップ機能を使ってオリジナルの地図を作成して、「 Google マイマップ EXPO 」に参加してください。 参加いただいた方の中から優秀賞10名と、さらにその中から最優秀賞を1名が選ばれます。 優秀賞の方には Google から記念トロフィーを贈呈します。
参加方法は、こちらのEXPOのサイトをご覧ください。




マイマップの作り方を説明した動画を作りましたので、見てください。本当にマイマップは簡単に作れるんです。



すでに、面白いマイマップがエントリーされているのでご紹介します。

カップ酒マップ
日本全国のカップ酒を紹介。カップ酒のパッケージデザインってかわいいものが多いですよね。( 未成年者の飲酒は法律によって禁止されています )


また、このキャンペーンに賛同してくれた著名人の方々もゲストマップをよせてくれました。
女優のサエコさんの「サエコのお気に入りマップ」

他の方のゲストマップも EXPO のサイトからぜひご覧ください。

Google マイマップEXPO 」参加のために、新しいマイマップを作っていただいてもいいですし、過去に作成した自慢のマイマップでも参加いただけます。

お正月休み、書初めならぬ、マイマップ初めはいかがでしょう。みなさまの参加をお待ちしています。 しめきりは2月28日です。


それでは、みなさま、よいお年をお迎えください。

時刻 23:12

東京クラブデー

2007 年 12 月 27 日
Posted by サイ シンメイ ( ソフトウェア エンジニア)

サイ シンメイと申します。マウンテンビューからのソフトウェア エンジニアです。10 月初めに東京に来て、Eng Ambassador になりました。Eng Ambassador の役割は、東京オフィスに向け、Google の文化やベストプラクティスを紹介することです。

東京オフィスはマウンテンビュー本社よりずっと小さいですが、人数がどんどん増えています。毎週のように新入社員が入って来るので、社員間のコミュニケーションは重要です。

共通の趣味を持っている人はたくさんいましたが、東京オフィス独自の共有フォーラムはありませんでした。だから、Google 東京クラブのアイデアが生まれました。

先ず東京クラブホームページを作って、社員に公開しました。たくさんのフィードバックとコメントをもらいました。ホームページは WIKI ページですから、作り方はとても簡単です。クラブのオーナーに WIKI ページの使い方を教えて、クラブページの人気が出てきました。

その後で 11 月 13 日に東京クラブデーを開催しました。いろいろなクラブを東京 Googlers に紹介して、新しいメンバーが参加しやすくなりました。社長の村上も応援してくれて、各クラブのブースを飾るための予算が支給されました。

この日は、九つのクラブの展示がありました。ジャグリングクラブの竹内君の演技はとても印象的でした。私もジャグリングをしてみましたが、大変でした。各クラブは新しいメンバーを募集して、イベントはにぎやかでした。みんな私に 「 クラブデーは大成功だったよ 」 と言ってくれました。

同僚と一緒に東京オフィスをもっとGooglyにしましょう!


ワインクラブではおいしいワインの試飲ができました。


カラオケクラブのブースに立ち寄った方には豪華賞品が当たるチャンスがありました。


私たちもカメラクラブに参加しましょう!


ジャグリングクラブの竹内君の演技は素晴らしかったです。


なお、日本語でブログを書くことは初めてだったので、とっても難しかったです。書く前までできると思っていませんでした。でも同僚の工藤さんの助けを借りて完成することができました。ありがとうございました。

時刻 12:41

Google デベロッパー交流会 ( 第 4 回 ) - Vol.1


「Google デベロッパー交流会」 ( 第 4 回 )を開催しました。今回のテーマは「 Google Gears 」です。

今回のデベロッパー交流会は、一般公開形式で開催しました。
6名のパネリストが登壇し、Google Gears を活用したウェブアプリケーションの紹介や、Google Gears を活用する上でコツについて意見交換が行われました。また、会場には、Google 本社から来日中の、グレゴー ホーペ(ソフトウェアエンジニア、Google デベロッパーアドボケイト)とクリス シャルク( Google デベロッパーアドボケイト ) も訪れ、ディスカッションに参加しました。

デベロッパー交流会 ( 第 4 回 ) は4回に分けて掲載します。更新をいち早く知りたい方はデベロッパー交流会グループにご登録ください。

パネリスト ( 50 音順)


安藤 幸央 さん

Java、ウェブ3D、OpenGL、3DCG の情報源となるウェブページを運営。 「 Life Hack PRESS 」 誌で、Google のサービス全般ついての特集記事を記すなど、Google のサービスに造詣が深い方です。



岡崎 隆之 さん
Java エバンジェリスト。次々と生まれる新しいテクノロジーを追いかけながら、セミナーでの講演や雑誌記事・ブログの執筆などの活動をしています。2006 年からは Java エバンジェリストとして各種コミュニティへの参加に力を入れています。




伊藤 千光 さん
ゲーム業界出身の ウェブ プログラマー。フリーで活動するかたわら、「 ウェブOS Goodies」というブログで情報発信をしています。





松尾 貴史 さん
SIOS テクノロジーで行っている学校法人や企業に対しての Google Apps の導入支援業務を通じて、GHeimdall をはじめとした、いくつかのソフトウェアを開発・公開しています。



Googler

石原 直樹 ( いしはら なおき )

デベロッパー交流会 司会
ビジネス プロダクト マネージャー




河内 隆仁 ( こうち たかよし )

ソフトウェアエンジニア





市川 宙 ( いちかわ ひろし )
ソフトウェアエンジニア








石原: レスポンスの良い快適なウェブアプリケーションを作る技術として Google Gears を本日はテーマとして取り上げました。さて、この Google Gears は、パネリストの皆さんにとってどのような技術でしょう?

安藤さん: Google Gears は、これまでのウェブアプリケーションの概念を覆すような大きなパラダイムシフトを引き起こす可能性を秘めた技術だと思います。 Google Gears によってユーザはオンラインなのか、オフラインなのかを意識することは無くなるでしょう。また、これまではネットワーク越しのサービスはレスポンスが悪いという先入観がありましたが、Google Gears はこの考えを大きく変えると思います。さらに、データのアップロードやダウンロードという概念も変わることでしょう。

伊藤さん:Google Gears はウェブアプリケーションの開発の裾野を広げる技術だと思います。これまでのウェブアプリケーションはサーバサイドに多大なリソースを必要としてました。しかし、Google Gears のローカル DB を上手に利用すれば、少ない投資でバリエーションに富んだアプリケーションを作ることができます。初期投資を抑えつつも、広がりのあるサービスを提供できることは、とても大きなメリットですね。

松尾さん:ウェブブラウザ 2.0 といえばいいんでしょうか、私も次世代のウェブブラウザを支える技術として Google Gears を捉えています。

岡崎さん: 私も皆さんの意見に賛成ですね。ブラウザベースのユーザ・エクスペリエンスをより豊かにしてくれるという期待があります。カメラが趣味なのですが、大量の写真データを共有サーバにアップロードするにはかなりの時間がかかってしまいます。これがテレビの予約録画のように、指定した時間に自動的にアップロードしてもらえるようになると、時間の有効活用にもつながり、大変便利ですよね。「デスクトップでバッチ処理」といえばよいでしょうか。

市川:私にとっては、とにかく「おもしろい遊び道具」なんです。Google Gears を使うことで、既存のウェブアプリケーションをオフラインで利用することができますし、 JavaScript だけではできなかったことも簡単にできるので、デベロッパの方によってはおもしろい技術といえますね。


河内:アプリケーションの広がりを支える技術、その一つが Google Gears と言えるでしょうか。




交流会の様子






ゲストから、パラダイムシフトという言葉が飛び出すほどの大きな期待が寄せられている Google Gears 。ではどのような使い方があるのでしょうか? 具体的なイメージを得るにはやはり、サンプルアプリケーションを見ることでしょう。次回は Google Gears を使ったサンプルアプリケーションを紹介します。

時刻 21:53

iGoogle ガジェットコンテスト授賞式開催

2007年12月21日
Posted by iGoogle ガジェットコンテスト事務局

7 月から約 3 ヶ月に渡って行われた iGoogle ガジェットコンテスト の模様は先月のブログでもご報告させていただきました。今回は、Google の東京オフィスで行われた授賞式についてご紹介します。

授賞式は 11 月 16 日、Google 東京オフィスのカフェテリアで行いました。
いつもは社員が食事をしたり寛いだりするスペースですが、この日ばかりは即席のステージを作り、応募いただいた全作品を試せるトライコーナーもご用意して、シャンパンやお酒等を飲んだり、フィンガーフードを食べながら楽しんでいただく場所へと模様替えしました。

直前の告知で、しかも平日にも関わらず、受賞者の方が全員、遠く九州や大阪からも授賞式にご参列くださいました。またコンテスト参加者の方々からも多数の授賞式参加希望がよせられました。主催者一同、とてもうれしく思っています。

授賞式ではオリジナルのトロフィーや盾の授与のあと、受賞者の方々に自らガジェットを説明いただきました。アイディアがどのように沸いたのか、開発時にどんな工夫をしたのか等、PCの画面からでは伺いしれない裏話を、皆さん興味深く聞きいっていました。また事務局からは、僭越ながら共催のインプレスR&D様や弊社のエンジニアからの選考過程で出た意見やアドバイスをさせていただきました。皆様のこれからのガジェット開発に少しでもお役に立てればうれしいです。その後は、受賞者、ガジェットの開発者、弊社エンジニア同士の交流の場としてカジュアルな雰囲気の中、授賞式は無事終了しました。

授賞式の模様はYouTubeでもご覧いただけます:
最後に、ガジェット開発者にうれしいニュースも:開発者同士で話し合える場を作りました。Google ガジェット API グループでガジェット API に関する質問と答え、提案とフィードバックを自由に交換してください。引き続き面白くて楽しいガジェットを作って送信してください。お待ちしております!

時刻 18:51

Google のソフトウェアエンジニアとTシャツ

2007 年 12 月17 日
Posted by D.M ( ソフトウェア エンジニア )

一言で 「Google T シャツ」 と言っても、色々なバリエーションがあります。

Google Store で販売している T シャツだけでなく、イベントやプロジェクトの立ち上げ時など、色々なタイミングでオリジナルの 「Google T シャツ」 が作られます。少し前のことになりますが、本社の屋上にソーラーパネルを張り巡らせたことを公表したときには、ソーラーパネルの描かれた記念 T シャツが本社中庭で配布されていました。このような限定 「Google T シャツ」 はそのときにしか作られません。レアなのです。

東京オフィスでもそのような T シャツを作ることがたびたびあります。今回はそのうちの一つとして、エンジニアが作った T シャツをご紹介します。


これはエンジニアのオフサイト ( アウトドアイベントを通じて日本のエンジニア同士が交流するイベント ) 記念に作られたものです。でも、オフサイトと関係のない謎の文字列が並んでいます。一体この文字列は……

b;main(){printf("g%sgle",memset(&b,111,atoi(gets())));}

実はこれ、れっきとした C 言語のプログラムです。言語標準に完全に準拠しているわけではありませんが、Linux の gcc では動作します。エンジニアの S.H さんにお願いして書いていただきました。

( コンパイラや実行環境によっては、プログラムだけでなく OS にも悪影響を及ぼす可能性があるので、実際に実行するときには自己責任でお願いします )

では、これは何をするプログラムでしょうか。

このようなプログラム、およびそれを書く行為は、俗に 「コードゴルフ」 と呼ばれています。「与えられた問題に大していかに少ないバイト数で問題を解けるか」 という一種の遊びで、ハッカーの伝統的なスポーツ、とさえ言われています ( ただし、あまり痩せません ) 。http://codegolf.com/http://golf.shinh.org/ が有名な「ゴルフ場」です。

上記のプログラムは 「数値を入力として受け取って、その数値分だけ 'o' を挟んだ "gooo...ogle" という文字列を出力してください」 という問題に対する 「コードゴルフ」 の結果です。


$ cat google.c
b;main(){printf("g%sgle",memset(&b,111,atoi(gets())));}
$ gcc google.c
( 警告が出ますがエラーにはなりません )
$ ./a.out
15
gooooooooooooooogle


T シャツ作りにも Google のエンジニアらしさが現れているのでした。

興味のある方もいらっしゃるかと思いますので、上のプログラムがなぜ動作するのかについて説明します。

まず、全体としては以下のように動作することを意図しています。

  • gets() によりユーザからの入力を受け取る。
  • atoi() で gets() の結果を整数に変換 ( ここではその整数をNとする )
  • memset() で変数 b のアドレスに 111 すなわち char 型で言う 'o' を整数 N 分書き込む。
  • printf() で goo...gle を出力。

このコードが実際にコンパイルされ、意図通りに動作するかは、実行する環境に依存します。細かい点を説明すると、大体以下の通りになります。

  • バイト数を減らすため、stdio.h, string.h に対する include 節が省略されています。
  • 冒頭の "b" は int 型のグローバル変数宣言です。C 言語では仕様により、型名を省略した変数は int 型とみなされます。この規則を利用してバイト数を減らしています。
  • main() の引数も戻り値はなくても動作するので省略されています。
  • gets () は本来引数をひとつ受け取る関数ですが、やはり省略されています。この場合、実行時に gets() がどのようなポインタを受け取るかは未定義ですが、 ここでは 「偶然書き込み可能なメモリ領域へのポインタが渡されていて、ユーザから与えられた文字列が短い」 という条件がそろった時に動作します。結局、実 際に動作するかどうかは環境依存です。
  • 111 は ASCII コードの 'o' を意味します。111 も 'o' も 3 バイトでプログラムのサイズは変わりませんが、見づらくなるように敢えて 111 となっています。  
  • memset() で b へのポインタが指すメモリ領域に整数 N の分だけ 111('o') を書き込んでいます。N が size(int) の値より大きいときにはオーバーフローしますが、与えられた数値がそれほど大きくなければ、オーバーフローしても一応動作します。

私の手元の Linux 環境では入力された値が 2000 程度までは大丈夫でした。別の環境では 4000 程度まで大丈夫だったり、逆にまったく動かなかったりするようです。やはり環境依存な部分が多々あります。

コードゴルフで書かれるプログラムは、そのプログラムが実行される環境に強く依存した形で書かれることが多く、仕事で書くようなプログラムにはあまり向きません。あくまで趣味の領域で愉しむことですね。

もちろん、Google 社内で仕事のプログラムを書くときには、誰もこのような書き方はしませんのでご安心を :-)




時刻 13:00

Google Maps for Mobile ( i アプリ版 ) に GPS 機能が加わりました



8月のモバイル Google マップ発表以来、多くのユーザーから強い要望をいただいていたGPS 機能がようやく実装されました(一部未対応の端末があります)。

この GPS 機能の実現にあたって、注意した点は、ユーザーのみなさんへの見え方です。
GPS 情報の正確さを表す円をどんなサイズにするかには調整を繰り返しましたし、ほどよい透過色を実現するのには細心の注意を払いました。

サイズに関しては、スタッフがオフィスの外に飛び出し、さまざまな場所で精度の確認をしました。

また、色については、ユーザーの方が使う上で目障りにならないよう、同時に円の存在感は失われないよう微調整を繰り返しました。

GPS 情報取得の際に現れる Web ページに関しても同様です。
シンプル過ぎて味気のないものにならないよう、一方でページが重たくなりすぎないよう、社内のデザイナーに何十種類ものサンプルの Web ページを作ってもらい、その一つ一つを多くの種類の携帯電話で確かめました。

そんな試行錯誤を経て、今日リリースする新しいバージョンに、この GPS 機能が加えて、ユーザーのみなさんのフィードバックに応えることができたことを、チーム一同、とてもうれしく思っています。
この GPS 機能の使い方については、後述のヘルプセンターの Web ページをご覧ください。

また、モバイル Google マップのヘルプ「現在地 ( Beta ) 」にも記載されています。


また、GPS 機能以外にも、同時に今回のバージョンではいくつか変更していることがあります。
デバイス対応という面では、スクロールホイールのサポートを追加しました。

一部端末で横画面表示した際のボタンの位置を修正し、 地図がより広く見えるよう工夫もしました。
また、Google は優れた検索機能を特徴にしている会社ですから、検索機能についても小さな改善を加えました。
まずワンタッチで検索が呼び出せるようにボタン割り当てを変更しました。「お店やサービスを検索」と「場所を検索」の区別がわかりにくかったので
「検索」という一つのメニューに統一しました。また検索結果の改善も行っています。
検索ボタンの割り当てによって、ズームイン、ズームアウトのボタン配置も変更いたしました。今回のバージョンから、ズームインに「 3 」ボタン、ズームアウトに「 1 」ボタンを割り当てています。
同時に、さまざまなバグの修正も行っています。

GPS 機能も含めてこれらの一つ一つはほんの小さな改善や機能です。ユーザーのみなさんからもっと大きな要望がいくつもあると思います。
Google のほかの製品と同様、この モバイル Google マップでも、引き続きユーザの方からのそれらの要望を反映していく予定です。

モバイル Googleマップに関する情報は、以下のヘルプセンターでご覧いただけます。
http://www.google.co.jp/support/mobile/bin/topic.py?topic=9112

今後の改良、機能追加に是非ご期待ください。

時刻 21:24

Google のクラブ活動


以前このブログで、Google Japan には フットサルチームFC Google-JPマリオカート部 などのクラブ活動があることを紹介しました。
今回は本社 Mountain View にどのようなクラブ活動があるのか紹介したいと思います。

色々なクラブ活動があることを知ったきっかけは、たまたま Mountain View に出張している間に開催された「 Google Club Day 」というイベントでした。
いわゆるクラブ / サークルオリエンテーションのような形式で、お昼後にオフィス目の前の中庭にたくさんのブースが出て、各クラブが紹介・勧誘をするというものでした。
ほんの一部ですが一緒に見ていきましょう。

  1. Art Club



    ボードには「 Google Art Club ではこの前、葛飾北斎の『 Great Wave 』を貼り絵で再現しました。モザイク画のように小さいパーツを組み合わせて全体を作る事を体験・学習しました。」
    と書いてあります。アメリカでも浮世絵は人気で有名なんですね。写真では分かりづらいですが、中央右側の絵には海賊船が足されています。

  2. Bridge Club

     
    Bridge は世界で最も競技人口の多い、4 人用トランプゲームです。このクラブは毎週集まっては何卓かに分かれてお喋りしながらゲームしています。 (注:勧誘の場所なのにゲームが始まってしまいました。)
    ちなみに、僕の席の近くには US チャンピオンが座っています。

  3. Knitting Club

    編み物クラブです。きれいなマフラー、セーター、ニット帽が置いてあります。写真には写ってませんが、結構人だかりのある人気のブースでした。

  4. Juggling Club

    実は私も所属していて、 Mountain View に行く度に必ず遊びに行っているのがこの Juggling Club です。( 注: ジャグリングが始まってしまい、誰も勧誘してません )
    毎週火曜夕方に集まって、みんなで色々なものを投げまわします。

  5. Wine Club

    試飲もあり、かなり賑わっていました。ある意味、一番深い交流ができそうなクラブ活動です。
  6. Anime Club

    日本発アニメの DVD を音声日本語、英語字幕で見るそうです。右の人は日本語も少しわかります。左の人にはなにかちょっと聞きにくいオーラがあります。


いかがでしたか?
この他にも、サルサダンス、サイクリング、ソフトボールなどの運動系のクラブ活動や、他にも ( 日本語を学びたい人のための ) 日本語でランチの会、など色々な活動があります。
Google のクラブ活動の一番の特徴は、職種を超えて誰とでも気軽に交流したり情報交換したりできることです。メーリングリストに登録するだけで簡単に参加でき、活動日以外にもメールで盛り上がったりします。
Google には様々な経歴、趣味、特技の持ち主がたくさんいます。私は普段はエンジニアとして周りのエンジニアと作業することが多いですが、そういった人達とも直接交流できる機会があってとても楽しいです。

東京オフィスも人が増えてきて、ジャグリング部、ダーツ部、カタン部など続々と New クラブが増えてきました。これからどんな活動がでてくるのか楽しみです。
次回は日本で行われた Club-day を紹介したいと思います。



時刻 14:32

デベロッパー交流会(第4回)を開催しました


本日、Google Gears をテーマとしたデベロッパー交流会を開催しました。今回は初の試みとして、ディスカッションのパネリストと聴講者を一般公募したため、多くのデベロッパーの皆様が見つめる中での交流会となりました。


左から伊藤様、松尾様、岡崎様、安藤様

交流会では 、最初にGoogle Gears について Google エンジニアの Gregor Hohpe がプレゼンテーションを行い、Google Gears の最新情報をお伝えしましました。
続いて開催されたパネルディスカッションでは、パネリストの方々が作成した Google Gears を活用したウェブアプリケーションを中心に Google Gears の活用方法と開発のコツについて意見交換が行われました。とくにGoogle Gears をオフライン時だけに活用するのではなく、新しいアイデアを実現するために積極的に活用するアイデアが提起され、Google Gears のさまざまな可能性が確認されました。

交流会についての詳細なレポートは後日このブログ上でお伝えいたします。

時刻 17:27

Google Tech Talk のお知らせ

2007年12月5日
Posted by 技術講演会事務局

この度、学生様向けのGoogle Tech Talk(技術講演会)を開催することになりました。

学生の皆様の中には、「Googleのインフラはどのような技術が使われているのか?」「Googleのエンジニアはどのようなカルチャーで開発をすすめているのか?」といった疑問をお持ちの方もいらっしゃると思います。

当日は、Googleのソフトウェアエンジニアがこうした皆様の疑問について技術講演会という形でお答えさせていただきます。

ご多忙中とは存じますが、ご興味をいただけましたら、是非ご参加くださいますよう、ご案内申し上げます。

■ タイトル
グーグルを支えるインフラ技術とそれをつくりだすエンジニアリングカルチャー

■ 講演者
鵜飼文敏 (Google ソフトウェアエンジニア)

■ 概要
Googleでは、様々なウェブサービスを開発しそれらを安定して運用するために大規模な計算機環境を自ら構築しています。その開発方針・構成・大規模なシステムならではのポイントなどについて説明します。併せて、それらを開発しているエンジニアのカルチャーについて話します。

■ 日時
2007年12月15日土曜日 12:45開場 13:00開始
( 2時間程度を予定しております。)

■ 対象
大学に在籍されている方

■ 場所
Google 東京オフィス

■ 参加予約方法
件名を「Google Tech Talk参加希望(ブログ)」としたメールに、下記の内容を明記の上、技術講演会事務局(techtalkjapan@google.com)までお送りください。
  • 名前(ふりがな)
  • 所属(大学名・学部・学科・研究科・専攻等)
  • 学年

■ 参加予約締切
12月12日(水)15:00まで

■ その他
スペースの都合により、応募多数の場合は、抽選とさせていただきます。13日までに参加証発行をもって、当選とさせていただきますので、ご了承ください。

皆様にお会いできることを楽しみにしております。

時刻 13:44

Google Gears について

2007年12月4日
Posted by 河内 隆仁 (ソフトウェアエンジニア)


これまでにも本ブログで Google が Google Code でオープンソースとして公開しているソフトウェアを解説してきましたが、今回は Google Gears というソフトウェアを紹介します。なお、12 月 7 日にはこれをテーマにした デベロッパー交流会 が開かれます (文末参照)

皆さんは旅先でブログを更新しようとしてもネットワークに接続できず、家に帰ってオンラインで更新しようとした時にはもう感動が薄れていたなどと いう経験はないでしょうか?もちろん、エディタやワープロで文書を残し、家に帰ってからコピー&ペーストでも問題は解決しますが手間がかかります。ブログ サービスのような Web アプリケーションが Google Gears 対応すれば、このようなオフライン時のユーザが抱える問題をスマートに解決できます。

Google Gears は今年の5月末に開催された Google Developer Day 2007 と同時に発表された、Web アプリケーションをオフラインで利用するための強力な助けとなる Javascript API 群です。Google Gears はブラウザの拡張機能として提供されており、現時点では Windows 環境では Internet Explore 6 以上と Firefox 1.5 以上、MacOS X と Linux 環境では Firefox 1.5 以上をサポートしています。ユーザとして Google Gears を使うには、ダウンロードページからお使いの OS に対応したものをダウンロードし、インストールするだけです。実際にインストールしたら、Google Gears 対応の Google Reader (英語版のみ、日本語版は未対応) を試してみてください。Google 以外のサービスでも、Remember the Milk (タスク管理の Web アプリケーション) など、多くのサービスに続々と対応していただいています。

ここでは、Google Gears を利用したサービスの開発者の立場に立って機能を解説したいと思います。Google Gears をインストールすることによって拡張されるブラウザの機能は、主に以下の3つです。

LocalServer (ローカルサーバ、HTML や CSS 等のコンテンツをキャッシュします)
Database (データベース、データをローカルに蓄積します)
WorkerPool (JavaScript にスレッド的機構を追加します)
前者の2つは、オフラインでのデータへのアクセスを便利にしてくれます。近頃のWebアプリケーションは、常時接続の普及を前提として Ajax などを使い頻繁にサーバに接続しますが、一旦オフラインになると動けなくなってしまいます。LocalServer はその名の通り、ローカルな HTTP サーバであるかのようにキャッシュしたコンテンツをブラウザからオフラインでもアクセスできるようにしてくれます。また、データベース機能は Google Gears の内部に組み込まれた SQLite というオープンソースのデータベースエンジンを利用して SQL を使ったデータの保存や検索を可能にします。ブラウザ上で動作する JavaScript プログラムはセキュリティ上の理由で簡単にローカルデータを参照したり保存したりできません。そのため、これまでは Cookie を使ったり、ある程度以上の大きなデータを扱いたい場合にはデータをオンラインのサーバに置く等の必要がありました。データベースを使えばこのような問題 も解決します。また、データベースには全文検索機能もあり (残念ながら、現時点では日本語のように単語が空白で区切らない言語には対応していませんが将来対応予定です) 、より高度なアプリケーション開発を可能にしてくれることでしょう。

最後の WorkerPool は、ブラウザ上で動作する JavaScript にスレッド的な機構を追加します。これは必ずしもオフライン Web アプリケーションの開発に必要なものではありませんが、うまく利用することによってユーザの使用感を向上させることができます。Web ブラウザ上で動く JavaScript プログラムは基本的にシングルスレッドで動作するため、ある処理に時間がかかると他の処理が行えず、しばらくボタンが押せなくなる等ユーザーが待たされる ケースが発生していました。この WorkerPool を使えば、データベースの I/O 処理などをメインとは別のスレッドにバックグラウンドで行わせることによって、よりレスポンスのよいユーザインターフェイスを構築することが可能になりま す。

これらの機能はすべてブラウザ上の JavaScript API から利用可能となっています。API の詳細やコードのサンプルは、Google Code 内のGoogle Gears API サイトをご覧ください。JavaScript や SQL での開発経験があれば、すぐにでもドキュメントを読んで Google Gears API を使い始めることができると思います。

以上の3機能だけでもかなり強力で、ブラウザ上で実現できるアプリケーションの可能性が大きく広がったように思いませんか?
これらの機能は、開発者にとってオフラインでブラウザをアプリケーション環境として利用するためのハードルを低くし、より Web アプリケーションを通常のアプリケーションに近づけることを可能にしてくれるでしょう。また、最近 Google Gears と Greasemonkey (任意のサイトで指定の JavaScript を実行できる人気の Firefox 用アドオン) を組み合わせ、自分のサイトだけでなく任意のサイトで Google Gears の機能を使う "GearsMonkey" と呼ばれるテクニックも発明 ( ? ) され、ますます可能性が広がっていきそうです。

Google Gears はまだベータ版ですが、互換性をサポートするための機構も持っているため (詳細は Factory APIのドキュメント を参照してください) 、将来に渡って同じ API を利用し続けることができます。また、オープンソースプロジェクトとしてプロジェクトページでソースコードを公開しており、Google Gears そのものの開発に参加することも可能です。

来る 12 月 7 日 ( 金 ) には、当 Google Japan ブログでもご好評頂いているデベロッパー交流会 (第1回, 第2回, 第3回) の第4回がこの Google Gears を題材に品川で開催されます。Gears の具体的な使用方法やテクニックについて話題にする予定です。今回は、一般聴講者の参加も募集していますので、Google Gears に関してもっと知りたい、先進的な Web アプリケーションを作ろうと考えいてる方は、ぜひ足をお運びいただければと思います。参加登録などはこちらをご覧ください。

時刻 23:38