Blog

Developing API based social media applications

When it comes to social media applications, the Facebook platform is king, and many developers have to face the decision of developing within the Facebook platform, or outside using Facebook Connect. With rise of social media sites and open API’s eg: Twitter, LinkedId, Myspace, which is the best way to take your latest and greatest social idea?

Well first off, it all depends on what the purpose of the application is, and who is the intended audience. You might be developing a game that is based on a user’s friends for engagement, or you just need to delegate the authentication system to ease registration. There are many reasons to develop within, or break out of the box, so lets look at the pros and cons, and some of the reasons you might do it either way.

Within Facebook: iFrame/FBML

Facebook has over 300 million users. It is a great source of users, who visit more than once a day and spend good amount of their internet surfing time on the social network. Most applications built within Facebook look to take a slice of that time, by further enhancing the social experience. Multiplayer games, sharing and collaborative applications are great examples.These applications tend to be short attention span applications, with very simple interfaces and involve quick actions a user can do in between browsing their friend shared lives.

Facebook also gives you direct access to its user base, through many of the hooks it has created in its platform. This is great for viral growth through notifications, status updates, news feed posts and invitations. Its very easy to get the word out to the rest of your users friends from within.

When it comes to FBML/FBJS (Facebook’s own markup language and javascript) or developing in an iFrame, I definitely prefer iFrames. Facebooks development language, though it makes for more of an immersive user experience, is slow and very limited. iFrames give you the flexibility to use any javascript framework you desire, and the speed of your code optimized on your server.

Breaking outside the box: Using Facebook Connect

Sometimes, the Facebook user base isn’t what your looking for. If you have  a very feature rich application, then it may be best to be a standalone application. Your users will be away from the distractions of Facebook notifications, email and chat, and can take the time to soak in your app. With Facebook Connect, you can allow your users to register easily with their Facebook credentials, and import all the contacts and information, but without the Facebook chrome and distractions.

Other than Facebook connect, there are many API based social networks and authentications systems available these days, each with its own niche features and following. Sometimes you want to be able to appeal to the broadest set of users, by making your social application integrated to more than one. Facebook for its social connections, Twitter for its status updates, LinkedIn for its professional contacts, and maybe Four Square for location based services. In this case, it would be best if your social application was outside of the eco-system and free to explore all avenues it needs.

Personal experience

In my personal experience, I tend to see Facebook as a place to develop small , fun and easy to user, viral applications that will grow like wild fire, but will have a short life span. When I set out to try and build a feature rich application, with unique niche features that need many integration points to other web API services, I try and build outside of Facebook but still leveraging it with Facebook Connect. Giving my users the flexibility with multiple authentications systems, and multiple social sharing avenues.

How do you set out to develop your next social based web application? Any suggestions on how to leverage the millions of users on all the social networks with API’s?

Tags: , , ,

No comments yet.

Leave a Reply