What is Open social?

By shahzadsb

1. Purpose
OpenSocial is a set of APIs for building social applications across the web — for developers of social applications and for websites that want to add social features.

2. Framework Coverage
There are two ways to access the OpenSocial API: client-side using the JavaScript API and server-side using RESTful data APIs.
2.1 JavaScript API
The JavaScript API lives under the opensocial.* namespace and provides access to three primary areas of functionality:
• People — information about individual people and their relationships to each other
• Activities — ability to post and view updates on what people are doing
• Persistence — a simple key-value data store to allow server-free stateful applications
Here are some of the things you can do with the JavaScript API:
• Build applications without maintaining your own server
• Build applications that include a server-side component (for offline processing and/or access from other websites)
• Create brand-new applications
• Expose existing web applications in the context of existing social websites
• Add social features to existing Google Gadgets
• Write one application that can run in the context of many different social websites
The JavaScript API is designed to use standard web technologies:
• It’s packaged as a set of methods in the opensocial.* namespace.
• It allows you to use any standard JavaScript programming techniques and third-party libraries.
• It includes a full asynchronous callback system to support rich AJAX interactivity.
2.2 RESTful Data APIs
The RESTful Data APIs will provide complementary functionality to the JavaScript API, so you can access people, activities, and data from your server.
The RESTful data APIs are also designed to use standard web technologies:
• Server interactions are based on the RESTful AtomPub protocol.
• Authentication is handled by OAuth.

A social application is simply a application that runs on a container that supports the OpenSocial JavaScript API.
To write a social application, you need the following:
• Access to a container that supports the OpenSocial APIs, such as orkut.com.
• A basic working knowledge of how to build gadgets. See the Gadgets API Developer Guide.
The OpenSocial API focuses on people. It lets users share their activities with each other and access information about their friends. There are three primary areas of functionality in the OpenSocial API:
• People and relationships
• Persistence
• Activities
Many API calls are asynchronous as they may require a server request to retrieve or update information. Because of this, you need to pass in a callback function that will be executed once the data is returned from the server.

3. Underline Technology
 HTML
 JavaScript
 Google Gadgets framework [http://code.google.com/apis/gadgets/].

4. Facts Sheet
 Shindig is an open source implementation of the OpenSocial specification and gadgets specification by Apache Software Foundation.
[http://incubator.apache.org/shindig/]

5. Industry support
Partners committed to supporting the OpenSocial APIs included the social network companies Bebo, Engage.com, Friendster, hi5, Hyves, imeem, NetModular, mixi, MySpace, Ning, orkut, Plaxo, Six Apart; as well as business-oriented networking companies LinkedIn, Tianji, Salesforce.com, Viadeo, Oracle, and XING.

6. Limitations
 Security
 Limited functionality
 Inflexibility
 Limited support of containers like Oukut.com

7. Current status
OpenSocial is currently in alpha development. The initial version of the API that was made public was 0.5, followed by version 0.6 released on December 21, 2007. Version 0.7 was released on February 4, 2008.
Container OpenSocial API Status
Hi5 V0.7 White-listed apps available for users, and open sandbox access
iGoogle V0.7 Open sandbox access
MySpace V0.7 White-listed developer accounts
orkut.com V0.7 Upcoming pre-launch testing, and sandbox access

Shindig sample
V0.7 Best effort availability and bleeding-edge functionality, including Caja

Ning V0.5 Opt-in, per network, user availability
Plaxo Pulse V0.5 White-listed apps available for users

8. Conclusion
There are two levels of OpenSocial development:
 Implementing the container
 Developing applications for a specific container
First, task is real challenge and is time consuming development activity, however developing applications for specific container like orkut.com is not very difficult job. It requires skills HTML, JavaScript and Gadgets framework.

9. References
[General]:
http://code.google.com/apis/opensocial/
www.opensocialdirectory.org
[Blogs]:
www.opensocialblog.com
http://opensocialstuff.com
http://opensocialapis.blogspot.com

Leave a Reply