google day in cyberjaya at multimedia university - the social web is better when it's open

Post on 27-Jul-2015

158 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

My 1.5hr talk at Google Day Word Of Mouth event at Multimedia University in Cyberjaya near Kuala Lumpur in Malaysia.

TRANSCRIPT

The Social Web Is Better When It's OpenGoogle Day, July 14, 2010

Timothy JordanDeveloper Advocate, Google

Hello, world!

Timothy JordanDeveloper Advocate, Google

buzz.timothyjordan.com@timothyjordan

The Social Web Is Better When It's Open

The Social Web Is Better When It's Open

• Let’s talk about us

The Social Web Is Better When It's Open

• Let’s talk about us

• Open Standards

The Social Web Is Better When It's Open

• Let’s talk about us

• Open Standards

• Google Buzz

The Social Web Is Better When It's Open

• Let’s talk about us

• Open Standards

• Google Buzz

• Google Buzz API

The Social Web Is Better When It's Open

• Let’s talk about us

• Open Standards

• Google Buzz

• Google Buzz API

• Examples

The Social Web Is Better When It's Open

• Let’s talk about us

• Open Standards

• Google Buzz

• Google Buzz API

• Examples

• Conclusion

The Social Web Is Better When It's Open

• Let’s talk about us

• Open Standards

• Google Buzz

• Google Buzz API

• Examples

• Conclusion

• Questions and Answers

Let’s talk about us...May I remind you that you have now been in that bath for over three years?*

*Hitchhiker’s Guide to the Galaxy, Douglas Adams

http://www.douglasadams.com/dna/19990901-00-a.html

“We are natural villagers. For most of mankind’s history we have lived in very small communities in which we knew everybody and everybody knew us. But gradually there grew to be far too many of us, and our communities became too large and disparate for us to be able to feel a part of them, and our technologies were unequal to the task of drawing us together. But that is changing.”

How to Stop Worrying and Learn to Love the InternetDouglas Adams

http://www.douglasadams.com/dna/19990901-00-a.html

“Interactivity. Many-to-many communications. Pervasive networking. These are cumbersome new terms for elements in our lives so fundamental that, before we lost them, we didn’t even know to have names for them.”

How to Stop Worrying and Learn to Love the InternetDouglas Adams

http://www.douglasadams.com/dna/19990901-00-a.html

1) everything that’s already in the world when you’re born is just normal

How to Stop Worrying and Learn to Love the InternetDouglas Adams

http://www.douglasadams.com/dna/19990901-00-a.html

2) anything that gets invented between then and before you turn thirty is incredibly exciting and creative and with any luck you can make a career out of it;

How to Stop Worrying and Learn to Love the InternetDouglas Adams

http://www.douglasadams.com/dna/19990901-00-a.html

3) anything that gets invented after you’re thirty is against the natural order of things and the beginning of the end of civilisation as we know it until it’s been around for about ten years when it gradually turns out to be alright really.

How to Stop Worrying and Learn to Love the InternetDouglas Adams

http://www.ted.com/talks/clay_shirky_how_cellphones_twitter_facebook_can_make_history.html

“These tools don’t get socially interesting until they get technologically boring. It isn’t when the shining new tools show up that their uses start permeating society. It’s when everybody is able to take them for granted.”

Clay Shirky

context

Open Standards

Identity

Activity Streams

Identity

Activities

Activity Streams

Identity

Activities

Objects

Activity Streams

Timothy

Shares

A Link

Activity Streams

Barack Obama

Started Following

Timothy Jordan

Activity Streams

Timothy Jordan

Started Following

Barack Obama

Activity Streams

Google Buzz...and the conversational web

code.google.com/apis/buzz

Google Buzz API

Warning!

alt• alt=atom returns an Atom representation of the data.• alt=json returns a JSON representation of the data.

prettyprint• If prettyprint=true, the results returned by the server will be human readable• Default: prettyprint=false

https://www.googleapis.com/buzz/v1/activities/@me/@self?alt=json&prettyprint=true

https://www.googleapis.com/buzz/v1/

https://www.googleapis.com/buzz/v1/activities/@me/@self?max-results=20&c={token}

• preview=true preview the operation.• max-results=N maximum number of results.• max-liked=N maximum number of likes• max-comments=N maximum number of comments• c={token} continuation token

https://www.googleapis.com/buzz/v1/

https://www.googleapis.com/buzz/v1/activities/search?q={q}&lat={l}&lon={l}&radius={r}

• q={query} search.• lat, lon, radius geo location.• bbox bounding box.

https://www.googleapis.com/buzz/v1/

Timothy

Shares

A Link

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },

  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "{url}/chabotc",   "thumbnailUrl": "{url}/chabotc/thumb.jpg"  },  "verbs": [   "post"  ],  "object": {   "type": "note",   "content": "content goes here",   "links": {    "alternate": [     {      "href": "http://www.google.com/buzz/a/google.com",      "type": "text/html"     }    ]   }  },

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "{url}/chabotc",   "thumbnailUrl": "{url}/chabotc/thumb.jpg"  },

  "verbs": [   "post"  ],  "object": {   "type": "note",   "content": "content goes here",   "links": {    "alternate": [     {      "href": "http://www.google.com/buzz/a/google.com",      "type": "text/html"     }    ]   }  },  "source": {   "title": "Buzz"  },  "visibility": {   "entries": [

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "{url}/chabotc",   "thumbnailUrl": "{url}/chabotc/thumb.jpg"  },  "verbs": [   "post"  ],

  "object": {   "type": "note",   "content": "content goes here"   }  },  "source": {   "title": "Buzz"  },  "visibility": {   "entries": [    {     "id": "https://www.googleapis.com/buzz/v1/people/@me/@groups/@public?alt\u003djson",     "title": "Public"    }   ]  } }

{  "kind": "buzz#activity",

  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 0    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {

   "liked": [    {     "href": "{url}/{userid}/@self/{commentId}/@liked?alt=json",     "type": "application/json",     "count": 4, "updated": "2010-05-09T02:53:13.730Z"    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],

   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "http://www.google.com/profiles/a/google.com/110242419133439594545",   "thumbnailUrl": ""  },  "verbs": [   "post"  ],  "object": {

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "{url}/chabotc",   "thumbnailUrl": "{url}/chabotc/thumb.jpg"  },  "verbs": [   "post"  ],  "object": {   "type": "note",   "content": "content goes here",   "links": {    "alternate": [     {      "href": "http://www.google.com/buzz/a/google.com",      "type": "text/html"     }    ]   }  },

  "source": {   "title": "Buzz"  },  "visibility": {   "entries": [    {     "id": "https://www.googleapis.com/buzz/v1/people/@me/@groups/@public?alt\u003djson",     "title": "Public"    }   ]  } }

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "{url}/chabotc",   "thumbnailUrl": "{url}/chabotc/thumb.jpg"  },  "verbs": [   "post"  ],  "object": {   "type": "note",   "content": "content goes here",   "links": {    "alternate": [     {      "href": "http://www.google.com/buzz/a/google.com",      "type": "text/html"     }    ]   }  },  "source": {   "title": "Buzz"  },

  "visibility": {   "entries": [    {     "id": "{url}/people/@me/@groups/@public?alt=json",     "title": "Public"    }   ]  } }

{  "kind": "buzz#activity",  "title": "note to self",  "published": "2010-05-09T02:53:13.000Z",  "updated": "2010-05-09T02:53:13.730Z",   "id": "tag:google.com,2010:buzz:foo",  "links": {   "liked": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4/@liked?alt\u003djson",     "type": "application/json",     "count": 4    }   ],   "alternate": [    {     "href": "http://www.google.com/buzz/a/google.com",     "type": "text/html"    }   ],   "self": [    {     "href": "https://www.googleapis.com/buzz/v1/activities/110242419133439594545/@self/tag:google.com,2010:buzz:z13ispojgwqsinyij04chlupum2ytbspsa4?alt\u003djson",     "type": "json"    }   ],   "replies": [    {     "href": "{url}/{userId}/@self/{commentId}/@comments?alt=json",     "type": "application/json",     "count": 2,     "updated": "2010-05-09T02:53:13.730Z"    }   ]  },  "actor": {   "id": "110242419133439594545",   "name": "Chris Chabot",   "profileUrl": "{url}/chabotc",   "thumbnailUrl": "{url}/chabotc/thumb.jpg"  },  "verbs": [   "post"  ],  "object": {   "type": "note",   "content": "content goes here",   "links": {    "alternate": [     {      "href": "http://www.google.com/buzz/a/google.com",      "type": "text/html"     }    ]   }  },  "source": {   "title": "Buzz"  },  "visibility": {   "entries": [    {     "id": "{url}/people/@me/@groups/@public?alt=json",     "title": "Public"    }   ] },

"geocode": "37.783471 -122.39922", "address": "701-737 Folsom St, San Francisco, CA 94103, USA", "placeName": "300 3rd St, San Francisco, CA 94107" } }

    "object": {     "type": "note",     "content": "content goes here",

"attachments": [ { "type": "article", "title": "Name of the link", "links": { "alternate": [ { "href": "{url}/to/article.html", "type": "text/html" } ] } } ]    }

    "object": {     "type": "note",     "content": "content goes here",

     "attachments": [      {       "type": "photo",       "links": {        "preview": [         {          "href": "{url}/image_thumb.jpg",          "type": "image/jpeg"         }        ],        "enclosure": [         {          "href": "{url}/image.jpg",          "type": "image/jpeg",          "height": 190,          "width": 260         }        ]       }      }     ]    }

    "object": {     "type": "note",     "content": "content goes here", "attachments": [ {

"type": "video", "title": "video description goes here", "links": { "alternate": [ { "href": "http://www.youtube.com/watch?v=abcdef", "type": "text/html" } ], "preview": [ { "href": "{url}/default.jpg", "type": "image/jpeg" }, { "href": "{url}/proxy?thumbnail_default.jpg", "type": "image/jpeg" } ] } } ]

FavoriteFollowFriendJoinPlayPostSaveShareTagUpdate

ArticleAudioBookmarkCommentFileFolderGroupListNotePerson

PhotoPhoto AlbumPlacePlaylistProductReviewServiceStatusVideo

Verbs Objects

FavoriteFollowFriendJoinPlayPostSaveShareTagUpdate

ArticleAudioBookmarkCommentFileFolderGroupListNotePerson

PhotoPhoto AlbumPlacePlaylistProductReviewServiceStatusVideo

Verbs Objects

mac:~ user$ echo \  '{    "data": {      "object": {        "type": "note",        "content": "Bzz! Bzz! via JSON"      }    }   }'| oacurl -t JSON -X POST \ "https://www.googleapis.com/buzz/v1/activities/@me/@self?alt=json"

http://code.google.com/p/oacurl/

Examples...for fun and profit

Buzzzy

Marginize SocialwokPing.fm

Meebo bar Shareaholic

Klout Seesmic

Tweetdeck

Boxee

TweetDeck

Seesmic

Buzz Bingobuzz-bingo.appspot.com

client = buzz.Client()client.build_oauth_consumer(  OAUTH_CONSUMER_KEY,  OAUTH_CONSUMER_SECRET)client.oauth_scopes.append(  buzz.FULL_ACCESS_SCOPE)

Sign-In & Auth for Buzz

request_token = \  client.fetch_oauth_request_token(    'http://example.com/oauth/callback/'  )# Save request token to the data storeauthorization_url = \  client.build_oauth_authorization_url(    request_token  )

Sign-In & Auth for Buzz

# User visits the authorization_url

Sign-In & Auth for Buzz

verifier = request.get('oauth_verifier')# Lookup request_token in data storeclient.oauth_request_token = request_tokenaccess_token = \  client.fetch_oauth_access_token(verifier)# Save access token to the data store

Sign-In & Auth for Buzz

if post.attachments:  for attachment in post.attachments:    if attachment.type == 'article':      self.award_badge('share')      breakif post.geocode and \    post.actor.id != self.key().name():  self.award_badge('geo')elif post.geocode:  self.award_badge('mobile')

Board Marked

# Create the attachments for the postbadge_attachment = buzz.Attachment(  type='photo', enclosure=badge.badge_icon)link_attachment = buzz.Attachment(  type='article',  title='Buzz Bingo',  uri='http://buzz-bingo.appspot.com/')

Board Marked

# Assemble our announcement Buzz postbadge_post = buzz.Post(  content=post_content,  attachments=[    badge_attachment,    link_attachment  ],  geocode=VENUE_GEOCODE,  place_id=VENUE_PLACE_ID)# Create the postself.client.create_post(badge_post)

Board Marked

if (5 in horizontal_counts) or \    (5 in vertical_counts):  self.award_badge('bingo')

Bingo!

Buzz Bingo is open source!code.google.com/p/buzz-bingo

buzz-bingo.appspot.com

Conclusion

Social?

Social!

This is Natural

Open Standards

Thank you

Questions and Answers

Timothy JordanDeveloper Advocate, Google

buzz.timothyjordan.com@timothyjordan

top related