-
Recent Posts
Popular Posts
- Rent or Own: Amazon EC2 vs. Colocation Comparison for Hadoop Clusters 27 comment(s) | 10890 view(s)
- Mysql Replication Adapter 26 comment(s) | 6700 view(s)
- Making sure Ruby Daemons die 20 comment(s) | 7400 view(s)
- Matching Impedance: When to use HBase 19 comment(s) | 22419 view(s)
- Goodbye MapReduce, Hello Cascading 17 comment(s) | 9748 view(s)
- Rapleaf Challenge Problem 12 comment(s) | 3824 view(s)
- BloomFilter 11 comment(s) | 5483 view(s)
- Using random numbers in Hadoop MapReduce is dangerous 11 comment(s) | 4057 view(s)
- Ruby and HBase 10 comment(s) | 5294 view(s)
- Cycles of Doom in Batch Processing Workflows 10 comment(s) | 2678 view(s)
Categories
- Anonymouse (2)
- Apache (1)
- bash (1)
- Cascading (6)
- Daemons (1)
- encryption (1)
- Extensions (2)
- Google (1)
- Grub (1)
- Hadoop (22)
- HBase (6)
- HDFS (4)
- Kickstart (1)
- MapReduce (9)
- mcrypt (1)
- Miscellaneous (26)
- Mongrel (2)
- Mysql (2)
- OpenSocial (1)
- Operations (1)
- Ruby (7)
- Security (2)
- Thrift (6)
- Xen (1)
Archives
- 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
- March 2009
- February 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007

OpenSocial Thoughts
Recently, I attended an OpenSocial Hackathon at Six Apart to learn more about the development efforts of Google and the various app developers. I thought I would share some of my notes from the meet up.
I wasn’t sure what to expect with the API that Google is developing. It seemed like a lot of people were unsure about what was going on with it since it dropped off the map. It seemed very real and that Google did have some engineers staffed on it and they were writing some code to support it. I think it dropped off the map because they are pushing for a major release (ver 0.7) that they want people to take seriously. The intermediate releases will not last long and will change so it didn’t make sense to push it.
Overall, I wasn’t too surprised with the what I learned. OpenSocial is just a spec for a Container to support (Plaxo, Myspace, Hi5, etc) and for Gadgets to expect (Rockyou, Slide, etc). So when a Gadget developer makes a function call, they can expect that call to be supported by the container (w/ some caveats..see below). Google is just helping develop the language used between a container and a gadget. So defining how a gadget can call a function to get container’s user’s friends (requestGetFriends).
Aside from writing the API spec, Google is developing some cool open source code to support OpenSocial. One piece is a javascript sanitizer called Caja. Another is a framework for people to quickly setup a site to act as a Container which they are calling Shindig. I wouldn’t be surprised if Google later offers some hosting / computing service (similar to amazon web services) to OpenSocial developers.
The API that Google is developing is a request-based model. From what I gathered, everything a Gadget developer wants to do (get friends, send messages, navigate to friends page) they have to issue a request to the Container before doing so. The container will support the request method, but they are not obligated / required to support the functionality requested by the Gadget. So if the gadget needs to be able to see friends of a user to work optimally, but the container denies / blocks that feature, the gadget is out of luck. Also, there really isn’t a good way for Gadget developers to link users on different Containers. The same user could have the gadget installed on 2 different sites (Bebo & Hi5 say), but to the Gadget company, its 2 different people. That would suck if I racked up a ton of points or whatever and couldn’t use them transparently.
Overall it seems kind of cumbersome for widget maker to develop apps / gadgets / whatever. It seems like the power is still in the hands of the Container site. Having to request every function to see if its available seems like a nightmare. It might not, but thats my impression. If my assumptions are wrong here, I’d be happy to hear about it if you have more experience working with the OpenSocial API.
We at Rapleaf love what Google and OpenSocial are enabling. We are strong believers in open systems and open data and we are pushing to build tools to progress towards these achievable goals. OpenSocial is a good step forward for what we are all trying to accomplish. It will be interesting to see what other strides are made as a result of OpenSocial.