[GoogleIO] OpenSocial Primer: What is OpenSocial

Chris Schalk, Kevin Marks, Patrick Chanzeon on stage at Google IO

Patrick’s High level overview of OpenSocial

  1. Making the web better by makting it social
  2. Jaiku’s Jyri Engestrom’s 5 rules for social networks: What is your object? What are ur verbs? How can ppl share objects? What is the gift in the invitation? Are you charging the publishers
  3. How do we socialize objects online without having to create yet another social network?
  4. Deveoper uses API to access the social objects. eg. LinkedIn
  5. Problem is we have 100s of Social Networks hence the developer needs to learn 100s of different APIs for accessing social objects
  6. Hal Varian talks about Network effects. He is a chief economist at Google. OpenSocial is an implementation of Ch. 8 from his book “Information Rules”
  7. OpenSocial Foundation created by Yahoo, Google, myspace. Goal of the foundation is to keep the specification open.
  8. With OpenSocial you learn the programming model once, er, 80% once and 20% specific to the container
  9. iLike, Slide, Flixster, RockYou etc. are building OpenSocial compliant apps for bebo, linkedin, hi5 etc.
  10. 275 million users are OpenSocial container ready

Chris Schalk on building OpenSocial Apps

  1. Client API in Javascript, REST coming up
  2. JS API in three parts a. People and Friends. b. Activities c. Persistence
  3. JS function can be embedded in gadget running in an OpenSocial container
  4. JS Callback function for returned data
  5. Posting an activity is similar to posting an activity and getting a callback
  6. Persistence. Not clear where the data persists? container or gears like client?
  7. Server side REST services: /people/{guid}/@all for getting a collection of all people connected to user identified by @guid All part of shindig codebase. does pagination etc. REST looks more promising for business apps on OpenSocial compared to JS which could be for cool apps
  8. Serverside integration options: Google AppEngine, EC2
  9. Checkout Google IO code lab

Kevin Marks now

  1. Containers provide a social context
  2. OpenSocial separates app logic from Social Context
  3. An app sees user ids — the container makes them people
  4. Users understand the social contract of the containers
  5. Save apps and users from re-registration hell
  6. Containers don’t choose the users, users choose to join
  7. They grow thru homophily and affinity
  8. Network effect can bring unexpected userbases
  9. OpenSocial gets you tol all their users
  10. Make your plan to localize. You’ll be surprised where the users are coming from
  11. Not just social networks. Social network sites, Personal dashboards, Personal CRM systems, Sites based around a Social Object
  12. Abstracted container concepts at Viewers + friends and Owner + friends. Owner and Viewer are defined by the Container. The application gets IDs and connections to other IDs
  13. The Owner may not be a person. It could be an organization or an object.
  14. Kinds of container — Social Object sites like imeem, flickr
  15. Kinds of container — CRM systems like Oracle CRM, Salesforce.com
  16. Kinds of container — Any web site enabled by Google Friend connect
  17. Container sites control policy. Check the Env., Getting information (Viewer info may not be available, may need permission). Spreading you application (Sending message to activity). Monetization and Installation

Closing Remarks by Chris, Patrick

  1. Apache Shindig open source software the allows you to host opensocial applications
  2. Heavy partner involvement
  3. Host within an hour’s worth of work
  4. Incubated at Apache
  5. Build process of Opensocial apps automated through maven (why not ant?)
  6. SocialSite at Sun is an Open Source project that allows you to turn your web app into a OpenSocial container
  7. Leverages Shindig
  8. Built by Dave “Roller” Johnson of Sun.
  9. Complimentary to Friend Connect