SlideShare a Scribd company logo
 
Introducing OpenSocial “Building Social Ajax applications with OpenSocial” Chris Schalk Developer Advocate Google
Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
What is OpenSocial? OpenSocial is a set of common APIs for building social applications across the web  It is being developed by Google in conjunction with partners from the Web/Social Application development community
Why OpenSocial is Important? The Web is better when its social Isn’t the Web social already? 100s of millions of users already have signed up for social networks around the world That’s great, but we believe it can get better
The problem of social network development “ .. But what if you want to build an application that will run on multiple social websites?” Problem:  Developers have to  learn multiple APIs  to publish in multiple environments Solution:  OpenSocial allows developers to write applications to a common standard API that will run on multiple websites! As each social website opens its environment to developers, it exposes an API
OpenSocial  solves  this problem
OpenSocial solves this problem
What can OpenSocial do for the Web? It’s about  more ,  more ,  more   More   applications  can be built by developers More websites  can run these applications More users  can use these applications For Web developers this equates to   distribution ,  distribution ,  distribution!
OpenSocial is not  Google Social The evolution of OpenSocial… “ It is about working with open standards and open partners in a collaborative fashion to build the best technology”
OpenSocial in the US Pictures of hackerthon Partner Hackathon at SixApart in San Francisco Pictures of container meeting Numerous Hackathons held both at Google and at Partners sites On Site Google Hackathons We supplied Power, Wifi, & Pizza!
OpenSocial in Japan Pictures of hackerthon 関連ドキュメントの 日本語化を検討中 Pictures of container meeting 世界でも最も   Social Site  が成功している国の一つ パートナーのオンライン /  オフラインの参加をサポート ハッカーソン OpenSocial  Container Provider Meeting
OpenSocial in India Pictures of hackerthon Hacking in Delhi Pictures of container meeting Did a multi-city tour in Fall 07 - introducing OpenSocial Kicking off Hackathon in Bangalore OpenSocial  Container Provider Meeting
Who’s working on OpenSocial? Over 200 other influential companies… amiando Animoto Appirio Bebo Bleacher Report BonstioNet Brad Anderson Bunchball, Inc BuyFast Cardinal Blue Software Chakpak Chronus Corporation Ci&T Inc come2play CurrentTV E-junkie Engage.com eTwine Holdings, Inc. Fendoo Ltd Flixster FotoFlexer Friendster Grimmthething Guerreiro Consult HedgeStop.com Hi5 Hungry Machine Hyves IG.com (Division of Brasil Telecom) iFamily, Inc iLike Imeem Indeed.com KlickSports, Inc. LabPixies Ltd. LimitNone LinkedIn LjmSite LoveMyGadgets LuvGoogleGadgets Mesa Dynamics, LLC Mixi MuseStorm Inc MySpace Netvibes NewsGator Nike Ning NY Times Shelfari O Globo Online Oberon Media Oracle Orkut Outside.In PayPal Plaxo PROTRADE Puxa Qloud RockYou Salesforce.com …
OpenSocial is not just for  friends There is an untapped  Enterprise  potential   Instead of friends just sharing photos, messages   business partners can interact via social networks Google is now partnering with many influential business application providers
OpenSocial Roadmap Version 0.5 was released in a “developer release” on Nov 1st. First “sandbox” was made available on Orkut   Version  0.6 was released in December Initial version of Shindig server software was launched as Apache incubator project Other sandboxes came live - Hi5, Ning, Plaxo … Version 0.7 (production) was released in January MySpace, Hi5, Orkut officially launching “very soon”
Gartner Technology Hype curve Case Study:  OpenSocial Case Study: OpenSocial
OpenSocial Roadmap a la the “Hype curve” Case Study:  OpenSocial Case Study: OpenSocial
Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
OpenSocial APIs overview People and Friends  Data API   Access friends information programmatically   Activities  Data API   See what you’re friends are up to   Share what you are doing Persistence  Data API Share data with your friends, the world The core OpenSocial services include:
OpenSocial APIs overview Gadgets Core     Utilities handling gadget preferences, IO, JSON   Gadgets Feature-Specific     Utilities for working with flash, window management, tabs, rpc, MiniMessage Additional Gadgets services include:
Core Services - People & Friends /** * Request for friend info when the page loads. */ function getData() { var req = opensocial.newDataRequest(); req.add(req.newFetchPersonRequest(VIEWER),  'viewer' );   req.add(req.newFetchPeopleRequest(VIEWER_FRIENDS),   'viewerFriends' ); req.send( onLoadFriends ); };  Getting info on  you  and  your friends :
Core Services - People /** * Callback function for returned friend data. */ function  onLoadFriends (response) { var viewer = response.get( 'viewer' ).getData();  var html = 'Friends of ' + viewer.getDisplayName() + ‘:<br><ul>’; var viewerFriends = response.get( 'viewerFriends' ).getData(); viewerFriends.each(function(person) { html += '<li>' + person.getDisplayName() + '</li>';}); html += '</ul>'; document.getElementById('message').innerHTML = html; };  Getting info on  you  and  your friends : Generated output:
Core Services - Activities /** * Posting a simple text activity */ function postActivity(text) { var params = {}; params[opensocial.Activity.Field.TITLE] = text; var activity = opensocial.newActivity(params); opensocial.requestCreateActivity(activity, opensocial.CreateActivityPriority.HIGH,  callback ); }   postActivity(&quot;This is a sample activity, created at &quot; + new Date().toString()); Posting an  Activity : Activities in Orkut:
Core Services - Persistence /** * Storing data */ function populateMyAppData() { var req = opensocial.newDataRequest(); var data1 = Math.random() * 5; var data2 = Math.random() * 100; req.add(req.newUpdatePersonAppDataRequest(&quot;VIEWER&quot;, &quot;AppField1&quot;, data1)); req.add(req.newUpdatePersonAppDataRequest(&quot;VIEWER&quot;, &quot;AppField2&quot;, data2)); req.send(requestMyData); }; Requesting to  persist  data:
Core Services - Persistence /** * Fetching data */ function requestMyData() { var req = opensocial.newDataRequest(); var fields = [&quot;AppField1&quot;, &quot;AppField2&quot;]; req.add(req.newFetchPersonRequest( opensocial.DataRequest.PersonId.VIEWER), &quot;viewer&quot;); req.add(req.newFetchPersonAppDataRequest(&quot;VIEWER&quot;, fields), &quot;viewer_data&quot;); req.send(handleReturnedData); } Requesting to  persist  data:
Core Services - Persistence /** * Displaying persisted data */ function handleReturnedData(data) { var mydata = data.get(&quot;viewer_data&quot;); var viewer = data.get(&quot;viewer&quot;); me = viewer.getData(); // me is global var var data = mydata[me.getId()]; htmlout += &quot;AppField1: &quot; + data[&quot;AppField1&quot;] + &quot;<br/>&quot;; htmlout += &quot;AppField2: &quot; + data[&quot;AppField2&quot;] + &quot;<br/>&quot;; var div = document.getElementById('content_div'); div.innerHTML = htmlout; } Displaying the fetched ( persisted ) data: Generated output:
Demonstration Building some simple OpenSocial apps in Orkut Displaying your friends Reviewing other OpenSocial applications
Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
OpenSocial’s Container - Shindig What is Shindig? “ OpenSource software that allows you to  serve  OpenSocial applications”   Is currently an Apache Software Incubator project Heavy partner involvement: Ning championed Open source reference implementation of OpenSocial & Gadgets technologies It’s Goal: “ To serve as an easy to use OpenSocial “container in a box”
Shindig Components Shindig Gadget Server Gadget Container JavaScript OpenSocial Container JavaScript Gadget Rendering Servlet Gadget Server Renders gadget XML    (i.e. from gmodules.com) Gadget Container JavaScript OpenSocial Container    JavaScript JavaScript environment for    people, activities, persistence OpenSocial Gateway Server WIP!
Shindig in Action Running the application Request is made from Client Data is returned and rendered Application Installation   Gadget XML is loaded and cached on   OpenSocial Container Gadget XML Source
Demonstration Checking out the Shindig website Running and Debugging Shindig from Eclipse Trying out the SampleContainer
Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
OpenSocial’s REST APIs Why are REST APIs needed? “ What if you don’t have a JavaScript environment?”   Progress is now being made on the specification for OpenSocial REST APIs! A new proposal is been published Posted in “ opensocial-and-gadgets-spec ” Google Group Currently receiving feedback
With REST APIs OpenSocial can go Mobile! The OpenSocial  Mobile  environment potential is obviously huge   Since OpenSocial based on common Web standards programming is straightforward HTML/JavaScript Flash/Flash Lite  REST APIs (Upcoming)
With REST APIs OpenSocial can go Mobile!
Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
Where to find more info on OpenSocial OpenSocial APIs code.google.com/opensocial code.google.com/p/opensocial-resources Shindig incubator.apache.org/shindig (Me)  [email_address]
Questions?

More Related Content

PPT
Opensocial Haifa Seminar - 2008.04.08
PDF
Goodle Developer Days London 2008 - Open Social Update
PPTX
Building Science Gateways with Gadgets and OpenSocial
PPTX
The Best Way to Become an Android Developer Expert with Android Jetpack
PDF
Android and NFC / NDEF (with Kotlin)
PDF
South America 2008: Open Social For Brand Advertising and Media
PDF
IBM Index Conference - 10 steps to build token based API Security
KEY
GR8CONF Contributing Back To Grails
Opensocial Haifa Seminar - 2008.04.08
Goodle Developer Days London 2008 - Open Social Update
Building Science Gateways with Gadgets and OpenSocial
The Best Way to Become an Android Developer Expert with Android Jetpack
Android and NFC / NDEF (with Kotlin)
South America 2008: Open Social For Brand Advertising and Media
IBM Index Conference - 10 steps to build token based API Security
GR8CONF Contributing Back To Grails

Similar to Ajaxworld Opensocial Presentation (20)

PDF
Goodle Developer Days Munich 2008 - Open Social Update
PDF
Open Social Presentation - GSP West 2008
PDF
Goodle Developer Days Madrid 2008 - Open Social Update
ODP
Barcamphanoi Opensocial Application Development
PDF
GSP East 2008: Open Social: Open For Business
PDF
Jaoo - Open Social A Standard For The Social Web
PPT
BarCamp KL H20 Open Social Hackathon
PPT
Google Opening up to Developers - From 2 to 55 APIs in 3 years
PDF
Google Devfest Singapore - OpenSocial
PPT
[Phpcamp]Shindig An OpenSocial container
ODP
OpenSocial
PPT
Open social
PDF
Open social & cmis oasistc-20100712
PDF
Open Social Summit Korea Overview
KEY
Opensocial
PPT
OpenSocial Intro
PPTX
Microsoft Graph: Connect to essential data every app needs
PPTX
Microsoft Graph: Connect to essential data every app needs
PDF
Data Visualization: Introduction to Shiny Web Applications
PPT
Open Social - Dark Side of the Moon
Goodle Developer Days Munich 2008 - Open Social Update
Open Social Presentation - GSP West 2008
Goodle Developer Days Madrid 2008 - Open Social Update
Barcamphanoi Opensocial Application Development
GSP East 2008: Open Social: Open For Business
Jaoo - Open Social A Standard For The Social Web
BarCamp KL H20 Open Social Hackathon
Google Opening up to Developers - From 2 to 55 APIs in 3 years
Google Devfest Singapore - OpenSocial
[Phpcamp]Shindig An OpenSocial container
OpenSocial
Open social
Open social & cmis oasistc-20100712
Open Social Summit Korea Overview
Opensocial
OpenSocial Intro
Microsoft Graph: Connect to essential data every app needs
Microsoft Graph: Connect to essential data every app needs
Data Visualization: Introduction to Shiny Web Applications
Open Social - Dark Side of the Moon
Ad

More from Chris Schalk (20)

PDF
Google App Engine Overview and Update
PDF
Building Integrated Applications on Google's Cloud Technologies
PDF
How to build Kick Ass Games in the Cloud
PDF
Building Kick Ass Video Games for the Cloud
PDF
Building Integrated Applications on Google's Cloud Technologies
PDF
GDD 2011 - How to build kick ass video games for the cloud
PDF
Quick Intro to Google Cloud Technologies
PDF
Intro to Google's Cloud Technologies
PDF
Introduction to Google's Cloud Technologies
PDF
Google App Engine's Latest Features
PDF
Building Apps on Google Cloud Technologies
PDF
Google App Engine's Latest Features
PDF
Building Multi-platform Video Games for the Cloud
PDF
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
PDF
Introduction to Google's Cloud Technologies
PDF
Javaedge 2010-cschalk
PDF
Introduction to Google Cloud Platform Technologies
PDF
Google Cloud Technologies Overview
PDF
Introducing App Engine for Business
PDF
Introduction to Google Cloud platform technologies
Google App Engine Overview and Update
Building Integrated Applications on Google's Cloud Technologies
How to build Kick Ass Games in the Cloud
Building Kick Ass Video Games for the Cloud
Building Integrated Applications on Google's Cloud Technologies
GDD 2011 - How to build kick ass video games for the cloud
Quick Intro to Google Cloud Technologies
Intro to Google's Cloud Technologies
Introduction to Google's Cloud Technologies
Google App Engine's Latest Features
Building Apps on Google Cloud Technologies
Google App Engine's Latest Features
Building Multi-platform Video Games for the Cloud
Building Enterprise Applications on Google Cloud Platform Cloud Computing Exp...
Introduction to Google's Cloud Technologies
Javaedge 2010-cschalk
Introduction to Google Cloud Platform Technologies
Google Cloud Technologies Overview
Introducing App Engine for Business
Introduction to Google Cloud platform technologies
Ad

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Modernizing your data center with Dell and AMD
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
A Presentation on Artificial Intelligence
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
KodekX | Application Modernization Development
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Cloud computing and distributed systems.
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
cuic standard and advanced reporting.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPT
Teaching material agriculture food technology
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Modernizing your data center with Dell and AMD
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
NewMind AI Monthly Chronicles - July 2025
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
A Presentation on Artificial Intelligence
Spectral efficient network and resource selection model in 5G networks
KodekX | Application Modernization Development
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Cloud computing and distributed systems.
Chapter 3 Spatial Domain Image Processing.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Network Security Unit 5.pdf for BCA BBA.
“AI and Expert System Decision Support & Business Intelligence Systems”
Per capita expenditure prediction using model stacking based on satellite ima...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
cuic standard and advanced reporting.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Teaching material agriculture food technology

Ajaxworld Opensocial Presentation

  • 1.  
  • 2. Introducing OpenSocial “Building Social Ajax applications with OpenSocial” Chris Schalk Developer Advocate Google
  • 3. Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
  • 4. Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
  • 5. What is OpenSocial? OpenSocial is a set of common APIs for building social applications across the web It is being developed by Google in conjunction with partners from the Web/Social Application development community
  • 6. Why OpenSocial is Important? The Web is better when its social Isn’t the Web social already? 100s of millions of users already have signed up for social networks around the world That’s great, but we believe it can get better
  • 7. The problem of social network development “ .. But what if you want to build an application that will run on multiple social websites?” Problem: Developers have to learn multiple APIs to publish in multiple environments Solution: OpenSocial allows developers to write applications to a common standard API that will run on multiple websites! As each social website opens its environment to developers, it exposes an API
  • 8. OpenSocial solves this problem
  • 10. What can OpenSocial do for the Web? It’s about more , more , more More applications can be built by developers More websites can run these applications More users can use these applications For Web developers this equates to distribution , distribution , distribution!
  • 11. OpenSocial is not Google Social The evolution of OpenSocial… “ It is about working with open standards and open partners in a collaborative fashion to build the best technology”
  • 12. OpenSocial in the US Pictures of hackerthon Partner Hackathon at SixApart in San Francisco Pictures of container meeting Numerous Hackathons held both at Google and at Partners sites On Site Google Hackathons We supplied Power, Wifi, & Pizza!
  • 13. OpenSocial in Japan Pictures of hackerthon 関連ドキュメントの 日本語化を検討中 Pictures of container meeting 世界でも最も Social Site が成功している国の一つ パートナーのオンライン / オフラインの参加をサポート ハッカーソン OpenSocial Container Provider Meeting
  • 14. OpenSocial in India Pictures of hackerthon Hacking in Delhi Pictures of container meeting Did a multi-city tour in Fall 07 - introducing OpenSocial Kicking off Hackathon in Bangalore OpenSocial Container Provider Meeting
  • 15. Who’s working on OpenSocial? Over 200 other influential companies… amiando Animoto Appirio Bebo Bleacher Report BonstioNet Brad Anderson Bunchball, Inc BuyFast Cardinal Blue Software Chakpak Chronus Corporation Ci&T Inc come2play CurrentTV E-junkie Engage.com eTwine Holdings, Inc. Fendoo Ltd Flixster FotoFlexer Friendster Grimmthething Guerreiro Consult HedgeStop.com Hi5 Hungry Machine Hyves IG.com (Division of Brasil Telecom) iFamily, Inc iLike Imeem Indeed.com KlickSports, Inc. LabPixies Ltd. LimitNone LinkedIn LjmSite LoveMyGadgets LuvGoogleGadgets Mesa Dynamics, LLC Mixi MuseStorm Inc MySpace Netvibes NewsGator Nike Ning NY Times Shelfari O Globo Online Oberon Media Oracle Orkut Outside.In PayPal Plaxo PROTRADE Puxa Qloud RockYou Salesforce.com …
  • 16. OpenSocial is not just for friends There is an untapped Enterprise potential Instead of friends just sharing photos, messages business partners can interact via social networks Google is now partnering with many influential business application providers
  • 17. OpenSocial Roadmap Version 0.5 was released in a “developer release” on Nov 1st. First “sandbox” was made available on Orkut Version 0.6 was released in December Initial version of Shindig server software was launched as Apache incubator project Other sandboxes came live - Hi5, Ning, Plaxo … Version 0.7 (production) was released in January MySpace, Hi5, Orkut officially launching “very soon”
  • 18. Gartner Technology Hype curve Case Study: OpenSocial Case Study: OpenSocial
  • 19. OpenSocial Roadmap a la the “Hype curve” Case Study: OpenSocial Case Study: OpenSocial
  • 20. Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
  • 21. OpenSocial APIs overview People and Friends Data API Access friends information programmatically Activities Data API See what you’re friends are up to Share what you are doing Persistence Data API Share data with your friends, the world The core OpenSocial services include:
  • 22. OpenSocial APIs overview Gadgets Core Utilities handling gadget preferences, IO, JSON Gadgets Feature-Specific Utilities for working with flash, window management, tabs, rpc, MiniMessage Additional Gadgets services include:
  • 23. Core Services - People & Friends /** * Request for friend info when the page loads. */ function getData() { var req = opensocial.newDataRequest(); req.add(req.newFetchPersonRequest(VIEWER), 'viewer' ); req.add(req.newFetchPeopleRequest(VIEWER_FRIENDS), 'viewerFriends' ); req.send( onLoadFriends ); }; Getting info on you and your friends :
  • 24. Core Services - People /** * Callback function for returned friend data. */ function onLoadFriends (response) { var viewer = response.get( 'viewer' ).getData(); var html = 'Friends of ' + viewer.getDisplayName() + ‘:<br><ul>’; var viewerFriends = response.get( 'viewerFriends' ).getData(); viewerFriends.each(function(person) { html += '<li>' + person.getDisplayName() + '</li>';}); html += '</ul>'; document.getElementById('message').innerHTML = html; }; Getting info on you and your friends : Generated output:
  • 25. Core Services - Activities /** * Posting a simple text activity */ function postActivity(text) { var params = {}; params[opensocial.Activity.Field.TITLE] = text; var activity = opensocial.newActivity(params); opensocial.requestCreateActivity(activity, opensocial.CreateActivityPriority.HIGH, callback ); } postActivity(&quot;This is a sample activity, created at &quot; + new Date().toString()); Posting an Activity : Activities in Orkut:
  • 26. Core Services - Persistence /** * Storing data */ function populateMyAppData() { var req = opensocial.newDataRequest(); var data1 = Math.random() * 5; var data2 = Math.random() * 100; req.add(req.newUpdatePersonAppDataRequest(&quot;VIEWER&quot;, &quot;AppField1&quot;, data1)); req.add(req.newUpdatePersonAppDataRequest(&quot;VIEWER&quot;, &quot;AppField2&quot;, data2)); req.send(requestMyData); }; Requesting to persist data:
  • 27. Core Services - Persistence /** * Fetching data */ function requestMyData() { var req = opensocial.newDataRequest(); var fields = [&quot;AppField1&quot;, &quot;AppField2&quot;]; req.add(req.newFetchPersonRequest( opensocial.DataRequest.PersonId.VIEWER), &quot;viewer&quot;); req.add(req.newFetchPersonAppDataRequest(&quot;VIEWER&quot;, fields), &quot;viewer_data&quot;); req.send(handleReturnedData); } Requesting to persist data:
  • 28. Core Services - Persistence /** * Displaying persisted data */ function handleReturnedData(data) { var mydata = data.get(&quot;viewer_data&quot;); var viewer = data.get(&quot;viewer&quot;); me = viewer.getData(); // me is global var var data = mydata[me.getId()]; htmlout += &quot;AppField1: &quot; + data[&quot;AppField1&quot;] + &quot;<br/>&quot;; htmlout += &quot;AppField2: &quot; + data[&quot;AppField2&quot;] + &quot;<br/>&quot;; var div = document.getElementById('content_div'); div.innerHTML = htmlout; } Displaying the fetched ( persisted ) data: Generated output:
  • 29. Demonstration Building some simple OpenSocial apps in Orkut Displaying your friends Reviewing other OpenSocial applications
  • 30. Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
  • 31. OpenSocial’s Container - Shindig What is Shindig? “ OpenSource software that allows you to serve OpenSocial applications” Is currently an Apache Software Incubator project Heavy partner involvement: Ning championed Open source reference implementation of OpenSocial & Gadgets technologies It’s Goal: “ To serve as an easy to use OpenSocial “container in a box”
  • 32. Shindig Components Shindig Gadget Server Gadget Container JavaScript OpenSocial Container JavaScript Gadget Rendering Servlet Gadget Server Renders gadget XML (i.e. from gmodules.com) Gadget Container JavaScript OpenSocial Container JavaScript JavaScript environment for people, activities, persistence OpenSocial Gateway Server WIP!
  • 33. Shindig in Action Running the application Request is made from Client Data is returned and rendered Application Installation Gadget XML is loaded and cached on OpenSocial Container Gadget XML Source
  • 34. Demonstration Checking out the Shindig website Running and Debugging Shindig from Eclipse Trying out the SampleContainer
  • 35. Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
  • 36. OpenSocial’s REST APIs Why are REST APIs needed? “ What if you don’t have a JavaScript environment?” Progress is now being made on the specification for OpenSocial REST APIs! A new proposal is been published Posted in “ opensocial-and-gadgets-spec ” Google Group Currently receiving feedback
  • 37. With REST APIs OpenSocial can go Mobile! The OpenSocial Mobile environment potential is obviously huge Since OpenSocial based on common Web standards programming is straightforward HTML/JavaScript Flash/Flash Lite REST APIs (Upcoming)
  • 38. With REST APIs OpenSocial can go Mobile!
  • 39. Agenda What is OpenSocial and Why is it important? A Technical Overview of OpenSocial JavaScript APIs Container Software - Shindig REST APIs Where to find more information on OpenSocial
  • 40. Where to find more info on OpenSocial OpenSocial APIs code.google.com/opensocial code.google.com/p/opensocial-resources Shindig incubator.apache.org/shindig (Me) [email_address]