T25. Building Viral and Scalable Social Software for the Facebook Platform with Ruby on Rails

Online social networks are the current craze. People young and old are spending a large part of the social lives online. Social utilities such as Facebook allows individual to connect, share, discuss, and reconnect with families, friends, and colleagues.

An interesting aspects of these social utilities, and Facebook in particular, is that they are now platforms. Facebook exposes APIs that can be used by third parties to create novel applications that can engage the user base into domains as varied as charitable contributions (Causes), games (Poke, SuperPoke, and Scrabulous), photo and video sharing, business applications such as IBM MentorMe, as well as esoteric applications such as virtual pets.

How does one quickly create applications for the Facebook platform? How can you leverage the virality of the platform to build your application user-base? Once your application goes viral how do you manage and scale your application?

In this tutorial we will start addressing these questions by doing a live Facebook application using Ruby on Rails. We will take advantage of various viral features of the Facebook platform and deploy the application on a public cloud computing infrastructure so that it can scale as it goes viral.

Objectives:

1) Learn basics of Ruby and Rails
2) Learn basics of the Facebook platform and APIs
3) Create a live Facebook application using Ruby on Rails
4) Improve application with various unique Facebook features, e.g., wall, discussions, messaging, wall posts, and so on. In other words, take advantage of the viral features of the Facebook platform
5) Deploy the Facebook app on a cloud computing infrastructure so that it can scale
6) Discuss (and time permitting) add privacy primitives to the application

Format:

Slides and live coding exercise that audience can also do on their own laptops