Live data from Hacker News

One long, intimate month with the Facebook API

anilchawla.org

11–20 of 28 posts

Re: One long, intimate month with the Facebook API

#11

Anil, why didn't you just ignore fields and attributes that were missing? So if education:concentration returns "CompSci" on the first call, but then is missing on the second call, don't treat that as a change. Don't consider the attribute changed until the it is present and different.

Also, some things like relationship status might go from 'dating' to blank after a breakup if the person doesn't want to scream that they're single right away

Re: One long, intimate month with the Facebook API

#12

Anil, why didn't you just ignore fields and attributes that were missing? So if education:concentration returns "CompSci" on the first call, but then is missing on the second call, don't treat that as a change. Don't consider the attribute changed until the it is present and different.

Right, I also thought I could work around the issues by ignoring fluctuations in the data. The problem is knowing what is the correct baseline data. In your example, the education:concentration might be missing when you first start checking and only start appearing a long time later. Do you ignore the data when it first appears or report that the person just added another major at college (which may be true!)? This i…

I understand that having to work around fluctuating data might produce less than desirable results. But your users might find the feature useful anyway.

Re: One long, intimate month with the Facebook API

#13

I should say that I've been lurking on HN for quite some time and that this is my first post :-) One motivation for writing this post was that I was surprised to see how often the Facebook API will drop/omit data that exists and that you should be able to access. I specifically call out the Breakup Notifier app (which recently got a ton of buzz) because I don't see how apps like that can report accurate information w…

We just work with the API within the usual scope (fb connect, etc) but it breaks regularly and things sometimes change without notice. It's really a joke for a company of that size. It has become kind of a running gag in the office (like: "Skip the tests, just release it. Today we do it facebook-style")

Re: One long, intimate month with the Facebook API

#14
Having built a Facebook application that uses FB video I can understand where he's coming from. The Graph API is a great concept but like so many things Facebook, only halfway executed. It always amazed me that there are so many differences between a video in FQL and a video in the Graph API. In the end I figured out that "begin ... rescue ... end" was my friend when dealing with the Facebook apis. And about any call I make to the OpenGraph API is now wrapped in them.

Re: One long, intimate month with the Facebook API

#15

I should say that I've been lurking on HN for quite some time and that this is my first post :-) One motivation for writing this post was that I was surprised to see how often the Facebook API will drop/omit data that exists and that you should be able to access. I specifically call out the Breakup Notifier app (which recently got a ton of buzz) because I don't see how apps like that can report accurate information w…

So this is how Breakup Notifier does it. It checks to see that the data is there. If at any point in time, the data I'm looking for is unavailable, I mark that field as "stale", don't vouch for the validity of its contents, and remove the ability for the user of the app to view that data.

When it comes back online, I mark it as not stale, and if it differs from the previous (non-stale) version, I send out an email.

Re: One long, intimate month with the Facebook API

#16
I won't go into the specifics of the article, because there are people far more qualified than I - I did enjoy it.

There's a lesson here in marketing: can you predict which name will get more buzz, 'Breakup Notifier' or 'Friend Mail'?

There's another lesson in marketing - you sell the sizzle, not the steak, but if the steak is awful you won't sell very many for very long regardless of how sizz-tastic your marketing is.

I can't compare both these products - and I hope they're both solid.

Re: One long, intimate month with the Facebook API

#17

I should say that I've been lurking on HN for quite some time and that this is my first post :-) One motivation for writing this post was that I was surprised to see how often the Facebook API will drop/omit data that exists and that you should be able to access. I specifically call out the Breakup Notifier app (which recently got a ton of buzz) because I don't see how apps like that can report accurate information w…

So this is how Breakup Notifier does it. It checks to see that the data is there. If at any point in time, the data I'm looking for is unavailable, I mark that field as "stale", don't vouch for the validity of its contents, and remove the ability for the user of the app to view that data. When it comes back online, I mark it as not stale, and if it differs from the previous (non-stale) version, I send out an email.

Gotcha. I thought you might report updates only. The problem is that people can also remove their status instead of setting it back to "Single". Focusing on value updates only is probably fine and I'm sure nobody is going to freak out if the app misses a breakup :-P In my case, I was trying to create a more comprehensive notification that covered events such as new relationships (i.e. the user does not have a relationship status and one day finally sets it) and I couldn't afford the false positives.

Re: One long, intimate month with the Facebook API

#18
post #6

Nice post. Remember ChromeSpeed? Fancy seeing you here! http://www.cs.columbia.edu/~neeraj/projects/chromespeed/

Ha - ChromeSpeed! Glad to see you have the project page hosted and the video on YouTube. Maybe we should port to iPhone? Definitely an Angry Birds killer... OK, sorry to go off topic, we should catch up offline (or online elsewhere)!

Re: One long, intimate month with the Facebook API

#19

Earlier quoted context omitted.

Right, I also thought I could work around the issues by ignoring fluctuations in the data. The problem is knowing what is the correct baseline data. In your example, the education:concentration might be missing when you first start checking and only start appearing a long time later. Do you ignore the data when it first appears or report that the person just added another major at college (which may be true!)? This i…

I understand that having to work around fluctuating data might produce less than desirable results. But your users might find the feature useful anyway.

Thanks. I'm definitely keeping the code around since it's fully implemented. I might either reduce the scope of the alerts (for example, ignore add/remove and focus on changes only) or just bring it back when I have more confidence in the API.

Re: One long, intimate month with the Facebook API

#20
I recently spent some time integrating with the Facebook Credits API, and even though it's smaller, it's a similarly frustrating experience.

The documentation is sort of there, sometimes contradictory, and I always have to resort to reading their code examples in PHP to really figure out what data is expected, how to format it, and what I get back. None of their APIs are really well thought-out, they're all slapped together to sort of have all the relevant data. I understand that it's better to ship than not, but a little thought. Please?

The greatest irony though is that if you want to make a post asking for help in the official developer forum, you're met by this page:

http://forum.developers.facebook.net/register.php?agree=Agre...

Post reply on HN