多くの人々にとっては「Facebookって何?」って感じだろう。そのFacebookの日本語版が本日正式に公開された。
「Facebook」日本語版公開 ”実名交流”でmixi追撃 – ITmedia
Facebookは、アメリカでMySpaceに次ぐ第2位のシェアを持つSNS。Facebook PlatformというSNSアプリケーションを開発するためのプラットフォームをいち早く公開し、新しいインターネットアプリケーションの形態を世に知らしめたSNSとして有名である。
今までのFacebookは、多くの言語にローカライズされてきていたのだが、日本語対応についてはなかなか見えてこなかった。しかし、翻訳作業をユーザに行ってもらう「Translation」アプリケーションを開発し使ってもらうことで、驚くほど早い翻訳作業が現実のものとなった。
すでにFacebookには1万を超えるアプリケーションが登録され、すぐに使える状態となっている。今後日本でもシェアが徐々に増えていくことが予想される。SNSアプリケーションプラットフォームが正式に整備されているという点では、やはりOpenSocialに比べて数十歩先を行っているので、そういう点でも多くの日本のネット利用者は、Facebookを体感しておいて損はない。
ただし、僕の個人的な見解としては、あくまでFacebookはSNSアプリケーションプラットフォームの1つに過ぎない。そして、Facebookの独自APIは、将来的な明るさはそうでもないと思っている。Microsoftが買収するとかしないとか噂があるが、なぜか僕には「OpenSocial vs Facebook」が「Java vs .net」に見えて仕方がない。
- Posted:
- 05.19.2008
- Category:
- facebook

今日、Facebookにログインすると、こんなものが表示された。

これが噂の「翻訳アプリ」のようだ。このアプリをインストールすると、FacebookのUIがちゃんと日本語化されつつあることがわかる。すっかり英語のUIに慣れてしまったため、漢字とか表示されてると、かなりの違和感である。
日本ではOpen Socialの方が流行するのが早いと思っていたが、Facebookの翻訳プロジェクトの進み具合によっては、日本にもFacebook旋風が吹き荒れる、かも。
- Posted:
- 04.02.2008
- Category:
- facebook

かなりもったいぶっている「Ruby on Railsでもfacebookアプリは作れます」シリーズだが、やっと今回からrfaceookプラグインを使って実際にfacebookアプリを作る話をしてみようと思う。
rfacebookプラグインを使ったRuby on Railsでのfacebookアプリの作り方は、前のエントリでも紹介した通り、
にて紹介されている。基本的には、上記に書かれている手順を踏めば良い。とはいえ、僕は最近JRubyがお気に入りなので、JRubyのインストールから順に説明していきたいと思う。もちろん、MySQLのインストールは完了していることが前提。
まず、以下の場所から、JRury1.0.2のアーカイブをダウンロードし、任意の場所に展開する。
・jruby-src-1.0.2.tar.gz
展開後のディレクトリに移動してantを実行(antがない人はapache-antから入手)すれば、jrubyコマンドを得ることができる。あとは、
- 環境変数JRUBY_HOMEに展開したディレクトリを指定する。
- 環境変数PATHに「$JRUBY_HOME/bin」を追加する。
の2点を施せば、JRubyの準備が完了する。あ、言い忘れたが、JDKの入手とインストールが大前提。
次に、JRubyに付属しているgemを使って、Railsをインストールする。この際、先週リリースされたRails2.0はrfacebookプラグインが正しく動作しないために、Rails1.2.6をインストールすることにする。その後、他に必要となるものも、順次インストールする。
jruby -S gem install -v=1.2.6 rails –include-dependencies
jruby -S gem install jruby-openssl
jruby -S gem install activerecord-jdbc
特に最近はRails2.0のリリースがあったために、サーバにアクセスが集中していることが多い。その場合404などが返されるので、何度か繰り返してみて欲しい。
さて、いよいよrfacebookのインストールだ。やはりgemを使ってインストールすることができる。
jruby -S gem install rfacebook
途中で「hpricot」のインストールを行うか聞かれるので、「Y」をタイプしてインストールを指示し、さらにプラットフォームを聞かれるので、「1」のjrubyを入力する。引き続き、「mocha」のインストールを行うかも聞いてくるので、やはり「Y」をタイプしてインストールを指示する。その後、rfacebookのインストールが行われる。上記であれば、rdocも一緒にインストールされるはずだ。
これでgem系の準備は完了。次は、実際にfacebookアプリケーションの開発に移る。何はともあれ、railsコマンドでプロジェクトを作成しよう。
jruby -S rails fb-test
これだけだと、普通のrailsアプリである。このプロジェクトに、rfacebookプラグイン(正確にはrfacebook_on_railsプラグイン)を導入する。
cd fb-test
jruby ./script/plugin install svn://rubyforge.org/var/svn/rfacebook/plugins/rfacebook_on_rails
上記のコマンドを打てば、Subversionサーバから勝手に一式ダウンロードしてくれるのだが、例えばNetBeansを使って開発している場合は、svn://が使えない。その場合は、ここからダウンロードできるzipファイルを、vendor/plugins/rfacebook_on_railsディレクトリ以下に展開すれば同じことになる。
もうひとつ準備が必要になる。rfacebookプラグインをインストールすると、facebook:setupというrakeタスクが追加されるので、これを実行しておく。実行が完了すると、config/acebook.ymlというファイルが生成される。このfacebook.ymlファイルに、facebookアプリケーション固有の設定を記述することになる。
jruby -S rake facebook:setup
さて、前のエントリで、僕は以下のようなことを言っている。
しかし、非常に残念なのだが、上記URLではRFacebookはちゃんと動いてくれない。RFacebookのForumで「facebook APIの脆(もろ)さは、PHP、ASP、そしてJavaコミュニティに感じる脆さなんだよ」といった過激な発言がでるくらいの原因で不具合が出てしまうのだが、これの解決策はあるのでご安心を。
rfacebookの現在のバージョン(0.9.7)では、facebookとの認証処理後にfacebookから送られているリクエストの2発目以降についてちゃんとパラメータを解釈してくれない、という不具合が潜んでいる。これはrfacebook開発側から言うと「facebookが送ってくるパラメータが不安定」という言い方がされているのだが、何はともあれ動かない。
この問題を解決するための方法が、forumに投稿されている。
more facebook sessions problem – Ruby on Rails Facebook
このページの2007年10月26日付けのcocotron氏による投稿(今日時点でページの一番下)に、パッチのコードが掲載されている。これを、fb-test/app/controller/application.rbファイルに記述する。
これにより、通常のfacebookからのGET, POSTリクエスト(Ajax含む)の処理が、rfacebookプラグインで正しく行われるようになる。
最後に、facebook.ymlファイルへの設定方法を紹介しておく。facebook.ymlには、rfacebookプラグインが動作をするために最低限以下の設定を記述しておく必要がある。development, test, そしてproductそれぞれ設定項目は一緒である。
- key: facebookから割り当てられたAPI Keyを記述する。
- secret: facebookから割り当てられたSecretを記述する。
- canvas_path: アプリ登録時に入力したCanvas Page URLの入力した部分(「http://apps.facebook.com/★/」の★)を、前後に「/」を付けて記述する。
- callback_path: アプリ登録時に入力したCallback Urlのコンテキスト部分(例:「http://www.eisbahn.jp:3000/★/」の★)を、前後に「/」を付けて記述する。
API KeyとSecretに関しては、facebookのDeveloperアプリケーションの右上にある「My Applications」区画の「See My Apps」リンクをクリックすると出てくるアプリケーション一覧ページで確認することができる。もしまだアプリケーションを登録していない方は、前のエントリを参考にして欲しい。
以上で準備は完了。次は、ControllerとViewを作成して、facebookアプリが稼働することを確認してみたいと思う。
— 2007/12/14 追記
rfacebookのパッチコードをActionControllerクラスの中に記述すると再定義されないため、ActionControllerクラスの外にパッチコードとなるRFacebookモジュール定義を記述するように、蒸気コードを変更しました。
- Posted:
- 12.14.2007
- Category:
- facebook

facebookが「ソーシャルOS」と呼ばれる所以は、facebook上にアプリケーションを自作して登録し、facebookユーザに使ってもらうことができる、ということにある。自作アプリケーションは、当然facebookが持つ様々な機能と連携することが可能である。例えば、アプリケーションで起きたことをMini-Feedに追加したり、プロフィール画面にアプリケーション固有の区画を追加したり、あるいはアプリケーションを自分の友達に勧めたり、といったことが、比較的簡単に実現できる。とても面白い。
では、facebookアプリケーションを実際に開発するためにはどうしたらいいか。これ、非常に敷居が高いと言わざるを得ない。いや、それは僕がPHPをメイン言語にしていないから、かもしれない。日本語のドキュメントはゼロ。ググっても日本語の情報は皆無。そしてPHP以外のサンプルは公開されていない。これだけでも、尻込みしてしまう人は多いだろう。
facebookチームが正式に公開しているライブラリは、PHPとJavaのみである。これは、「Facebook Developers | Resources」(このURLからわかる通り、facebook自体がPHPでできている)というページで見つけることができる。僕は長らくJavaをやってきたが、Ruby on Railsの敷居の低さ(= 環境構築の容易さ)に魅せられ、facebookアプリケーションもやはりRailsで作ってみたい。
幸いなことに、facebook unofficialではあるが、ASP.NET、ASP(VBScript)、ColdFusion、C++、C#、D、Emacs Lisp、Lisp、Perl、Python、VB.NET、Windows Mobileといった言語・環境向けのクライアントライブラリを、「Facebook Developers Wiki」ページから辿ることにより入手可能である。そして、もちろんRails向けにも、クライアントライブラリは存在する。それが、
「RFacebook – now with RAILS plugin」
である。
このRFacebookは、Railsのプラグインとして提供されている。何をしてくれるかというと、
- facebookとの認証処理をやってくれる。
- facebook Web APIを叩いてくれる。
という主に2点のみ。ま、この2点が非常にでかく、facebookアプリケーションの全てと言ってもいいくらい。僕は最近JRuby & Glassfishという組み合わせが大好きなのだが、もちろんRFacebookを使ったRailsアプリも、warにしてGlassfish上で稼働させることは可能である(実際に今やってる)。
RFacebookに関するチュートリアルは、以下のURLが非常に参考になる。もちろん上記URLの内容を素直にやっていけば、期待通りにfacebookに自作アプリケーションの最初の画面をFBMLを使ったりして表示させることができる。
しかし、非常に残念なのだが、上記URLではRFacebookはちゃんと動いてくれない。RFacebookのForumで「facebook APIの脆(もろ)さは、PHP、ASP、そしてJavaコミュニティに感じる脆さなんだよ」といった過激な発言がでるくらいの原因で不具合が出てしまうのだが、これの解決策はあるのでご安心を。
そんなわけで、facebookアプリケーションをRailsで作るための具体的な手順は、後日としよう。そろそろ電車が新宿に到着するので。。。
- Posted:
- 12.05.2007
- Category:
- facebook
