The ubiquity of Facebook is hard to ignore. It started as a local service that helped college students connect and has expanded into a worldwide phenomenon with millions of users accessing Facebook and associated applications every day. The size of the Facebook audience makes it a compelling platform for developers as does the versatility of the site. There are a wide range of applications already being used on Facebook and the possibilities for new applications are limited only to the developer’s imagination. So let’s discuss some of the basics when it comes to building Facebook applications.
In the Beginning
Any developer who is hoping to write or install Facebook applications must first have his or her own Facebook account and then must install the developer application. Facebook’s developer application allows you to create, monitor, and configure applications. In addition, you’ll need to secure yourself a server as Facebook applications run form the developer’s server. The benefit of this is that you can write the application in whichever language you know best. For the sake of simplicity, examples in this article will use PHP but the process is the same regardless of the language you use.
Once you have your Facebook account, have downloaded the developer application, and have your server ready to go, you’ll be ready to start developing your own applications. Still, having a bit of understanding of the Facebook platform will help you during the creative process. First and foremost, the fundamental components of Facebook are clearly outlined on their developer site. Essentially, the platform is made up of three parts: API, FBML, and FQL. Of course, APIs determine the ways in which you can connect to and interact with Facebook. FBML is the custom Facebook markup language which has basically be modeled around HTML. While similar to Coldfusion or ASP.NET and associated tag-based syntax, FBML helps you to define the pages of your application specifically for the Facebook Platform. And finally, FQL is the Facebook Query Language which is also a customized developer language for Facebook that is based on SQL. FQL is especially useful when there are no helper methods in the API but can also be used for tags in FBML giving developers an incredible amount of control over the details of their application.