Made of Everything You're Not

If you're a stalker I'd prefer if you didn't kill me. Thanks.
  • Home
  • Projects
  • Portfolio
  • Resume

Posts Tagged ‘Facebook’

Why I Hate Facebook Connect

Posted in Programming on May 13th, 2009 by Eric Lamb – Be the first to comment

In the Facebook Connect Primer I barely scratched the surface about the Facebook Connect service; I fully expected to research more and write about it. I had it all worked out in my head; in this post I wanted to outline how I was able to use the service and outline deeper features and functionality.

I Hate Facebook

I Hate Facebook

Unfortunately, this just wasn’t possible because, well, all the documentation I could find on Facebook Connect was terribly outdated and inaccurate. So, instead, I’m going to talk about how painful it was trying to work with the system. Enjoy :)

I needed to find out as much as possible about the Facebook Connect service so the first thing I thought to do was the Facebook demo site, “The Run Around“.

I first downloaded the file and extract and setup a development site on my development web server. I work on my Vista machine so it was pretty straightforward.

This was a mistake though. It turns out that development of Facebook Application projects requires an open connection to the Internet. It can not be behind a password screen.

FUCK! You have to work live on the Internet when developing; amateurs…

Anyway, after setting up the project on my computer the first thing I got was a screen full of undefined variable notices from php; the developers didn’t take the time to kill notices in the code or throw a call to:

error_reporting(0);

sigh…. have to fix…

Either, open up init.php and add the above code below the first <?php, or do like I did and fix all the errors yourself.

The php notices aside, the first time it’s opened in a browser an error screen shows up saying to follow the instructions in lib/config.php.sample

Initial Error

Initial Error

You have to register for a developer account if you don’t already have one, like I did, and then create an application. This means, to me anyway, that Facebook Connect sites have to abide by the same Terms of Use as Facebook Applications.

Create a Facebook Application and go to the Connect tab. From here you can setup the callback URLs, upload a new image for the Connect confirmation screen and enter a base domain (this helps for cross domain access).

Of particular interest are these lines from the Terms of Service:

You can only cache user information for up to 24 hours to assist with performance. The only exceptions are those listed in the Facebook Platform Documentation.

However, you must get signoff from us before releasing any formal press releases.

After reading the above, combined with the above frustrations, I decided to walk away from Facebook Connect entirely. This was a HORRIBLE research experience.

That was until recently when I found out about an upcoming project that requires integration with the service. Oh, well. At least I already have some research out of the way…

Good Reading:
Facebook Platform Application Guidelines
Platform Policy
Facebook Privacy Policy
Facebook Site Terms of Use
Facebook Platform Developer Copyright Information (if your application permits file-sharing)
Facebook Platform Documentation

How to Build a Facebook Application
Facebook Application Tools
Getting Started With Facebook Connect
FBConnect – 5 reasons why we dumped it
API Functions

Bookmark and Share

Facebook Connect Primer

Posted in Programming on March 11th, 2009 by Eric Lamb – Be the first to comment

Facebook Connect is a new(ish) service from Facebook that allows integration between a users Facebook account and a third party website. The basic idea being that if a user updates their profile on Facebook the data gets updated on the third party website.

Facebook Logo

Facebook Logo

Basics

To start there are 4 different areas of integration with Facebook:

Identity. Seamlessly connect the user’s Facebook account and information with your site
Friends. Bring a user’s Facebook friends into your site. You can link friends that have existing accounts and even invite new friends to your site.
Discovery. Publish information back into their friends’ News Feeds on Facebook.
Privacy. Bring dynamic privacy to your site using XFBML.

Using the above description, it appears that integrating FriendFeed Connect on your site, especially a social site, allows users to keep their online profiles in sync between websites.

For example:
Assume I have a social site with Friends, profile pages and privacy settings.

When a Facebook user logs into my site I can prepopulate their profile data on my site with their profile data on Facebook. If there are other users on my site with a Facebook account I can move the users Friend list over as well. Finally, if my site allows customization of certain privacy settings I can keep those in sync as well.

Additionally, activity done on my site by a Facebook user can be pushed out to their Facebook profile.

And the coolest part? The user just updates their Facebook page to update my site!

Pretty cool really.

Not all sweet though…

There are some interface destroying guidelines, as well as some restrictions, third party sites have to abide by.

1. The website must display and use one of the approved Facebook Connect buttons on Facebook Connect Login Buttons to begin the “Connect” process.

2. When Facebook Connect is used to allow a user to “sign in” or authenticate with your website, the Facebook Connect option must be presented at least as prominently as the most prominent of any other sign in or authentication method on your site, and not as a secondary option.

4. When a user has connected their account and is currently logged in on your site, the application must show the profile picture and name of the user in a visible place on the page. This profile picture should be no smaller than 16×16 pixels and should include the Facebook “f” favicon in the lower right corner. If the profile picture is too small to position the icon over the lower right corner, you can position the favicon to the right of the picture.

6. If you have an application on Facebook and a website that implements Facebook Connect, the user will need to explicitly connect on your website before your website can use their information. However, once the user has both authorized the application and connected to your website, you can link the information.

8. Facebook Connect applications cannot publish one line stories automatically via the Facebook Platform API (i.e., without being presented to the user in a Feed form) unless the story and template have been approved through the Facebook Connect approval process.

9. When a user completes an action in an application that would prompt a Feed form, the application should add a check box (to the part of the flow associated with completing the action) asking the user if they want to share this information through Facebook (e.g., “Share this run with my Facebook friends?”). The check box may be pre-checked by default, but if the user unchecks this check box during the flow, the Feed form should not be shown.

11. When representing a list of friends to a user on the website, which includes a set of friends from the user’s full Facebook friend list, the website must indicate that the friend relationship on this website is associated with their friend relationship on Facebook. It is recommended that you use a Facebook favicon or the word “Facebook” to indicate that these friend relationships are associated with Facebook.

Still, even with all the work the above entails, it’s a compelling service.

Bookmark and Share
  • Subscribe: Entries | Comments
  • About Me

    Email Email
    Twitter Twitter
    310.739.3322
  • Categories

    • Brain Dump
    • Business
    • Code
    • IT
    • Programming
    • Rant
    • Servers
  • Archives

    • October 2011
    • August 2011
    • July 2011
    • June 2011
    • May 2011
    • April 2011
    • March 2011
    • February 2011
    • January 2011
    • December 2010
    • November 2010
    • October 2010
    • September 2010
    • August 2010
    • July 2010
    • June 2010
    • May 2010
    • April 2010
    • March 2010
    • February 2010
    • January 2010
    • December 2009
    • November 2009
    • October 2009
    • September 2009
    • August 2009
    • July 2009
    • June 2009
    • May 2009
    • April 2009
    • March 2009
    • February 2009
    • January 2009
    • December 2008
    • November 2008
    • October 2008

Copyright © 2008 - 2012 Eric Lamb - All rights reserved