PDA

View Full Version : Social Networks APIs



pitfiend
07-12-2013, 06:14 PM
Hi Guys, does anyone have any experience building wrappers for the more popular social networks, like facebook, twitter, soundcloud, last.fm, tumblr? or have any already working classes/components?

phibermon
07-12-2013, 07:20 PM
The API's are subject to change and indeed do change often. Everybody I know that's maintained some form of interface to social sites plays a constant game of catchup. Best to design a web tech based interface to the social sites and then expose an abstracted mode of access in your own code with which to access via some OP code.

That way your program doesn't need updating, only your web interface which will be a lot easier to maintain and bring into line with changes to the APIs.

pitfiend
07-12-2013, 08:11 PM
I was thinking about how old games post achievement updates on facebook for example, now I realize it after your aproach. Maybe I'm wrong, but API's tends to be stable over time, they add things instead of changing them, so you can still call basic features 2 years later the same way.

phibermon
08-12-2013, 12:34 AM
You're bang on the money with API's in general and I'm sure facebook etc have a more stabilized API due to it's popularity - it'd be bedlam if it changed too much.

But I am under the distinct impression that it's a common bane to have web api's changed on you, abstraction through some form of secondary interface is a wise precaution. Web tech is changing very rapidly, another year or two and we could see things like the Facebook API slowly morph into different web incarnations, greater adoption of HTML5 etc new security approaches etc

It depends on how much freedom you have to update any binaries etc for games/apps you make.

I concede that as a precaution it's merits might very well be outweighed by the amount of work involved, I'm just thinking back to all the times in my coding life where a bit of abstraction could of saved me a lot of work. :)

pitfiend
08-12-2013, 04:12 AM
Great advice (is there a way to give you karma points, hugs or something that means I'm greatfull?). One thing I dislike the most, is to add extra layers for "simple" things. But a dynalib to connect to social networks is something I can do, with not much trouble. Now the thing again is, who has wrappers that already work, at least for the most common networks.

de_jean_7777
09-12-2013, 10:42 AM
I've done some facebook functionality for our company (some quite simple stuff). The API is quite stable, and what I worked on works almost two and a half years later. Facebook does change the API, but there is a period of time to adapt, and it usually is backwards compatible. So what changes did affect me, were not huge. I had the advantage of implementing it in a browser environment of sorts (xul application).

phibermon
09-12-2013, 05:25 PM
It seems my concerns are unfounded in the present day, if it's not an issue any more then it should be safe to ignore my recommendations.

But for those reading, abstracting your interfaces (in this example, creating a 'man in the middle' between your code and 3rd party API) is a good idea when you can't be sure of the stability of the 3rd party API or if there's a chance you'll switch to a completely different API.