SlideShare a Scribd company logo
1 of 138
Download to read offline
OpenSocial ecosystem
updates
Patrick Chanezon
Chris Chabot
Chewy Trewhella

9/16/2008
Agenda

  OpenSocial introduction
  How to build OpenSocial applications
  Hosting social applications
  Social applications monetization
  OpenSocial container demos
  Becoming an OpenSocial container
  Kinds of Containers
  Google Friend Connect
  Summary
OpenSocial Introduction
Patrick Chanezon
Making the web better
 by making it social

What does social mean?
What does Social mean?




      Eliette what do you do with your friends?
This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
Raoul: a social object for Charlotte (3 year old)
Jaiku’s Jyri Engeström's 5 rules for social
 networks: social objects
1. What is your object?
2. What are your verbs?
3. How can people share the objects?
4. What is the gift in the invitation?
5. Are you charging the publishers or the spectators?
http://tinyurl.com/yus8gw
How do we socialize objects
           online
without having to create yet
  another social network?
OpenSocial

A common API for social applications
     across multiple web sites
The Trouble with Developing Social Apps




                                 Which site do I build my app for?
Let’s work on that…




                      Using OpenSocial, I can build apps for
                      all of these sites!
What’s offered by OpenSocial?


  Activities
     What are people up to on the web


  People/Profile Info
     Who do I know, etc.


  Persistent datastore
     Handles key/value pairs
Today: 375 Million User Reach
Where is OpenSocial live today?


Live to Users:              Live Developer Sandboxes:
    MySpace                     iGoogle
    orkut                       imeem
    Hi5                         CityIN
    Freebar                     Tianya
    Friendster                  Ning
    Webon from Lycos            Plaxo Pulse
    IDtail                      Mail.ru
    YiQi
    Netlog - New!
    Hyves - New!

Individual Developer Links:
http://code.google.com/apis/opensocial/gettingstared.html
OpenSocial “Containers”
What’s in OpenSocial?


  JavaScript API - Now

  REST Protocol - New

  Templates - Prototype in Shindig
OpenSocial’s JavaScript API


  OpenSocial JS API
  Gadget JS API
  Gadget XML schema

  OpenSocial v0.7 is live
  OpenSocial v0.8 is being deployed now

  Specs and release notes: http://opensocial.org
OpenSocial’s REST Protocol


  Access social data without JavaScript
  Works on 3rd party websites / phones / etc
  Uses OAuth to allow secure access
  Open source client libraries in development
     Java, PHP, Python, <your fav language here>


  Being deployed with OpenSocial v0.8

  Spec’s available at http://opensocial.org
OpenSocial Templates


  Writing JavaScript is hard
  Writing templates is easy
  Templates also give
     Consistent UI across containers
     Easy way to localize
     More interesting content options when inlining
     into container (activities, profile views)
     Ability to serve millions of dynamic pages per
     day without a server
Try out templates today!


  Samples and docs:
  http://ostemplates-demo.appspot.com
  Sample app:
  http://ostemplates-demo.appspot.com/friends.html
  Discussion group:
  http://tech.groups.yahoo.com/group/os-templates/
  Code is all in Shindig, can download, use, and even
  submit patches to improve
  So…
     Get involved and provide comments, and
     Build some apps
OpenSocial is what you make it.


  OpenSocial is an open source project.
  The spec is controlled by the community.
  Anyone can contribute and have a voice.
  http://groups.google.com/group/opensocial/
     “OpenSocial and Gadgets spec” subgroup


  OpenSocial Foundation
     Get involved to nominate and elect board reps
     http://www.opensocial.org/opensocial-
     foundation/
A note on compliance


  OpenSocial is designed for many sites

  Building an app:
     Technology
     Policy


  OpenSocial Compliance Tests
     http://code.google.com/p/opensocial-
     resources/wiki/ComplianceTests
OpenSocial Compliance test in orkut
OpenSocial Compliance Matrix
     http://opensocial-compliance.appspot.com
Other comments


  Portable Contacts Alignment

  Caja for JavaScript security
A standard for everyone




   This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
How To Build OpenSocial
Applications
People & Friends Example
 Requesting friend Info
function getFriendData() {
  var req = opensocial.newDataRequest();
  req.add(
      req.newFetchPersonRequest(VIEWER), 'viewer');
  req.add(
      req.newFetchPeopleRequest(VIEWER_FRIENDS),
      'viewerFriends');
  req.send(onLoadFriends);
}
People & Friends Example
Callback function for returned friend data

function onLoadFriends(resp) {
 var viewer = resp.get('viewer').getData();
 var viewerFriends = resp.get('viewerFriends').getData();
 var html = 'Friends of ' +
     viewer.getDisplayName() + ‘:<br><ul>’;

 viewerFriends.each(function(person) {
   html += '<li>' + person.getDisplayName()+'</li>';});
   html += '</ul>';
   document.getElementById('friends').innerHTML += html;
}
Activities Example
Posting an 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());
Persistence Example
Persisting data
function populateMyAppData() {
  var req = opensocial.newDataRequest();
  var data1 = Math.random() * 5;
  var data2 = Math.random() * 100;
  req.add(
      req.newUpdatePersonAppDataRequest(quot;VIEWERquot;,
           quot;AppField1quot;,
           data1));
  req.add(
      req.newUpdatePersonAppDataRequest(quot;VIEWERquot;,
           quot;AppField2quot;,
           data2));
  req.send(requestMyData);
}
Persistence Example
Fetching persisted data

function requestMyData() {
  var req = opensocial.newDataRequest();
  var fields = [quot;AppField1quot;, quot;AppField2quot;];

    req.add(req.newFetchPersonRequest(
      opensocial.DataRequest.PersonId.VIEWER), quot;viewerquot;);
    req.add(req.newFetchPersonAppDataRequest(quot;VIEWERquot;,
      fields), quot;viewer_dataquot;);
    req.send(handleReturnedData);
}
Persistence Example
Displaying fetched (persisted) data

function handleReturnedData(data) {
   var mydata = data.get(quot;viewer_dataquot;);
   var viewer = data.get(quot;viewerquot;);
   me = viewer.getData(); // me is global var
   var data = mydata[me.getId()];

    htmlout += quot;AppField1: quot; + data[quot;AppField1quot;] + quot;<br/>quot;;
    htmlout += quot;AppField2: quot; + data[quot;AppField2quot;] + quot;<br/>quot;;
    var div = document.getElementById('content_div');
    div.innerHTML = htmlout;
}
Resources For Application Developers
Specification
http://opensocial.org/
http://groups.google.com/group/opensocial-and-gadgets-spec

Code Samples and Tools
http://code.google.com/opensocial
http://code.google.com/p/opensocial-resources/

Sandboxes
http://developer.myspace.com/
http://www.hi5networks.com/developer/
http://opensocial.ning.com/
http://code.google.com/apis/orkut/
http://code.google.com/apis/igoogle/
http://en.netlog.com/go/developer/opensocial
Hosting social apps
Patrick Chanezon
Hosting OpenSocial apps
 In addition to using the provided persistence API...
 Establish a quot;homequot; site where gadget can phone
 home to retrieve, post data

 Can host home site on your own, or use services:
   Amazon EC2
   Joyent
   Google AppEngine

 Zembly: is the world's first cloud-based
 development environment for social apps. Full
 OpenSocial support
Google AppEngine and OpenSocial
 Create an App Engine app as your backend!
     Use makeRequest() to call back to your AppEngine
     server
     Utilize AppEngine's datastore
 New OpenSocial Apps are coming online
     BuddyPoke,
 Checkout Lane Liabraaten’s OpenSocial-AppEngine
 integration article
    http://code.google.com/apis/opensocial/articles/appengine.html

 Google IO Code Lab about OpenSocial Apps in the Cloud
Social Apps monetization
Patrick Chanezon
OpenSocial Monetization
  Ads from Ad Networks
     AdSense, RightMedia
     BuddyPoke, Rate My Friend
  Brand/Private Label App
     Sony Ericsson MTV Roadies app on orkut
  Sell virtual or real goods
  Free -> Freemium
  Referrals
  Virtual currency
Success Story: Buddy Poke




   #1 OpenSocial app on orkut
   8M installs for orkut, hi5, MySpace
   $1-2 CPM
   #1 App for App Engine w/ millions daily PV
Success Story: PhotoBuzz




 6M+ installs on hi5 and orkut
 CPM $1-3, especially good on orkut
 4M buzzes per day
 Small team of 4 people, profitable
Container demos
Hyves
Reinoud Elhorst
What is Hyves?

4 years old

6 million+ Dutch members

5 billion pageviews/month

51.6% reach/month 13+, 75.6% 13-34
Social networking service
OpenSocial on Hyves

 Launching OpenSocial today

 OS 0.7, working on 0.8 release

 (traditional) API intergration

 Gadget gallery waiting for good
 apps to be featured

 Contact irene@hyves.nl
Gadget gallery
Profile view
Homepage view
Canvas view
Thanks for your
    attention
Reinoud, Derk, Youri, Marijn, Frank
& Yme are here today if you have
any questions


Contact irene@hyves.nl for
inclusion in the Gadget Gallery

http://trac.hyves-api.nl/hyves-
api/wiki/opensocial
Netlog
Pieter De Schepper
Toon Coppens
Folke Lemaitre
What is Netlog?
Your Profile
Friend Activity
Communication: Shouts
Communication: Private messaging
Communication: Chat
Homepage
Explore
How are we doing?

More than 35,000,000 unique members
More than 6,000,000,000 pageviews/Month
23 languages and alot more coming!

                                              Nederland           Svensk
  slovenščin                                     s                  a
       a                   Deutsch
                                                                           Magya
 Русски           Englis                       Italiano    česky
                                                                             r
   й                h            françai
               Dansk                s                     suomi
Polski                                                                Hrvatski
                               Türkçe
                                              Afrikaan
               Slovenčin                          s        中文
    Eesti          a                                                   Català
                                     Españo
                    Portuguê            l            Latviešu
Română                  s
                                                      valoda       българск
               Lietuvių        Norsk (bokmål)                         и
                kalba
Applications
Canvas view
Profile view
Home View (available soon!)
Application directory
User Profiles
Activity logs
Share with your friends
Requirements
Whitelisting Requirements



  an application should be fully integrated
     no external login should be needed...
     no external links
  no ads in “profile” view
  no spamming through activities/requests
  localised & translated
     We can help you!
Localization
Seemless translation
Localisation is important!

   Translations are automatically injected


   Translation tool for Netlog translators
Monetization
What’s in it for you?



   Branding, co-branding, sponsorships

   100% revenue from vertical rectangle or
   skyscraper on your application page

   Credit economy with Netlog OpenSocial
   extension
      charge credits for app installation
      charge credits for certain features
      charge credits for buying items
      charge credits for...
Credit Economy
Questions?

  Developer pages:
     http://en.netlog.com/go/developer/
  OpenSocial sandbox:
     http://en.netlog.com/go/developer/opensocial/sandbox=1
Viadeo
Ariel Messias
Becoming an OpenSocial Container
Chris Chabot
Google Dev Day
                      OpenSocial

Social Network
Business Tool          London
Career Management
                       08/09/16




                        © viadeo – septembre 2008
Agenda




A few words about Viadeo

What to offer to Viadeo’s members

(Sandbox presentation)
Viadeo

  3 groups of Use :
     Social Network,
     Business Tool
     Career Management

  5 +m Members mainly :
     Europe
     China

  Strong activity
     7, 000 new members/day
     10, 000 connections/day
     +120, 000 consulted profiles/day
     1,3 M hubs registration
International Footprint : 5+m Members

                France

                         1.8m members(1)
                                                                                              Other European countries
                                                                                                     150K members
                                                                                                     (1)




                                                            Belgium

                                                                   100k members(1)
UK/Ireland

      150 k members(1)                                                                     China

                                                     Switzerland                                   2.2m members(1)
                                                           50K members(1)




             Spain/Portugal                Italy

                   350k members(1)                 300k members
                                                   (1)                        (1)   end of August 2008
What to offer to Viadeo’s Members



  7 languages (European + China)

  Professional oriented

  Mainly “A Level” profiles

  Split by Industry

  Members with High Revenues => Strong capabilities of
  monetization
Vertical Apps ?

                  Members split by industry
“A Level” priority targets ?


             High qualification of Viadeo’s members
Apps for Professional Social Network…


Helping to :

   Find Customers / Partners / Suppliers

   Organize Meetings/Events

   Share information and expertise

But also ...

   Get headhunted…

   …and recruit

   Etc…
Sandbox Presentation




            opensocial@viadeo.com
Becoming an OpenSocial Container


 Question:
   How do you become an OpenSocial container?

 Answer:
    The Apache incubator project “Shindig” serves this
    purpose!
What is Shindig ?

   Open source reference implementation of OpenSocial &
   Gadgets specification
   An Apache Software Incubator project
   Available in Java & PHP
   http://incubator.apache.org/shindig


 It’s Goal:
 “Shindig's goal is to allow new sites to start hosting social apps
in under an hour's worth of workquot;
Introduction to Shindig Architecture
  Gadget Server
  Social Data Server
  Gadget Container JavaScript
Gadget Server
Social Server
Social Server - RESTful API
 Preview available on
     iGoogle
     Orkut
     Hi5
 New development models
     Server to server & Mobile!
 Try it out:
 curl http://localhost:8080/social/rest/people/john.doe/@all
Implementing Shindig - Data sources
   Integrate with your own data sources
       People Service
       Activities Service
       App Data Service

class MyPeopleService implements PeopleService {
...
}

class MyAppDataService implements AppDataService {
...
}

class MyActivitiesService implements ActivitiesService {
...
}
Implementing Shindig - Data sources
   Implement functions

function getActivities($ids)
{
  $activities = array();
  $res = mysqli_query($this->db, ”SELECT…quot;);
  while ($row = @mysqli_fetch_array($res, MYSQLI_ASSOC)) {
     $activity = new Activity($row['activityId'],
              $row['personId']);
     $activity->setStreamTitle($row['activityStream']);
     $activity->setTitle($row['activityTitle']);
     $activity->setBody($row['activityBody']);
     $activity->setPostedTime($row['created']);
     $activities[] = $activity;
     }
  return $activities;
}
Implementing - Make it a platform
 Add UI Elements
    App Gallery
    App Canvas
    App Invites
    Notification Browser
 Developer Resources
    Developer Console
    Application Gallery
 Scale it Out!
Implementing - Scale it Out!
 Prevent Concurrency issues
 Reduce Latency
 Add Caching
 Add more caching!
 Pre-populate Cache
Usage Example: Sample Container
 Static html sample container
 No effort to get up and running
 No database or features
Usage Example: Partuza
 Partuza is a Example social network site, written in PHP
 Allows for local gadget development & testing too
 Use as inspiration (or copy) for creating your own social site
 http://code.google.com/p/partuza
OpenSocial for intranet, portals
Sun Microsystems
   Socialsite: Shindig + gadget based UI written in Java
   Open Source https://socialsite.dev.java.net/




Upcoming from Impetus
  Zest: Shindig + Drupal (PHP)
  Zeal: Shindig + Liferay (Java)
Summary
 Become an OpenSocial Container
    Get Shindig (PHP or Java)
    Look at examples & documentation
    Implement Services
    Add UI
    Scale it out

 Resources & Links:
   http://www.chabotc.com/gdd/
Kinds of Containers
Kevin Marks
Not just Social Network Sites

   Social network sites - Profiles and home pages
   Personal dashboards
   Sites based around a Social Object
   Corporate CRM systems
   Any web site

How do we abstract these out?

   Viewer + friends
   Owner + friends
The Viewer and Viewer friends
Owner and Owner friends
Owner and Viewer
        are defined by Container
The Application gets IDs and connections to other IDs
the Owner need not be a Person
       It could be an organisation
             or a social object
Kinds of container - Social network
sites
   Profile pages
       Owner is profile page owner
       Viewer may not be known, may be owner or other
       member
   Home pages
       Owner is Viewer (must be logged in to see)
Examples
   MySpace
   Hi5
   Orkut
Kinds of container - Personal
dashboard
   like Home pages
       Owner is Viewer (must be logged in to see)
   Friends may not be defined
Example:
   iGoogle, My Yahoo
Kinds of container - Social Object site

   Pages reflect the object - movie, picture, product
       Owner is the object
       Owner friends are people connected to the object
          may be authors or fans
       Viewer is looking at it, Viewer friends are people you
       may want to share with
Example:
   Imeem is a bit like this
    - opportunity for sites like Flickr, YouTube
Kinds of container - CRM systems

   Pages reflect the customer
      Owner is the customer
      Owner friends are people connected to the customer
         may be your colleagues, or other customers
      Viewer is you, Viewer friends are your colleagues or
      customers
Example:
   Oracle CRM, Salesforce
Kinds of container - Any web site

   Owner is the site

      Owner friends are site users
   Viewer is you,
      Viewer friends are your friends who have visited this site
Example:
   Google Friend Connect will enable this for any site
What is Friend Connect?
Allows any site to become an OpenSocial container by simply
        copying a few snippets of code into your site




      http://www.google.com/friendconnect/
Friend Connect gives ...

  Users
    ... more ways to do more things with my friends

  Site owners
     ... more (and more engaged) traffic for my site

  App developers
    ... more reach for my apps

              and ... make it easy
Learn more
code.google.com
Q&A
Goodle Developer Days London 2008 - Open Social Update

More Related Content

What's hot

Top 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and SitesTop 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and SitesJonathan LeBlanc
 
Creating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from TwitterCreating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from TwitterChris Aniszczyk
 
Web accessibility - WAI-ARIA a small introduction
Web accessibility - WAI-ARIA a small introductionWeb accessibility - WAI-ARIA a small introduction
Web accessibility - WAI-ARIA a small introductionGeoffroy Baylaender
 
Open Design Definition @ Fab* @ Future Everything
Open Design Definition @ Fab* @ Future EverythingOpen Design Definition @ Fab* @ Future Everything
Open Design Definition @ Fab* @ Future EverythingMassimo Menichinelli
 
BarCamb Connotea by Ian Mulvany
BarCamb Connotea by Ian MulvanyBarCamb Connotea by Ian Mulvany
BarCamb Connotea by Ian MulvanyIan Mulvany
 
Open Source Craft at Twitter
Open Source Craft at TwitterOpen Source Craft at Twitter
Open Source Craft at TwitterChris Aniszczyk
 
Introduction To Open Web Protocols
Introduction To Open Web ProtocolsIntroduction To Open Web Protocols
Introduction To Open Web ProtocolsMohan Krishnan
 
Google Wave API: Now and Beyond
Google Wave API: Now and BeyondGoogle Wave API: Now and Beyond
Google Wave API: Now and BeyondMarakana Inc.
 
The emergence of Open Design @ Maker Faire Rome 2013
The emergence of Open Design @ Maker Faire Rome 2013The emergence of Open Design @ Maker Faire Rome 2013
The emergence of Open Design @ Maker Faire Rome 2013Massimo Menichinelli
 
Exposing the Web’s Biggest (Free) Billboard
Exposing the Web’s Biggest (Free) BillboardExposing the Web’s Biggest (Free) Billboard
Exposing the Web’s Biggest (Free) BillboardMicah Laaker
 
Designing for Developers
Designing for DevelopersDesigning for Developers
Designing for DevelopersMicah Laaker
 
Building Social Networks
Building Social NetworksBuilding Social Networks
Building Social Networksnyccamp
 
Building AJAX Applications Using Yahoo! Web Services
Building AJAX Applications Using Yahoo! Web ServicesBuilding AJAX Applications Using Yahoo! Web Services
Building AJAX Applications Using Yahoo! Web Servicesgoodfriday
 

What's hot (16)

Top 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and SitesTop 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and Sites
 
Creating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from TwitterCreating an Open Source Office: Lessons from Twitter
Creating an Open Source Office: Lessons from Twitter
 
Web accessibility - WAI-ARIA a small introduction
Web accessibility - WAI-ARIA a small introductionWeb accessibility - WAI-ARIA a small introduction
Web accessibility - WAI-ARIA a small introduction
 
Open Design Definition @ Fab* @ Future Everything
Open Design Definition @ Fab* @ Future EverythingOpen Design Definition @ Fab* @ Future Everything
Open Design Definition @ Fab* @ Future Everything
 
BarCamb Connotea by Ian Mulvany
BarCamb Connotea by Ian MulvanyBarCamb Connotea by Ian Mulvany
BarCamb Connotea by Ian Mulvany
 
Open Source Craft at Twitter
Open Source Craft at TwitterOpen Source Craft at Twitter
Open Source Craft at Twitter
 
Hacking For Innovation
Hacking For InnovationHacking For Innovation
Hacking For Innovation
 
Introduction To Open Web Protocols
Introduction To Open Web ProtocolsIntroduction To Open Web Protocols
Introduction To Open Web Protocols
 
Google Wave API: Now and Beyond
Google Wave API: Now and BeyondGoogle Wave API: Now and Beyond
Google Wave API: Now and Beyond
 
The emergence of Open Design @ Maker Faire Rome 2013
The emergence of Open Design @ Maker Faire Rome 2013The emergence of Open Design @ Maker Faire Rome 2013
The emergence of Open Design @ Maker Faire Rome 2013
 
Exposing the Web’s Biggest (Free) Billboard
Exposing the Web’s Biggest (Free) BillboardExposing the Web’s Biggest (Free) Billboard
Exposing the Web’s Biggest (Free) Billboard
 
Designing for Developers
Designing for DevelopersDesigning for Developers
Designing for Developers
 
Open Source and the Girl Geek (English)
Open Source and the Girl Geek (English)Open Source and the Girl Geek (English)
Open Source and the Girl Geek (English)
 
Building Social Networks
Building Social NetworksBuilding Social Networks
Building Social Networks
 
Building AJAX Applications Using Yahoo! Web Services
Building AJAX Applications Using Yahoo! Web ServicesBuilding AJAX Applications Using Yahoo! Web Services
Building AJAX Applications Using Yahoo! Web Services
 
Google Wave
Google WaveGoogle Wave
Google Wave
 

Similar to Goodle Developer Days London 2008 - Open Social Update

Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Ari Leichtberg
 
Futuropolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social webFuturopolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social webPatrick Chanezon
 
Barcamphanoi Opensocial Application Development
Barcamphanoi Opensocial Application DevelopmentBarcamphanoi Opensocial Application Development
Barcamphanoi Opensocial Application DevelopmentHoat Le
 
Jaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social WebJaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social WebPatrick Chanezon
 
BarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social HackathonBarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social Hackathonmarvin337
 
Getting Social with OpenSocial
Getting Social with OpenSocialGetting Social with OpenSocial
Getting Social with OpenSocialTimothy Fisher
 
Open Social - Dark Side of the Moon
Open Social - Dark Side of the MoonOpen Social - Dark Side of the Moon
Open Social - Dark Side of the Moonvineet
 
Open social & cmis oasistc-20100712
Open social & cmis   oasistc-20100712Open social & cmis   oasistc-20100712
Open social & cmis oasistc-20100712weitzelm
 
Developing for LinkedIn's Application Platform
Developing for LinkedIn's Application PlatformDeveloping for LinkedIn's Application Platform
Developing for LinkedIn's Application PlatformTaylor Singletary
 
RockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer ForumRockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer Forumthemix
 
[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial container[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial containerBipin Upadhyay
 
OpenSocial Intro
OpenSocial IntroOpenSocial Intro
OpenSocial IntroPamela Fox
 

Similar to Goodle Developer Days London 2008 - Open Social Update (20)

Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08
 
Futuropolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social webFuturopolis 2058 Singapore - OpenSocial, a standard for the social web
Futuropolis 2058 Singapore - OpenSocial, a standard for the social web
 
Barcamphanoi Opensocial Application Development
Barcamphanoi Opensocial Application DevelopmentBarcamphanoi Opensocial Application Development
Barcamphanoi Opensocial Application Development
 
Jaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social WebJaoo - Open Social A Standard For The Social Web
Jaoo - Open Social A Standard For The Social Web
 
BarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social HackathonBarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social Hackathon
 
Getting Social with OpenSocial
Getting Social with OpenSocialGetting Social with OpenSocial
Getting Social with OpenSocial
 
Social Media Marketing Open Social App Standards
Social Media Marketing Open Social App StandardsSocial Media Marketing Open Social App Standards
Social Media Marketing Open Social App Standards
 
OpenSocial
OpenSocialOpenSocial
OpenSocial
 
Open social
Open socialOpen social
Open social
 
Opensocial
OpensocialOpensocial
Opensocial
 
Open Social - Dark Side of the Moon
Open Social - Dark Side of the MoonOpen Social - Dark Side of the Moon
Open Social - Dark Side of the Moon
 
State Of Opensocial
State Of OpensocialState Of Opensocial
State Of Opensocial
 
Open Social
Open SocialOpen Social
Open Social
 
Open social & cmis oasistc-20100712
Open social & cmis   oasistc-20100712Open social & cmis   oasistc-20100712
Open social & cmis oasistc-20100712
 
Hi5 Open Social
Hi5   Open SocialHi5   Open Social
Hi5 Open Social
 
Walter api
Walter apiWalter api
Walter api
 
Developing for LinkedIn's Application Platform
Developing for LinkedIn's Application PlatformDeveloping for LinkedIn's Application Platform
Developing for LinkedIn's Application Platform
 
RockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer ForumRockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer Forum
 
[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial container[Phpcamp]Shindig An OpenSocial container
[Phpcamp]Shindig An OpenSocial container
 
OpenSocial Intro
OpenSocial IntroOpenSocial Intro
OpenSocial Intro
 

More from Patrick Chanezon

KubeCon 2019 - Scaling your cluster (both ways)
KubeCon 2019 - Scaling your cluster (both ways)KubeCon 2019 - Scaling your cluster (both ways)
KubeCon 2019 - Scaling your cluster (both ways)Patrick Chanezon
 
KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...
KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...
KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...Patrick Chanezon
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesPatrick Chanezon
 
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesGIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesPatrick Chanezon
 
Docker Enterprise Workshop - Intro
Docker Enterprise Workshop - IntroDocker Enterprise Workshop - Intro
Docker Enterprise Workshop - IntroPatrick Chanezon
 
Docker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalDocker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalPatrick Chanezon
 
The Tao of Docker - ITES 2018
The Tao of Docker - ITES 2018The Tao of Docker - ITES 2018
The Tao of Docker - ITES 2018Patrick Chanezon
 
Microsoft Techsummit Zurich Docker and Microsoft
Microsoft Techsummit Zurich Docker and MicrosoftMicrosoft Techsummit Zurich Docker and Microsoft
Microsoft Techsummit Zurich Docker and MicrosoftPatrick Chanezon
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018Patrick Chanezon
 
Docker Meetup Feb 2018 Develop and deploy Kubernetes Apps with Docker
Docker Meetup Feb 2018 Develop and deploy Kubernetes Apps with DockerDocker Meetup Feb 2018 Develop and deploy Kubernetes Apps with Docker
Docker Meetup Feb 2018 Develop and deploy Kubernetes Apps with DockerPatrick Chanezon
 
The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017Patrick Chanezon
 
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...Patrick Chanezon
 
Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Patrick Chanezon
 
Moby Introduction - June 2017
Moby Introduction - June 2017Moby Introduction - June 2017
Moby Introduction - June 2017Patrick Chanezon
 
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logicielsDocker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logicielsPatrick Chanezon
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapPatrick Chanezon
 
Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectPatrick Chanezon
 

More from Patrick Chanezon (20)

KubeCon 2019 - Scaling your cluster (both ways)
KubeCon 2019 - Scaling your cluster (both ways)KubeCon 2019 - Scaling your cluster (both ways)
KubeCon 2019 - Scaling your cluster (both ways)
 
KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...
KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...
KubeCon China 2019 - Building Apps with Containers, Functions and Managed Ser...
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
 
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesGIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
 
Docker Enterprise Workshop - Intro
Docker Enterprise Workshop - IntroDocker Enterprise Workshop - Intro
Docker Enterprise Workshop - Intro
 
Docker Enterprise Workshop - Technical
Docker Enterprise Workshop - TechnicalDocker Enterprise Workshop - Technical
Docker Enterprise Workshop - Technical
 
The Tao of Docker - ITES 2018
The Tao of Docker - ITES 2018The Tao of Docker - ITES 2018
The Tao of Docker - ITES 2018
 
Moby KubeCon 2017
Moby KubeCon 2017Moby KubeCon 2017
Moby KubeCon 2017
 
Microsoft Techsummit Zurich Docker and Microsoft
Microsoft Techsummit Zurich Docker and MicrosoftMicrosoft Techsummit Zurich Docker and Microsoft
Microsoft Techsummit Zurich Docker and Microsoft
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
 
Docker Meetup Feb 2018 Develop and deploy Kubernetes Apps with Docker
Docker Meetup Feb 2018 Develop and deploy Kubernetes Apps with DockerDocker Meetup Feb 2018 Develop and deploy Kubernetes Apps with Docker
Docker Meetup Feb 2018 Develop and deploy Kubernetes Apps with Docker
 
DockerCon EU 2017 Recap
DockerCon EU 2017 RecapDockerCon EU 2017 Recap
DockerCon EU 2017 Recap
 
Docker Innovation Culture
Docker Innovation CultureDocker Innovation Culture
Docker Innovation Culture
 
The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017The Tao of Docker - Devfest Nantes 2017
The Tao of Docker - Devfest Nantes 2017
 
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
 
Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017
 
Moby Introduction - June 2017
Moby Introduction - June 2017Moby Introduction - June 2017
Moby Introduction - June 2017
 
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logicielsDocker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
Docker Cap Gemini CloudXperience 2017 - la revolution des conteneurs logiciels
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 Recap
 
Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby project
 

Recently uploaded

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 

Recently uploaded (20)

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 

Goodle Developer Days London 2008 - Open Social Update

  • 1.
  • 2. OpenSocial ecosystem updates Patrick Chanezon Chris Chabot Chewy Trewhella 9/16/2008
  • 3. Agenda OpenSocial introduction How to build OpenSocial applications Hosting social applications Social applications monetization OpenSocial container demos Becoming an OpenSocial container Kinds of Containers Google Friend Connect Summary
  • 5. Making the web better by making it social What does social mean?
  • 6. What does Social mean? Eliette what do you do with your friends?
  • 7. This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 8. This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 9. This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 10. This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 11. This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 12. This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 13. Raoul: a social object for Charlotte (3 year old)
  • 14.
  • 15. Jaiku’s Jyri Engeström's 5 rules for social networks: social objects 1. What is your object? 2. What are your verbs? 3. How can people share the objects? 4. What is the gift in the invitation? 5. Are you charging the publishers or the spectators? http://tinyurl.com/yus8gw
  • 16. How do we socialize objects online without having to create yet another social network?
  • 17. OpenSocial A common API for social applications across multiple web sites
  • 18. The Trouble with Developing Social Apps Which site do I build my app for?
  • 19. Let’s work on that… Using OpenSocial, I can build apps for all of these sites!
  • 20. What’s offered by OpenSocial? Activities What are people up to on the web People/Profile Info Who do I know, etc. Persistent datastore Handles key/value pairs
  • 21. Today: 375 Million User Reach
  • 22. Where is OpenSocial live today? Live to Users: Live Developer Sandboxes: MySpace iGoogle orkut imeem Hi5 CityIN Freebar Tianya Friendster Ning Webon from Lycos Plaxo Pulse IDtail Mail.ru YiQi Netlog - New! Hyves - New! Individual Developer Links: http://code.google.com/apis/opensocial/gettingstared.html
  • 24. What’s in OpenSocial? JavaScript API - Now REST Protocol - New Templates - Prototype in Shindig
  • 25. OpenSocial’s JavaScript API OpenSocial JS API Gadget JS API Gadget XML schema OpenSocial v0.7 is live OpenSocial v0.8 is being deployed now Specs and release notes: http://opensocial.org
  • 26. OpenSocial’s REST Protocol Access social data without JavaScript Works on 3rd party websites / phones / etc Uses OAuth to allow secure access Open source client libraries in development Java, PHP, Python, <your fav language here> Being deployed with OpenSocial v0.8 Spec’s available at http://opensocial.org
  • 27. OpenSocial Templates Writing JavaScript is hard Writing templates is easy Templates also give Consistent UI across containers Easy way to localize More interesting content options when inlining into container (activities, profile views) Ability to serve millions of dynamic pages per day without a server
  • 28. Try out templates today! Samples and docs: http://ostemplates-demo.appspot.com Sample app: http://ostemplates-demo.appspot.com/friends.html Discussion group: http://tech.groups.yahoo.com/group/os-templates/ Code is all in Shindig, can download, use, and even submit patches to improve So… Get involved and provide comments, and Build some apps
  • 29. OpenSocial is what you make it. OpenSocial is an open source project. The spec is controlled by the community. Anyone can contribute and have a voice. http://groups.google.com/group/opensocial/ “OpenSocial and Gadgets spec” subgroup OpenSocial Foundation Get involved to nominate and elect board reps http://www.opensocial.org/opensocial- foundation/
  • 30. A note on compliance OpenSocial is designed for many sites Building an app: Technology Policy OpenSocial Compliance Tests http://code.google.com/p/opensocial- resources/wiki/ComplianceTests
  • 32. OpenSocial Compliance Matrix http://opensocial-compliance.appspot.com
  • 33. Other comments Portable Contacts Alignment Caja for JavaScript security
  • 34. A standard for everyone This work by Eliette Chanezon is licensed under a Creative Commons Attribution-Share Alike 3.0 License
  • 35. How To Build OpenSocial Applications
  • 36. People & Friends Example Requesting friend Info function getFriendData() { var req = opensocial.newDataRequest(); req.add( req.newFetchPersonRequest(VIEWER), 'viewer'); req.add( req.newFetchPeopleRequest(VIEWER_FRIENDS), 'viewerFriends'); req.send(onLoadFriends); }
  • 37. People & Friends Example Callback function for returned friend data function onLoadFriends(resp) { var viewer = resp.get('viewer').getData(); var viewerFriends = resp.get('viewerFriends').getData(); var html = 'Friends of ' + viewer.getDisplayName() + ‘:<br><ul>’; viewerFriends.each(function(person) { html += '<li>' + person.getDisplayName()+'</li>';}); html += '</ul>'; document.getElementById('friends').innerHTML += html; }
  • 38. Activities Example Posting an 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());
  • 39. Persistence Example Persisting data function populateMyAppData() { var req = opensocial.newDataRequest(); var data1 = Math.random() * 5; var data2 = Math.random() * 100; req.add( req.newUpdatePersonAppDataRequest(quot;VIEWERquot;, quot;AppField1quot;, data1)); req.add( req.newUpdatePersonAppDataRequest(quot;VIEWERquot;, quot;AppField2quot;, data2)); req.send(requestMyData); }
  • 40. Persistence Example Fetching persisted data function requestMyData() { var req = opensocial.newDataRequest(); var fields = [quot;AppField1quot;, quot;AppField2quot;]; req.add(req.newFetchPersonRequest( opensocial.DataRequest.PersonId.VIEWER), quot;viewerquot;); req.add(req.newFetchPersonAppDataRequest(quot;VIEWERquot;, fields), quot;viewer_dataquot;); req.send(handleReturnedData); }
  • 41. Persistence Example Displaying fetched (persisted) data function handleReturnedData(data) { var mydata = data.get(quot;viewer_dataquot;); var viewer = data.get(quot;viewerquot;); me = viewer.getData(); // me is global var var data = mydata[me.getId()]; htmlout += quot;AppField1: quot; + data[quot;AppField1quot;] + quot;<br/>quot;; htmlout += quot;AppField2: quot; + data[quot;AppField2quot;] + quot;<br/>quot;; var div = document.getElementById('content_div'); div.innerHTML = htmlout; }
  • 42. Resources For Application Developers Specification http://opensocial.org/ http://groups.google.com/group/opensocial-and-gadgets-spec Code Samples and Tools http://code.google.com/opensocial http://code.google.com/p/opensocial-resources/ Sandboxes http://developer.myspace.com/ http://www.hi5networks.com/developer/ http://opensocial.ning.com/ http://code.google.com/apis/orkut/ http://code.google.com/apis/igoogle/ http://en.netlog.com/go/developer/opensocial
  • 44. Hosting OpenSocial apps In addition to using the provided persistence API... Establish a quot;homequot; site where gadget can phone home to retrieve, post data Can host home site on your own, or use services: Amazon EC2 Joyent Google AppEngine Zembly: is the world's first cloud-based development environment for social apps. Full OpenSocial support
  • 45. Google AppEngine and OpenSocial Create an App Engine app as your backend! Use makeRequest() to call back to your AppEngine server Utilize AppEngine's datastore New OpenSocial Apps are coming online BuddyPoke, Checkout Lane Liabraaten’s OpenSocial-AppEngine integration article http://code.google.com/apis/opensocial/articles/appengine.html Google IO Code Lab about OpenSocial Apps in the Cloud
  • 47. OpenSocial Monetization Ads from Ad Networks AdSense, RightMedia BuddyPoke, Rate My Friend Brand/Private Label App Sony Ericsson MTV Roadies app on orkut Sell virtual or real goods Free -> Freemium Referrals Virtual currency
  • 48. Success Story: Buddy Poke #1 OpenSocial app on orkut 8M installs for orkut, hi5, MySpace $1-2 CPM #1 App for App Engine w/ millions daily PV
  • 49. Success Story: PhotoBuzz 6M+ installs on hi5 and orkut CPM $1-3, especially good on orkut 4M buzzes per day Small team of 4 people, profitable
  • 52. What is Hyves? 4 years old 6 million+ Dutch members 5 billion pageviews/month 51.6% reach/month 13+, 75.6% 13-34
  • 54. OpenSocial on Hyves Launching OpenSocial today OS 0.7, working on 0.8 release (traditional) API intergration Gadget gallery waiting for good apps to be featured Contact irene@hyves.nl
  • 59. Thanks for your attention Reinoud, Derk, Youri, Marijn, Frank & Yme are here today if you have any questions Contact irene@hyves.nl for inclusion in the Gadget Gallery http://trac.hyves-api.nl/hyves- api/wiki/opensocial
  • 60. Netlog Pieter De Schepper Toon Coppens Folke Lemaitre
  • 69. How are we doing? More than 35,000,000 unique members More than 6,000,000,000 pageviews/Month 23 languages and alot more coming! Nederland Svensk slovenščin s a a Deutsch Magya Русски Englis Italiano česky r й h françai Dansk s suomi Polski Hrvatski Türkçe Afrikaan Slovenčin s 中文 Eesti a Català Españo Portuguê l Latviešu Română s valoda българск Lietuvių Norsk (bokmål) и kalba
  • 77. Share with your friends
  • 79. Whitelisting Requirements an application should be fully integrated no external login should be needed... no external links no ads in “profile” view no spamming through activities/requests localised & translated We can help you!
  • 82. Localisation is important! Translations are automatically injected Translation tool for Netlog translators
  • 84. What’s in it for you? Branding, co-branding, sponsorships 100% revenue from vertical rectangle or skyscraper on your application page Credit economy with Netlog OpenSocial extension charge credits for app installation charge credits for certain features charge credits for buying items charge credits for...
  • 86. Questions? Developer pages: http://en.netlog.com/go/developer/ OpenSocial sandbox: http://en.netlog.com/go/developer/opensocial/sandbox=1
  • 88. Becoming an OpenSocial Container Chris Chabot
  • 89. Google Dev Day OpenSocial Social Network Business Tool London Career Management 08/09/16 © viadeo – septembre 2008
  • 90. Agenda A few words about Viadeo What to offer to Viadeo’s members (Sandbox presentation)
  • 91. Viadeo 3 groups of Use : Social Network, Business Tool Career Management 5 +m Members mainly : Europe China Strong activity 7, 000 new members/day 10, 000 connections/day +120, 000 consulted profiles/day 1,3 M hubs registration
  • 92. International Footprint : 5+m Members France 1.8m members(1) Other European countries 150K members (1) Belgium 100k members(1) UK/Ireland 150 k members(1) China Switzerland 2.2m members(1) 50K members(1) Spain/Portugal Italy 350k members(1) 300k members (1) (1) end of August 2008
  • 93. What to offer to Viadeo’s Members 7 languages (European + China) Professional oriented Mainly “A Level” profiles Split by Industry Members with High Revenues => Strong capabilities of monetization
  • 94. Vertical Apps ? Members split by industry
  • 95. “A Level” priority targets ? High qualification of Viadeo’s members
  • 96. Apps for Professional Social Network… Helping to : Find Customers / Partners / Suppliers Organize Meetings/Events Share information and expertise But also ... Get headhunted… …and recruit Etc…
  • 97. Sandbox Presentation opensocial@viadeo.com
  • 98. Becoming an OpenSocial Container Question: How do you become an OpenSocial container? Answer: The Apache incubator project “Shindig” serves this purpose!
  • 99. What is Shindig ? Open source reference implementation of OpenSocial & Gadgets specification An Apache Software Incubator project Available in Java & PHP http://incubator.apache.org/shindig It’s Goal: “Shindig's goal is to allow new sites to start hosting social apps in under an hour's worth of workquot;
  • 100. Introduction to Shindig Architecture Gadget Server Social Data Server Gadget Container JavaScript
  • 103. Social Server - RESTful API Preview available on iGoogle Orkut Hi5 New development models Server to server & Mobile! Try it out: curl http://localhost:8080/social/rest/people/john.doe/@all
  • 104. Implementing Shindig - Data sources Integrate with your own data sources People Service Activities Service App Data Service class MyPeopleService implements PeopleService { ... } class MyAppDataService implements AppDataService { ... } class MyActivitiesService implements ActivitiesService { ... }
  • 105. Implementing Shindig - Data sources Implement functions function getActivities($ids) { $activities = array(); $res = mysqli_query($this->db, ”SELECT…quot;); while ($row = @mysqli_fetch_array($res, MYSQLI_ASSOC)) { $activity = new Activity($row['activityId'], $row['personId']); $activity->setStreamTitle($row['activityStream']); $activity->setTitle($row['activityTitle']); $activity->setBody($row['activityBody']); $activity->setPostedTime($row['created']); $activities[] = $activity; } return $activities; }
  • 106. Implementing - Make it a platform Add UI Elements App Gallery App Canvas App Invites Notification Browser Developer Resources Developer Console Application Gallery Scale it Out!
  • 107. Implementing - Scale it Out! Prevent Concurrency issues Reduce Latency Add Caching Add more caching! Pre-populate Cache
  • 108. Usage Example: Sample Container Static html sample container No effort to get up and running No database or features
  • 109. Usage Example: Partuza Partuza is a Example social network site, written in PHP Allows for local gadget development & testing too Use as inspiration (or copy) for creating your own social site http://code.google.com/p/partuza
  • 110. OpenSocial for intranet, portals Sun Microsystems Socialsite: Shindig + gadget based UI written in Java Open Source https://socialsite.dev.java.net/ Upcoming from Impetus Zest: Shindig + Drupal (PHP) Zeal: Shindig + Liferay (Java)
  • 111. Summary Become an OpenSocial Container Get Shindig (PHP or Java) Look at examples & documentation Implement Services Add UI Scale it out Resources & Links: http://www.chabotc.com/gdd/
  • 113. Not just Social Network Sites Social network sites - Profiles and home pages Personal dashboards Sites based around a Social Object Corporate CRM systems Any web site How do we abstract these out? Viewer + friends Owner + friends
  • 114. The Viewer and Viewer friends
  • 115. Owner and Owner friends
  • 116. Owner and Viewer are defined by Container The Application gets IDs and connections to other IDs
  • 117. the Owner need not be a Person It could be an organisation or a social object
  • 118. Kinds of container - Social network sites Profile pages Owner is profile page owner Viewer may not be known, may be owner or other member Home pages Owner is Viewer (must be logged in to see) Examples MySpace Hi5 Orkut
  • 119. Kinds of container - Personal dashboard like Home pages Owner is Viewer (must be logged in to see) Friends may not be defined Example: iGoogle, My Yahoo
  • 120. Kinds of container - Social Object site Pages reflect the object - movie, picture, product Owner is the object Owner friends are people connected to the object may be authors or fans Viewer is looking at it, Viewer friends are people you may want to share with Example: Imeem is a bit like this - opportunity for sites like Flickr, YouTube
  • 121. Kinds of container - CRM systems Pages reflect the customer Owner is the customer Owner friends are people connected to the customer may be your colleagues, or other customers Viewer is you, Viewer friends are your colleagues or customers Example: Oracle CRM, Salesforce
  • 122. Kinds of container - Any web site Owner is the site Owner friends are site users Viewer is you, Viewer friends are your friends who have visited this site Example: Google Friend Connect will enable this for any site
  • 123. What is Friend Connect? Allows any site to become an OpenSocial container by simply copying a few snippets of code into your site http://www.google.com/friendconnect/
  • 124.
  • 125.
  • 126.
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133.
  • 134. Friend Connect gives ... Users ... more ways to do more things with my friends Site owners ... more (and more engaged) traffic for my site App developers ... more reach for my apps and ... make it easy
  • 136.
  • 137. Q&A