We keep your Facebook integration clean and extensible.
We have extensive experience building around the Facebook platform. There is more to Facebook development than simply utilizing the APIs to make connections. Many Facebook "best practices" are actually traps that will hinder you later on as your application matures.We keep it modular.
Most Facebook apps are built as if Facebook were a whole development framework. This can lead to trouble down the road. Our approach treats the various aspects of Facebook development separately, keeping your application modular and ready for growth or modification. What are these components? Authorization - Facebook handles the authorization for you and this should be treated as a separate auth component. Social net data - Facebook is first and foremost a social network. The data and operations for friends, posts, profiles are all social net operations. We keep those abstracted for easy porting to other networks.Rendering tools - Facebook offers a suite of rendering tools (most notably FBML). When approached haphazardly, these can end up interwined throughout your code from top to bottom and leave your UI overly dependent on Facebook utilities.
A hosting portal - Facebook is also a portal. This is a separate aspect of what Facebook provides. Facebook Connect lets you access the social net without running your app on the Facebook portal. It's also possible to run your app on Facebook without utilizing any other parts of the Facebook suite of components, without even authorizing the users or accessing any of their Facebook data. You could even run a Myspace app on the Facebook portal if you chose to (Terms of Service issues aside).
