パネリストそれぞれの立場から OpenSocial についての想いや期待を述べた前回に続き、今回は OpenSocial を活用したサンプルアプリケーションの紹介も含め、具体的に OpenSocial の魅力を語って頂きました。
デベロッパー交流会 第5回の様子は3回にわたりお伝えしていきます。更新をいち早く知りたい方は Google Code ディスカッション グループにご登録ください。
石原: 今回はパネリストの皆さんに実際に OpenSocial を活用したサンプルアプリケーションを用意して頂きました。早速、白石さんのアプリケーションから拝見していきましょう。
コラム
今回ご紹介するサンプルアプリケーションの多くは OpenSocialの開発のために用意された Orkut の Sandbox 内でのみ閲覧が可能です。Orkut の Sandbox にアクセスするためには、「Orkut Sandbox Sign Up」のページから登録が必要となります。また、Oukut のコミュニティとして「OpenSocial Japan」を開設しました。この機会にぜひご登録ください。
白石さん: 私がトップバッターとなったのは、おそらく私のサンプルアプリケーションが一番お気楽なものだからでしょうね(笑)。皆さんは脳内メーカーというウェブアプリケーションをご存知でしょうか?名前を入力すると、その人が考えていることが即座に表示されるというジョークアプリケーションです。私はこの脳内メーカーと Orkut をマッシュアップしてみました。

これは Orkut に登録した私のプロフィールページです。アプリケーションはプロフィールにアクセスする際に名前情報を OpenSocial を使って取得し、脳内メーカーに渡します。その実行結果は自動的にこのページに表示されます。ご覧いただくとわかるようにプロフィールページのコンテンツを補完することができます。このアプリケーションの最大のポイントは、作成所要時間がたったの20分であったことですね。
田中さん: 私は昨年、こみゅすけというサービスを立ち上げました。こみゅすけはさまざまなコミュニティや、そのコミュニティが開催する勉強会を地図上にマッピングし、情報を共有できるマッシュアップサイトです(注: こみゅすけはデベロッパー交流会 第3回にて、GData を活用したウェブサイトの一例として紹介されました)。コミュニティというソーシャルな情報を扱うサイトであるため、SNS とはもともと相性の良いサイトです。これを Orkut とマッシュアップしてみたのがこちらです。

表示はオリジナルのこみゅすけとほぼ同じですが、独自機能を追加しました。画面右上を見ていただくと分かりますが、イベントを選択すると、そのイベントの参加者一覧を表示します。この参加者は Orkut の登録者からイベント参加者を抽出したものです。
さて、この Orkut 版こみゅすけですが、せっかく作成したので他の OpenSocial 対応 SNS にも移植しようと考えました。そこで作成したのが hi5 版こみゅすけです。しかし、移植といっても実は何もしていないのです。
石原: Orkut 版のコードがそのまま hi5 でも利用できたということでしょうか?
田中さん: はい。一行どころか一文字もコードに手を加えていません。それでもまったく問題なく移植できました。また、Orkut 版、hi5 版のいずれかでイベントを登録すると、それが他方に反映します。 SNS を横断したアプリケーションがとても簡単に実現できたということです。
石原: SNS 横断型のウェブアプリケーションの実例はとても刺激的です。ゲストによる素晴らしいサンプルアプリケーションを披露頂きましたが、Google のエンジニアによるサンプルアプリケーションはこれらに負けない出来でしょうか?
丹羽: 私は Orkut とGoogle Maps API をマッシュアップしたアプリケーションを作成しました。Orukt のプロフィールに登録された友人一覧と友人それぞれの住所情報を OpenSocial の DataRequest API を用いて取得し、Google Maps API のジオコーディング機能を利用して、交友関係を地図上にマッピングする仕組みです。

SNS から友人ネットワーク情報を取得しビジュアライズする試み自体は特に新しいものではなく、過去に私もやってみたことがあります。とはいえ、今回はアプリケーションの作成が格段に容易でした。何しろ自分でプログラミングした部分は極めて少なく OpenSocial API と Google Maps API を利用するだけでよかったのですから。また、作ったアプリケーションを他の人に使ってもらえる点も斬新でした。
向井: 私は OpenSocial を利用して Twitter のビューワーを作成しました。これは Twitter における自分のユーザー名を保存しておくことができ、自分と自分がフォローしている人の発言を閲覧できるビューワーです。さらに、OpenSocial の Persistence Data API を利用して、自分の Twitter ユーザー名を友人に向けて公開します。そのため、自分の友達の Twitter での発言も閲覧できる点が通常のアプリケーションと異なります。

石原: Twitter というソーシャルアプリケーションに、SNS の交友関係をそのまま移植したということですね。これもまた OpenSocial が可能とした、メディアを横断したソーシャル情報の活用の一例と言えるでしょう。さて、これまでは Orkut などの OpenSocial に対応したウェブサービスを活用したサンプルアプリケーションを見ていきましたが、これらとは違うアプローチのサンプルを川崎さんが作成されたそうです。 川崎さん、ご紹介をお願いします。
川崎さん: 私は Shindig を活用した事例をご紹介したいと思います。リクルートではドコイク?という、お店をソーシャルブックマーキングできるローカルサーチサービスを提供しています。このドコイク?のテストサイトという、お店をソーシャルブックマーキングできるローカルサーチサービスを提供しています。ドコイク?のテストサイトに Shindig を導入し、OpenSocial に対応したアプリケーションの実行環境を構築しました。

コラム
Shindig とは Apache Software Foundation が開発している OpenSocial アプリケーションを実行可能とするコンテナです。オープンソースプロジェクトとして運営されており、Shindig よりダウンロード可能です。
このようにお店を検索し、タグを入力することができます。この入力エリアが OpenSocial に対応しています。実際にここで入力したタグはドコイクの本番サイトにも反映されるようになっています。
ドコイクはもともと RESTful な作りであったため、同じく RESTful な Shindig を2週間程度で実装し、動作させることができました。コンテナと合わせて、このようにお店を検索しタグを入力できるサンプルガジェットを作成しました。この入力エリアが OpenSocial に対応しています。現在は、テスト用の共通アカウントを利用していますが、ここで入力したタグは実際にドコイクの本番サイトにも反映されるようになっています。ドコイク?はもともと RESTful な作りの API を開発していたため OpenSocial とは相性がよく、Shindig を利用することで2週間程度で実装し、動作させることができました。
サンプルアプリケーションを例示し、OpenSocialの活用方法を具体的にご紹介した今回の記事をご覧になり OpenSocial の可能性を感じていただけましたでしょうか?次回は OpenSocial を活用するにあたって懸念すべき点、苦労した点をご紹介します。