<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>jmblog.jp &#187; opensocial</title>
	<atom:link href="http://jmblog.jp/archives/tag/opensocial/feed" rel="self" type="application/rss+xml" />
	<link>http://jmblog.jp</link>
	<description></description>
	<lastBuildDate>Fri, 12 Aug 2011 05:18:47 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>DropBox を OpenSocialアプリ開発に利用する</title>
		<link>http://jmblog.jp/archives/263</link>
		<comments>http://jmblog.jp/archives/263#comments</comments>
		<pubDate>Thu, 15 Jan 2009 08:26:41 +0000</pubDate>
		<dc:creator>Yoshihide</dc:creator>
				<category><![CDATA[web development]]></category>
		<category><![CDATA[opensocial]]></category>

		<guid isPermaLink="false">http://jmblog.jp/?p=263</guid>
		<description><![CDATA[OpenSocial アプリを開発するときには、作った xml ファイルをどこかのサーバーに置かなければなりません。自分でサーバーを持っている人はそこを使うだろうし、そうじゃない人は Google Code でプロジェクトを作るなどの工夫をされているかもしれません。

ただ、自分でサーバーを持っていて、かつサーバー上で vi（vim）や Emacs といったテキストエディタを駆使できる人以外は、「xml ファイルをローカルで編集」して「コンテナ上で確認」する前に、「サーバーにアップする」というアクションがどうしても入ってしまいます。そして、試行錯誤を繰り返すことになりがちな OpenSocial アプリ開発では、この１アクションがずいぶんと手間になってしまいます。
そこで、DropBox を使ってこの手間をなくすというアイデアを思いつき、試してみたところ、思った以上に快適だったので、その方法を紹介したいと思います。
DropBox とは？
あちこちですでに評判になっているサービスなのでご存知の方も多いかと思います。どういうサービスか知りたい方は、以下のページがうまくまとまっているのでご覧ください。
&#187; Dropbox徹底解剖 &#8211; 一度使ったら手放せなくなる! オンラインストレージサービスの本命 &#124; Web担当者Forum
私もつい最近になってようやく利用しはじめたのですが、評判に違わず、すごく便利なサービスで、1日で手放せなくなってしまいました。
DropBox を OpenSocial アプリ開発に利用するには？
ずばり、「パブリックフォルダ」を使います。

「パブリックフォルダ」とは、非 DropBox ユーザーとファイルを共有するためのものです。パブリックフォルダにファイルを置くと、ファイルごとに専用の「パブリックリンク」が割り当てられます。

この「パブリックリンク」は、
http://dl.getdropbox.com/u/******/gadget.xml
といった URL になっていて、誰でもどこからでもアクセスができます。これを アプリの XMLファイルとしてコンテナに登録してしまうのです。

こうすると何が嬉しいかというと、XML ファイルを自分のPC上で編集して保存すると同時に、コンテナ側にも変更を反映させることができるのです。（コンテナ側でキャッシュを効かせている場合は除く。）ちなみに、XML ファイルだけでなく、画像や js ファイル、スタイルシートなども、パブリックフォルダに置いて利用できます。（XML ファイルに相対パスで書けば参照可能。）
要するに、DropBox をサーバーとして利用していることになり、しかもそのサーバーのファイルは、自分の好きな環境の、好きなエディタで編集できるというわけです。
「毎回サーバーにアップするのがめんどくさい！」とお困りの方は是非お試しください。
補足
アプリ公開用のサーバーとして DropBox を使うのはちょっと怖いので、開発するときだけにしたほうがよいかと思います。
補足その2
これを機に DropBox に登録しようという方へ。下記のリンクからユーザー登録すると、250MB を追加でもらえます。よろしければ、どうぞ！
https://www.getdropbox.com/referrals/NTQ3ODIxNjk
]]></description>
			<content:encoded><![CDATA[<p>OpenSocial アプリを開発するときには、作った xml ファイルをどこかのサーバーに置かなければなりません。自分でサーバーを持っている人はそこを使うだろうし、そうじゃない人は <a href="http://code.google.com/hosting/">Google Code でプロジェクトを作る</a>などの工夫をされているかもしれません。</p>
<p><span id="more-263"></span></p>
<p>ただ、自分でサーバーを持っていて、かつサーバー上で vi（vim）や Emacs といったテキストエディタを駆使できる人以外は、「xml ファイルをローカルで編集」して「コンテナ上で確認」する前に、「サーバーにアップする」というアクションがどうしても入ってしまいます。そして、試行錯誤を繰り返すことになりがちな OpenSocial アプリ開発では、この１アクションがずいぶんと手間になってしまいます。</p>
<p>そこで、<a href="http://www.getdropbox.com/">DropBox</a> を使ってこの手間をなくすというアイデアを思いつき、試してみたところ、思った以上に快適だったので、その方法を紹介したいと思います。</p>
<h4>DropBox とは？</h4>
<p>あちこちですでに評判になっているサービスなのでご存知の方も多いかと思います。どういうサービスか知りたい方は、以下のページがうまくまとまっているのでご覧ください。</p>
<p>&raquo; <a href="http://web-tan.forum.impressrd.jp/e/2008/11/13/4371">Dropbox徹底解剖 &#8211; 一度使ったら手放せなくなる! オンラインストレージサービスの本命 | Web担当者Forum</a></p>
<p>私もつい最近になってようやく利用しはじめたのですが、評判に違わず、すごく便利なサービスで、1日で手放せなくなってしまいました。</p>
<h4>DropBox を OpenSocial アプリ開発に利用するには？</h4>
<p>ずばり、「パブリックフォルダ」を使います。</p>
<p><img src="http://jmblog.jp/wp-content/uploads/2009/01/dropbox_public_folder.png" alt="dropbox_public_folder" title="dropbox_public_folder" width="60" height="58" class="alignnone size-full wp-image-268" /></p>
<p>「パブリックフォルダ」とは、非 DropBox ユーザーとファイルを共有するためのものです。パブリックフォルダにファイルを置くと、ファイルごとに専用の「パブリックリンク」が割り当てられます。</p>
<p><img src="http://jmblog.jp/wp-content/uploads/2009/01/dropbox_public_link.png" alt="dropbox_public_link" title="dropbox_public_link" width="327" height="186" class="alignnone size-full wp-image-267" /></p>
<p>この「パブリックリンク」は、</p>
<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">http://dl.getdropbox.com/u/******/gadget.xml</div></div>
<p>といった URL になっていて、誰でもどこからでもアクセスができます。これを アプリの XMLファイルとしてコンテナに登録してしまうのです。
<p><img src="http://jmblog.jp/wp-content/uploads/2009/01/dropbox_add_gadget.png" alt="dropbox_add_gadget" title="dropbox_add_gadget" width="295" height="99" class="alignnone size-full wp-image-276" /></p>
<p>こうすると何が嬉しいかというと、XML ファイルを自分のPC上で編集して保存すると同時に、コンテナ側にも変更を反映させることができるのです。（コンテナ側でキャッシュを効かせている場合は除く。）ちなみに、XML ファイルだけでなく、画像や js ファイル、スタイルシートなども、パブリックフォルダに置いて利用できます。（XML ファイルに相対パスで書けば参照可能。）</p>
<p>要するに、DropBox をサーバーとして利用していることになり、しかもそのサーバーのファイルは、自分の好きな環境の、好きなエディタで編集できるというわけです。</p>
<p>「毎回サーバーにアップするのがめんどくさい！」とお困りの方は是非お試しください。</p>
<h4>補足</h4>
<p>アプリ公開用のサーバーとして DropBox を使うのはちょっと怖いので、開発するときだけにしたほうがよいかと思います。</p>
<h4>補足その2</h4>
<p>これを機に DropBox に登録しようという方へ。下記のリンクからユーザー登録すると、250MB を追加でもらえます。よろしければ、どうぞ！</p>
<p><a href="https://www.getdropbox.com/referrals/NTQ3ODIxNjk">https://www.getdropbox.com/referrals/NTQ3ODIxNjk</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jmblog.jp/archives/263/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenSocialアプリを開発する上での落とし穴</title>
		<link>http://jmblog.jp/archives/240</link>
		<comments>http://jmblog.jp/archives/240#comments</comments>
		<pubDate>Mon, 05 Jan 2009 11:18:43 +0000</pubDate>
		<dc:creator>Yoshihide</dc:creator>
				<category><![CDATA[web development]]></category>
		<category><![CDATA[opensocial]]></category>

		<guid isPermaLink="false">http://jmblog.jp/?p=240</guid>
		<description><![CDATA[仕事の関係で、今度 OpenSocial アプリを作ろうということになったのですが、OpenSocial についての知識はゼロなので、まずは OpenSocial とはどういうものなのか、調べてみました。丸一日公式ドキュメントと格闘してみたんですが、思った以上に、いろんな「ワナ」が潜んでいるなと感じたので、ここにまとめてみたいと思います。



[追記 2009-01-09]
「天使やカイザーと呼ばれて: OpenSocialはオープンです」 で、OpenSocial の開発に携わっていらっしゃる、よういちろうさんより本エントリについて言及していただきました。[落とし穴3] と [落とし穴4] については、私の勝手な想像というか、気になった点だったのですが、まったくの誤解とのことです。大変失礼しました・・・
というわけで、このエントリを読まれたあとは、是非よういちろうさんのエントリをお読みいただければと思います。


OpenSocial とは？
まずは FAQ を見てみましょう。

OpenSocial とは何ですか。
OpenSocial は、各種ウェブサイトでソーシャル アプリケーションを作成するための共通 API 群です。OpenSocial は、JavaScript API と Google Data API で構成されています。 
よくある質問 &#8211; OpenSocial &#8211; Google Codeより

簡潔すぎて具体的なイメージが浮かびません・・・他にもいろいろなサイトを見てみて、とりあえず、「Google が提唱して、mixi や MySpace といったサイトが採用を発表している API 群」で「Facebookアプリのようなものを作るためのもの」だということだけ理解して、先に進みました。
[落とし穴1] まずは「ガジェット」から理解するべし
普通は、OpenSocial のスタート ガイドに目を通し、次にデベロッパー ガイド を読み進めるかと思います。（だって、そういう導線になってるから。）
でも、これが失敗の元！
実は、OpenSocial API を理解する前に、まずは Gadget API なるものを理解する必要があります。というのも、OpenSocial API は、Gadgets API に対して、ソーシャル機能を利用するための API [...]]]></description>
			<content:encoded><![CDATA[<p>仕事の関係で、今度 OpenSocial アプリを作ろうということになったのですが、OpenSocial についての知識はゼロなので、まずは OpenSocial とはどういうものなのか、調べてみました。丸一日<a href="http://code.google.com/intl/ja/apis/opensocial/">公式ドキュメント</a>と格闘してみたんですが、思った以上に、いろんな「ワナ」が潜んでいるなと感じたので、ここにまとめてみたいと思います。</p>
<p><span id="more-240"></span></p>
<div class="ins">
<ins datetime="2009-01-09T09:10:55+00:00"></p>
<p class="ins-title">[追記 2009-01-09]</p>
<p>「<a href="http://www.eisbahn.jp/yoichiro/2009/01/opensocial_4.html">天使やカイザーと呼ばれて: OpenSocialはオープンです</a>」 で、OpenSocial の開発に携わっていらっしゃる、よういちろうさんより本エントリについて言及していただきました。[落とし穴3] と [落とし穴4] については、私の勝手な想像というか、気になった点だったのですが、まったくの誤解とのことです。大変失礼しました・・・</p>
<p>というわけで、このエントリを読まれたあとは、是非<a href="http://www.eisbahn.jp/yoichiro/2009/01/opensocial_4.html">よういちろうさんのエントリ</a>をお読みいただければと思います。</p>
<p></ins>
</div>
<h4>OpenSocial とは？</h4>
<p>まずは FAQ を見てみましょう。</p>
<blockquote>
<p><strong>OpenSocial とは何ですか。</strong></p>
<p>OpenSocial は、各種ウェブサイトでソーシャル アプリケーションを作成するための共通 API 群です。OpenSocial は、JavaScript API と Google Data API で構成されています。 </p>
<p><cite><a href="http://code.google.com/intl/ja/apis/opensocial/faq.html">よくある質問 &#8211; OpenSocial &#8211; Google Code</a>より</cite></p>
</blockquote>
<p>簡潔すぎて具体的なイメージが浮かびません・・・他にもいろいろなサイトを見てみて、とりあえず、「Google が提唱して、mixi や MySpace といったサイトが採用を発表している API 群」で「Facebookアプリのようなものを作るためのもの」だということだけ理解して、先に進みました。</p>
<h4>[落とし穴1] まずは「ガジェット」から理解するべし</h4>
<p>普通は、OpenSocial の<a href="http://code.google.com/intl/ja/apis/opensocial/gettingstarted.html" class="broken_link" >スタート ガイド</a>に目を通し、次に<a href="http://code.google.com/intl/ja/apis/opensocial/docs/devguide.html">デベロッパー ガイド</a> を読み進めるかと思います。（だって、そういう導線になってるから。）</p>
<p>でも、これが失敗の元！</p>
<p>実は、OpenSocial API を理解する前に、まずは <a href="http://code.google.com/intl/ja/apis/gadgets/"><strong>Gadget API</strong></a> なるものを理解する必要があります。というのも、OpenSocial API は、Gadgets API に対して、ソーシャル機能を利用するための API セットを追加したものだからです。（詳しくは、<a href="http://groups.google.co.jp/group/opensocial-japan/browse_thread/thread/36dca18d899512e7">OpenSocial API　と　Gadget APIについて &#8211; OpenSocial-Japan | Google グループ</a> をご覧ください。）</p>
<p>つまり、最初に理解しなければならないのは、「ガジェット」なのです。</p>
<h4>[落とし穴2] iGoogle で Gadget API が使えない？！</h4>
<p>「ガジェット」なら、iGoogle でいろいろ追加できるし、どういったものかイメージしやすいですよね。さらに、<a href="http://code.google.com/intl/ja/apis/gadgets/">ドキュメント</a>も充実していて、比較的さくさくと読めます。</p>
<p>ところが、これに安心して、「じゃあ、簡単なガジェットのサンプルでも作ってみようかな」と思うと、ここにも落とし穴が。試行錯誤してコードを書き、iGoogle に登録して、いざ実行してみると、JavaScript エラーが出て動かない・・・なぜだ？！</p>
<p>実は、現バージョン（2009/1/5現在）の iGoogle は Gadget API に対応していません。Gadget API を使ったガジェットを動かすには、<strong>iGoogle Sandbox</strong> という実験のための環境が必要になります。（詳しくは、<a href="http://googlejapan.blogspot.com/2008/07/igoogle-sandbox.html">Google Japan Blog: iGoogle Sandbox 日本語版がオープンしました</a> を参照してください。）</p>
<p>ついでに言うと、ガジェットのドキュメント内で紹介されている「<a href="http://www.google.com/ig/adde?moduleurl=www.google.com/ig/modules/gge.xml">Google Gadgets Editor</a>」という開発ツールも、Gadget API を完全にはサポートしていないので、プレビューでは正常に動きません。というわけで、開発が結構めんどくさい・・・</p>
<h4>[落とし穴3] 仕様変更の可能性</h4>
<p>現段階では、OpenSocial API のバージョンは 0.8.1 であり、正式バージョン1.0 までにはまだまだ仕様が変更される可能性があります。従って、実験的にアプリを作るのはいいですが、企業などで本格的にアプリを開発してしまうのは時期尚早かと思います。</p>
<h4>[落とし穴4] ブラウザのような・・・</h4>
<p>例えば、iGoogle (Sandbox) で正常に動くものができたとして、OpenSocial に対応している mixi や MySpace でも同様に動くかというと、完全に保証はできません。</p>
<p>なぜなら、例えば、mixi が「OpenSocial に対応する」といっても、OpenSocial の仕様に従って書かれたコードを mixi 上で動かす環境は、Google が提供するわけではなく、mixi のエンジニアが独自に開発しているからです。つまり、Google は仕様を決めるだけ、実行環境（プラットフォーム）はそれぞれのサイト側で用意しているのです。</p>
<p>また、各サイトが独自に拡張機能を追加する可能性もあるそうで、そうなると完全互換性が保てなくなってしまいます。</p>
<p>どこかで聞いたことがあるような・・・そう、これじゃまるでブラウザの開発ではないですか！頭の痛い問題だ・・・</p>
<h4>最後に</h4>
<p>まだ、ほとんどアプリ開発はできていないのに、えらそうなことをいろいろ書いてしまいましたが、OpenSocial 自体は、アイデア次第で面白いものがたくさん生まれる可能性は秘めていると思います。というわけで、いろいろと試してみながら、「v1.0のリリース」と「安定した実行環境の整備」を待ちたいと思います。（ときれいにまとめてみた。）</p>
]]></content:encoded>
			<wfw:commentRss>http://jmblog.jp/archives/240/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

