How Facebook Platform Works and Why We Like It

One of the most interesting trends in technology lately has been platforms. Just about every major new site either has a platform or is built on one. At Inigral, I’ve been fortunate enough to be able to build an application that integrates with Facebook, perhaps the most advanced and interesting platform ever created.
Launched in 2007, the Facebook platform set a high bar the very first day it was released. Never before had a platform had such technically impressive design along with access to an incredibly large social graph. In the three years since, things have only gotten better. Applications built upon the Facebook platform are able to achieve an incredible level of discoverability, user engagement, and detailed analytics. Choosing to build our product, Schools on Facebook, on top of the Facebook platform was a no-brainer.
One of the most interesting parts of the Facebook platform is how it allows applications like ours to look like they’re actually a part of Facebook. Here’s a screenshot so you can see what I mean:

"Events," a native Facebook Application built by Facebook

A live screenshot from the application we deployed at Arizona State University
All of this is possible due to Facebook Markup Language (FBML), a unique aspect of the Facebook Platform. FBML is a modified subset of HTML that allows applications like ours to embed themselves into Facebook while ensuring that performance remains high and that Facebook users are secure. When a user visits Schools on Facebook, Facebook requests content from our servers on the user’s behalf. Our servers then return FBML markup that is passed through special Facebook proxy servers that replace FBML with appropriate HTML. For example, when we wish to display the profile picture of a user with Facebook id “100” we use the FBML tag “<fb:pic uid=100/>”. Facebook’s servers then replace this tag with the appropriate html “<img>” tag. If the user viewing the image does not have permission to see user 100’s photo, Facebook automatically returns a blank image instead.
In addition to having its own page on Facebook, School’s on Facebook gives users the ability to enhance their profile by adding a “Tab”. These tab pages provide a great way for users to share their school related interests with friends. When the Tab is clicked on the user’s profile, Facebook makes a call to our servers and we pass Facebook more FBML, which is parsed to show content that we design and customize for our users.

A sample profile tab from Schools on Facebook
Users can also publish Facebook stream stories to a subset or all their friends. This feature presents a great way to grow the application and raise awareness of institutional brands through peer-to-peer marketing. This happens when applications make an API Call and send XML with a Title, Body, and Image to be published in the Facebook Newsfeed to be distributed to friends of the user.

Example Stream Post (Newsfeed Item)
When a user authorizes the Schools on Facebook application, we are able to gather some basic information about them that they have chosen to share. For example, we can gather their name, friends list, and interests through the API. All these data points can be used to create an environment where users can effortlessly connect and communicate with other students like themselves, all within a community that can be monitored and moderated by a school. Finally, as I mentioned in my last blog entry, Facebook’s ‘Add as Friend’ feature is easily accessible to all users and in one click can lead to lifelong friendship.
The way we see it, there’s no better place than Facebook to build a tool to foster online communities.
View Comments" />
how can we intergrate facebook in teaching and learning
I don’t mean to convey that students should choose an “easy major” so they can kick back and enjoy the college years (4 good years doesn’t make up for 35...
in Highlights from the 2009 Community College Survey of Student Engagement
- Community College (1)
- Design (3)
- Emerging Technologies (30)
- Entrepreneurship in Education (11)
- Facebook in Higher Education (48)
- In The News (22)
- Interoperability in Higher Education (4)
- Lifecycle Engagement (10)
- Privacy and Security (2)
- Product Reviews (6)
- Social Media (40)
- Social Networks in Education (44)
- Thought Leaders (19)




Facebook
Twitter
Flickr
Subscribe
YouTube
SlideShare
LinkedIn
Delicious
Diigo
Newsletters
Do you know how to embed whole pages hosted on an external server into a Facebook tab using iframes?