OpenSocialというかmixiアプリは実は簡単に作れそうな話。

mixiアプリというmixi上で自分の作ったWebアプリを動かせる仕組みが始まるようです。これは面白そうだな、と思いました。なぜなら、**mixi上で動作する=マイミクの友人に使ってもらえるので、初期の集客力と開発モチベーションが全然違うからです。**
Web2.0時代では、自作Webアプリをインターネットに公開しても
* 開発者が有名
* 開発会社が有名
* アイディアが素晴らしい
* 開発速度が速い
など、よほどの事がない限り注目されません。僕も以前NEWSING BOOSTERというWebサービス(のようなもの)を作りましたが、1日30アクセスくらいで**はてブも8ブクマ**しかつきませんでした。
その点、mixiアプリは作った瞬間からマイミクの何割かがユーザー登録してくれるわけです。マイミク100人なら20人~30人くらい。フィードバックも必ず貰えるので開発モチベーションも維持できる。人間、自分のためより他人のための方がより努力できる。
また、どこかのコミュニティに特化したアプリを作って、そのコミュニティのメンバーに使ってもらう手もあります。マイミクより使用率は低くフィードバックも少ないでしょうが、10000人のコミュで1%が使ってくれれば100人の初期ユーザーです。
ということでこれは是非開発しようと思って仕様書を読んでみました。
### OpenSocialとか聞きなれない言葉を使わないで下さい><
「mixiアプリはOpenSocialに対応している」これを聞いて「また新しい言語を覚えないといけないのか…」と思いましたがこれは間違いでした。OpenSocialというのはアプリ利用者の
* 友達一覧
* 参加しているコミュニティ一覧
* 住んでいる姓・名・地域などプロフィール
* アイコン
などを、**OpenSocialに対応しているサイトなら同じのコマンドで呼び出せるようにしたもの。**だからmixiで作ったアプリをOpenSocialに対応しているgooホームなどにコピペすればそのまま動きます。ただしmixiミュージックでの再生履歴など、他のSNSになさそうor少なそうな機能はコピペで動きません(※)。
それにしても「友達一覧」とか「コミュニティ一覧」ってのは、mixiでもGREEでもSNSには必ず存在する要素だもんな。それを共通言語化するなんて…よく考えたなぁ。感心します。
※ OpenSocialのバージョンは0.9で基本的な機能しか実装していない。将来的には各SNS独自の機能もOpenSocialに盛り込まれる可能性がある。ちなみに例に挙げただけで、mixiミュージックの再生履歴は取得できません。
### mixiアプリの実体はHTMLとJavaScript
ということで、OpenSocialではプロフィール情報を取得するだけ。その後はJavaScriptで動かします。こう考えると、**mixiアプリ=mixiの情報を取得して使えるJavaScriptアプリ**と同じです。mixiの情報を取得する所はOpenSocailの書式を新たに覚える必要があるけど、[mixi Developer Center](http://developer.mixi.co.jp/appli “mixi Developer Center (ミクシィ デベロッパーセンター) ≫ mixiアプリ")のGadget XMLとJavaScript APIのページの例をコピペすればよし。
### 具体的な構成
e784a1e9a18c
こんな感じです。mixiアプリ画面で自前サーバのXMLファイル(OpenSocailのGadget XML)を指定します。
e784a1e9a18c2
XMLファイル1つで完結する簡単なアプリでもいいし、画像ファイルやCSS、別出しJavaScriptファイルを使ってもOK。ここらへんは自作Webアプリと同じです。
…という感じで、特に身構えず気軽に作れるものだな、と思いました。
### 参考文献
* [ウェブ開発の次なる主戦場、Open Social](http://www.slideshare.net/FITEA/open-social-1320004 “ウェブ開発の次なる主戦場、Open Social")
スライドショー形式で長いが、内容は一番分かりやすかった。中でmixiアプリが不安定と書いているが、これは4月18日時点のもので現時点では不安定とは感じなかった。
* [mixi Developer Center (ミクシィ デベロッパーセンター) ≫ mixiアプリ](http://developer.mixi.co.jp/appli “mixi Developer Center (ミクシィ デベロッパーセンター) ≫ mixiアプリ")
実際の作成にあたっては公式が一番役に立つ。特にGadget XML・JavaScript API・外部サーバの呼び出しの項は必読。
* [タグ「mixiアプリ」を含む新着エントリー – はてなブックマーク](http://b.hatena.ne.jp/t/mixi%E3%82%A2%E3%83%97%E3%83%AA?sort=hot&threshold=3 “タグ「mixiアプリ」を含む新着エントリー – はてなブックマーク")
最新情報のチェックはこれでOK。
その他まだ読んでないけど有用そうなリンク。
* [フラスコ ≫ はじめてのflashなmixiアプリ](http://flash-scope.com/?p=482 “フラスコ ≫ はじめてのflashなmixiアプリ")
* [mixi アプリ制作に欠かすことのできない便利な開発環境 OSDE のインストール方法をご紹介 | mixi アプリ 大全集](http://mixiapp.rash.jp/wp/?p=15 “mixi アプリ制作に欠かすことのできない便利な開発環境 OSDE のインストール方法をご紹介 | mixi アプリ 大全集")
* [はじめての mixi アプリ – IT戦記](http://d.hatena.ne.jp/amachang/20090408/1239206152 “はじめての mixi アプリ – IT戦記")
* [「mixiアプリを作ってみよう!」連載開始 – V.S.A. III – TYZOH(タイゾウ)](http://www.tyzoh.jp/community/ikarashi/2009/05/11_081414.html “「mixiアプリを作ってみよう!」連載開始 – V.S.A. III – TYZOH(タイゾウ)")
### ここで問題点が。
俺、JavaScript書けません。