Herokuで作るFacebookアプリ

第1回Herokuを使ってFacebookアプリを作ろう

まず、はじめに

みなさん、こんにちは。これから「Herokuを使ってFacebookアプリを作ろう」というテーマで連載を書かせていただくことになりました。どうぞ、よろしくお願いします。私は、SonicGardenという組織の中でプログラマーとして、Ruby on Railsを利用してWebサービスを開発しています。

SonicGardenでは、SKIPyouRoomというコミュニケーションサービスをSaaSとしてサービス提供しています。もちろん、この2つのサービスはRuby on Railsで作られています。

SKIP
SKIP
youRoom
youRoom

現在、SonicGardenではRuby on RailsのホスティングサービスであるHerokuを非常に注目しています。海外でも非常に注目され始めています。また、SonicGardenではコミュニケーション系のウェブサービスを提供していることもありソーシャルなアプリケーションを大人数・全世界のプラットホーム上で展開できる Facebookアプリ にも注目しています。ということで今回の「Herokuを使ってFacebookアプリを作ろう」というテーマで連載をすることになりました。

この連載を読むことでHerokuを使ってFacebookアプリを構築できるようになれることを目指します。この記事を読んで基本を学んで、Facebook上で多くの人に利用されるアプリのアイデアを思いつけば、世界で利用されるWebサービスを産み出せるかもしれません!また、単にHeroku・Facebookに興味があるという方もそれぞれ基本的な部分は解説しますので、Facebookアプリを他の言語で作りたいという人にも参考になるようにしたいと考えています。

当連載では、サンプルコードにRails3を利用しますが、Railsのアプリの作り方の基本的な部分には触れない予定です。Rails3でのアプリケーションの作り方についての詳細は他のたくさんの参考になる記事があると思いますので、そちらを参考にしていただければと思います。

Herokuの公式サイト
Herokuの公式サイト

さぁ、人気のFacebookアプリを作って、世界で通用するWebサービスを作ってみませんか?

Herokuとは

Herokuは、Ruby on Rails/RubyのWebサービスのホスティングサービスです。フリーミアム(無料版)のビジネスモデルを採用しており無料で利用することが可能です。有料になるのは、アプリケーションの負荷が高くなって安定動作に複数のプロセスを必要とする場合や、データ容量が大きくなり大容量のデータベースを利用する場合です。現在、100,000以上のアプリケーションがホスティングされていて、かなり安定しているサービスといっても良いと思います。

競合のサービスとしては、Google AppEngineやMicrosoft Azureなどのアプリケーションホスティングサービスがあげられます。このようなサービスに比べてHerokuの特長として挙げられるのは、

  • Ruby on Railsを利用してアジャイルで継続的な開発
  • gitを利用した簡便な運用フロー
  • オープン性(APIが公開されている・関連するコードもオープンソースに)
  • 最初は低コストで利用可能
  • 外部とのサービスを利用した拡張性

などがあります。

海外の動向と国内の事例

Heokuの最近の大のニュースは、Salseforce.com に買収されたことでしょうHerokuのブログ⁠。Salesforce.comに買収されたことで安心感は増したように考えられていますが、これまでユーザを惹きつけてきたサービスの思想やスピード感などが失われるという心配という声もあります。しかし、買収はされましたがHerokuというサービスは、今後ともその名前・メンバーでサービスを継続するとのことなので、今後の動きを見ていく必要はありますが、買収による効果は非常に楽しみではあります。

国内では共同購入型クーポンサービスミナワリがHerokuを利用されているサービスとして、ニュースにも取り上げられています。まだまだ国内の事例は少ないですが、Ruby on Railsの注目度も高く、運用コストを下げてアプリケーション開発に集中できるHerokuを利用した正式サービスは今後増えてくるのではないでしょうか?

Facebookとは

Facebookは、世界最大のSNSです。現在のアクティブユーザ数は5億を越えていると言われています。Facebookをテーマにした映画も国内で公開され話題になっており、国内での利用者はmixiやTwitterには及んでいませんが、今後増加するのではないでしょうか。

Facebook上でのコミュニケーションの多くは、⁠いいね!」というボタンを押すという簡単なものが人気です。友達の発言に対していいね!を押したり、企業のプロモーションページにいいね!を押したりしてコミュニケーションが行われています。

我々のサービスのyouRoomもFacebook上でプロモーションページを解説していますので、ぜひ以下のボタンからイイねをしていただけると嬉しいです!

youRoomファンページ
http://www.facebook.com/youroom

Facebookアプリ

FarmVille
FarmVille

Fecebookでは、サービスをFacebookの中のサービスのように提供することができる仕組みがあります。Fecebook内の友達関係を利用でき、それを活用したサービスが人気を博しています。とくに、ゲームのアプリが人気です。国内のmixiでも同じような仕組みがあり、そこで人気の牧場系のアプリがありますが、そのネタ元はFacebookでも人気のアプリのFarmVilleというアプリだったりします。そのような人気のサービスになると、全世界で毎日1,000万人のユーザが遊ぶという超大規模なサービスになります。

特長としては、

  • 口コミによるバイラル効果で、一気に人気になる可能性がある
  • 人気になるには、ユーザの動向を見て継続的改善が必要
  • ソーシャルを活かした様々なサービス可能性

などがあります。

HerokuでFacebookアプリを作るメリット

Facebookアプリの特長は、まさにHerokuの利点と合致しています。手軽にスケールできるので一気に高負荷になったとしても簡単に対応でき、Ruby on Railsを利用することでアジャイルに継続的にユーザのフィードバックからサービスの改善ができます。さらに、ソーシャルアプリは可能性があるが、何が流行るか分からないという状況ですのでHerokuであれば基本無料で提供できるのでヒットするまでは運用コストが安くなります。

このような相性の良さからHerokuもFacebookアプリ専用のプランを用意するなどFecebookアプリでの利用を推奨しています。Facebookアプリを開発するのであれば、Herokuを選択するのは間違いではないはずです。実際にCardinal Blueという1,200万ユーザを抱えるFacebookアプリベンダがHerokuを利用してたくさんのアプリを運用しています。

次回から

まずは、次回でHerokuについて詳しく紹介します。サンプルとなるアプリケーションをHeroku上で動作させるところを目標にします。その後の回で、Facebookアプリについて紹介し、実際にHeroku上でFacebookアプリを構築するサンプルを紹介していく流れを予定しています。

おすすめ記事

記事・ニュース一覧