Site Authentication using Facebook Connect and Google Friend Connect

For one of my side projects, I have started using Facebook Connect to authenticate my users. Facebook has done a great job of convincing developers to integrate it by providing excellent guides on how to use it (video, wiki). There are a number of sites that uses FBConnect for authentication such as Citysearch and Techcrunch.

On the other hand, there is Google Friend Connect. You might not know it but it is very similar to Facebook Connect and possibly more powerful with its integration with the OpenSocial libraries.

So how come we don't see sites using it?

Google has not done any significant marketing of Friend Connect as an authentication tool. There are currently less than 30 members on its developer forums (link). For those who decide to dip their toes on Friend Connect, Google's documentation doesn't make it easy for you to figure out how to integrate it in your site. Whereas Facebook makes it prominent in their documentation that authentication is the starting point in using Connect, Google leaves it up to you to figure that out.

Eventually though, I was able to get my app running with Google Friend Connect. It spanned a couple of days (asking questions in the forum and scouring the documentation) versus developing Facebook Connect for my site for just 2-3 hours.

So here is a simple comment app I have created. It gives the user the option to use either Facebook Connect or Google Friend Connect for authentication. I didn't encounter any problems having both Javascript libraries in one page. However, I used the Javascript libraries as little as possible and included it only on the login page. I utilized the REST API library of both Connects on the server-side for the rest of the functionalities such as getting the Display Name and Picture Url.

You can access the app at Use Firefox or IE. There is a problem displaying the Google Friend Connect button in Chrome. On my next post, I will go in depth with the Google Friend Connect Code and post the source code.