Académique Documents
Professionnel Documents
Culture Documents
PLATFORM
Nadeen Ahmed Al-Abdullatif
IT, KSU
KSU, Riyadh
Saudi Arabia
nalabdullatif@student.ksu.edu.sa
ABSTRACT
This paper seeks to understand the Facebook Platform by outlining some of the technologies and
capabilities that are used to make all its different parts function. In order to arrive at a better appreciation of
Facebook, I will discuss how it has grown to be the number one accessed social network on the Web.
Moreover, I will delve into the specifics of what the various parts of the Platform do, and how these
components work together to allow developers to create rich applications that build upon the social
networking features that Facebook provides.
Keywords
Zuckerberg, Facebook, Platform.
1. INTRODUCTION
Originally designed by Mark Zuckerberg for college students in 2004, Facebook has become one of the
most important social networking sites for people of all ages. In May 2007, Facebook expanded its services
by launching its own Platform for application development. This means that in addition to providing its own
services and content to its users, Facebook allows other developers and communities to extend its social
features and reach. Whereas a social network focuses on connecting and building online social networks for
friends who share interests and activities, or who are curious to know the interests and activities of others, a
social platform goes further than that. It lets developers create external applications that give Facebook
users the chance to interact with one another in ways never before imagined [7, 8, 9].
For a better understanding of Facebook and its Platform I will first discuss what Facebook means. After, I
will highlight the services that Facebook offers to both its users and application developers. Then, I will
explain what the Facebook Platform actually means in terms of its impact on users and developers. I will
also discuss the technical aspect that comprises the Facebook Platform. Finally, I will show a few examples
of some prominent Facebook applications.
2. WHAT IS FACEBOOK?
Facebook has become one of the most important social networking sites. Students continued to use the
service after graduation, turning Facebook into a social network for young people in general. Soon people of
all ages, ranging from 12 – 90 became members [3, 8].
Behind Facebook’s complex technology are millions of real people with millions of real relationships. They all
want to be able to communicate in a variety of ways and be able to add new friends, join groups and share
information. This form of communication is not restricted by geography or time—the very factors that
separate and alienate people from one another. Therefore, as a social network, Facebook not only offers its
subscribers people who share interests and activities, but a constantly growing community of friends. Within
this environment where user subscription is perpetually increasing, the adoption of new Facebook
applications is rapidly spread, because every time someone adds an application, that news can be
transmitted to friends automatically, and they have the choice to add the application themselves. Much of
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee
provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full
citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific
permission.
The First Mini-Conference in Web Technologies and Trends (WTT)
© 2009 Information Technology Department, CCIS, King Saud University, Riyadh, Saudi Arabia
the enthusiasm about Facebook applications comes from their swift spread and use by thousands of people
within a short time [4].
The popularity of Facebook was made even greater with the development and release of the Application
Programming Interface (API). Facebook applications are significant to the people using Facebook. The
significance may be experiencing enjoyment, acquiring information, or benefiting from the services. The
applications developers may or may not be in search of profit for what they are offering. In May 2007, user
participation on Facebook reached new heights with the launch of Facebook’s Platform. With the Platform’s
release came fresh ideas and immense interest to not only the users of Facebook, but to the industry as a
whole [4, 8].
3. FACEBOOK SERVICES
Facebook provides its users with numerous services that comprise its core functions. The Facebook
Platform offers third-parties most of these services along with the information they contain [4, 8, 10]. They
are:
1. The Social Graph—The Social Graph is a phrase that Facebook uses to describe the network of
their users. It illustrates the totality of human connectedness to create the ultimate relationship
engine. Known as ―social network analysis,‖ the basic idea is that we are all bound together by a
web of relationships. Some of the ties are direct and strong while others are tenuous and weak: if I
know you and you know Sara, then theoretically I am connected to Sara. It is the six degrees of
separation concept where everyone is connected to everyone else however distantly. Now imagine
a diagram of all those interpersonal connections—that is the Social Graph.
2. User Profiles—Information about users can be obtained through their pages. Depending on the
privacy settings, these pages, that include user-generated content and information gathered from
the social graph, are available to other users. Within these pages are the various ways users
communicate with one another through message links and a profile Wall from which users post
messages to each other.
3. Messaging—Messaging refers to messages sent between users and general announcements.
4. Pages—Facebook Pages are among the many features of Facebook. Pages are a way to design a
profile for not only a business, music band, or celebrity, but anything you can imagine. These pages
are overseen and modified by one or more Facebook users. A Facebook Page gives Facebook
users the chance to interact with the page’s subject by becoming a fan or by using the message
board.
5. Information Aggregates—The immense scale of data available on Facebook makes it necessary
to implement a system that sorts the information according to the user’s interests. This is achieved
through information aggregates like the News Feed or Mini-Feed, or the user profile pages.
Facebook also has its own Platform launched in 2007, appropriately titled the Facebook Platform. But it is an
entirely different platform from those mentioned above—it is not one that you put on your feet but rather a
framework on which applications may be run. As defined by Facebook developers the Facebook Platform is
―a standards-based Web service with methods for accessing and contributing Facebook data‖ [5]. This
service is what enables anyone with the desire to create an application to interact and integrate with core
Facebook services.
It is only natural that something that is successful would evolve and progress to the next level. For Facebook
that next level is the creation of a Platform. Although Facebook achieved widespread fame because of its
clearly defined structure and social network, it is its Facebook Platform that is giving the company lasting
popularity and establishing the company’s potential longevity. Because of third-party applications, Facebook
now offers an important reason for users to invest themselves in Facebook.com in ways that they could
never do before with other social networking sites like MySpace [7]. In fact, as soon as the Platform was
released, it did not take long before users began to see thousands and thousands of Facebook-inspired
applications from all kinds of developers ranging from major corporations to hobbyists working from their
homes. Users were given the opportunity to interact in new and exciting ways. For example, within just four
days of launching the developer’s platform, a company called iLike built a music application that had one
million users! [4, 5] Competitors, too, have taken notice of Facebook’s Platform. Soon after its launch, two of
Facebook’s major rivals were announcing their plans to get underway with similar Platforms [11].
With the release of its Platform, Facebook quickly became one of the top social network web sites with more
1
than 120 million users as of December 2008 . Whereas MySpace and Friendster had been the sites to visit
for online social interaction, Facebook has surpassed them to become the fastest growing social networking
site. It was ranked in the top 10 most visited web sites in the summer of 2008, and its users are no longer
limited to American university students, but are people of various ages from various countries. As reported
by Facebook, more than 50% of subscribers log in daily and spend an average of 19 minutes a day on the
site. According to Alexa, Facebook is the number one accessed social network in Saudi Arabia [1, 4].
Briefly, this is how the application process works: a user makes an HTTP request to the Facebook server
through the Canvas Page URL; the Facebook server in return sends out an HTTP request to the
application’s server based on the Callback URL provided; then, the application calls out Facebook’s APIs or
submits query statements, depending on whether the user uses API methods or Facebook Query Language
(FQL) to access data. After all the data needed has been accessed, the application server returns Facebook
Markup Language (FBML) to the Facebook server that in turn processes FBML and converts it to HTML.
Finally, the output is rendered on a browser (see Figure 1) [5].
1
This fact was reported on FOX News in December 2008.
distinguished itself from other API web sites on the Web. The Facebook Platform has four chief operations
that [8]:
1. Offer reliable and consistent methods to exchange information between itself and third-parties.
2. Handle relationships between Facebook users.
3. Offer methods to spread content on various mediums.
4. Offer methods of interaction between users.
From the perspective of the application developer, there are four basic elements that create the platform
that must be kept in mind. These comprise the Platform Core Technologies that permit developers to
design rich applications that integrate with Facebook [6]. These elements are:
1. Facebook Application Programming Interface (API)
2. Facebook Markup Language (FBML)
3. Facebook JavaScript (FBJS)
4. Facebook Query Language (FQL)
Method Description
friends.getList Returns the identifiers for the current user's Facebook friend lists.
pages.isFan Checks whether a user is a Fan of a specified page.
photos.addTag Adds a tag along with the given information to a photo.
profile.getFBML Gets the FBML that is currently set for a user's profile.
users.setStatus Updates a user's Facebook status..
FBML is derived from HTML after the removal of some HTML elements and the addition of others (specific
4
to Facebook) (See Table 2) . The Facebook server processes and converts their markup to HTML and
renders the output in a browser [6].
Table 2. Some FBML Tags
2
For a complete list of API methods, please visit: http://wiki.developers.facebook.com/index.php/API
3
REST is an "architectural style" that basically exploits the existing technology and protocols of the Web, including HTTP and XML.
4
For a complete list of FMBL tags, please visit: http://wiki.developers.facebook.com/index.php/Category:FBML_tags
fb:profile-pic This tag turns into an img tag for a specific user’s or Facebook Page’s profile picture.
fb:photo Displays a Facebook photo.
fb:mp3 Displays a flash-based audio player
9. CONCLUSION
Although this paper focuses on the technology behind Facebook, we should not forget that much of
Facebook’s success is due to Mark Zuckerberg because what sets him apart is his strong desire for
advancement (and luck). It is the kind of desire that reminds us of a young Bill Gates who in his youth set
out with the goal to put a PC on every desk of every home and every office in the world—all of them running
Microsoft Operating System; or the desire of the Google boys whose goal is to organize and make all of the
world’s information just a click away, via Google. In Zuckerberg’s case, he has managed to turn Facebook
into the window of the web by means of a Platform on which software developers can build rich applications
to make the site more useful, enjoyable, and all encompassing. An important goal of Facebook has always
been to make it easy for users to benefit from one anothers’ knowledge, and the Facebook Platform brings
that knowledge to users and developers everywhere. What is more is that within its ever evolving website,
Facebook is now making its platform architecture available as a model for other social network sites.
Facebook will even go as far as licensing the Facebook Platform methods and tags for use by other
platforms, which means that the 100,000 developers currently building Facebook applications can make
their applications available on other social network sites with no extra work. Zuckerberg’s desire is not only
to create a service that captures the totality of human connectedness, but to be able to share the totality of
human information. Although some of the current applications are not useful, the potential of the Platform
cannot be overstated. This is one big reason why Microsoft was not just willing but eager to spend 240
million dollars to own 1.6% of Facebook [5, 12]!
10. REFERENCES
[1] Alexa, Located on the Internet at http://www.alexa.com. Last visited: 7 December, 2008.
[2] Application Directory, Located on the Internet at http://www.facebook.com/apps/. Last visited: 11 December, 2008.
[3] Elgan, M. How Facebook Is Destroying the 'Nuclear Family', Located on the Internet at
http://itmanagement.earthweb.com/. Last visited: 8 December, 2008.
[4] Facebook. Located on the Internet at http://facebook.com. Last visited: 11 December, 2008.
[5] Facebook Development Center. Located on the Internet at http://developers.facebook.com/. Last visited: 13
December, 2008.
[6] Facebook Wiki. Located on the Internet at http://wiki.developers.facebook.com/index.php/Main_Page. Last visited:
13 December, 2008.
[7] Feiler, J. Facebook Applications. New York. 2008.
[8] Gerakines, N. Facebook Application Development, Massachusetts. 2008.
[9] Graham, W. Facebook API Developers Guide, New York. 2008.
[10] Iskold, A. Social Graph: Concepts and Issues, in Read Write Web, 2007, Available on line
http://www.readwriteweb.com/ Last visited: 11 December, 2008.
[11] Stelter, B. From MySpace to YourSpace, in The New York Times, 2008, Available on line http://www.nytimes.com
Last visited: 9 December, 2008.
[12] Swartz, J., and B. Acohido. Microsoft Buys a Bit of Facebook, in USA Today, 2007, Available on line
http://www.usatoday.com/ Last visited: 8 December, 2008.