Upload
will-norris
View
2.586
Download
0
Embed Size (px)
Citation preview
Social 101:Introduction to Google BuzzWill NorrisMay 18, 2010
#iobootcamp
Will NorrisDeveloper Programs Engineerhttp://willnorris.com/
Social 101: Introduction to Google Buzz
• The Conversational Web
• Google Buzz
• Relevant Technologies
– Atom, Atom Extensions, Activity Streams
– REST, OAuth, PubSubHubbub, Salmon
• Questions & Answers
5
The Conversational Web
The Conversational Web
7
...
... ...
waffles for breakfast
#nomnomnomcan't wait for
#googleio
...
The Conversational Web
8
Google Buzz
Google Buzz
10
Google Buzz
11
Google Buzz
12
Relevant Technologies
Atom (and friends)
Atom<entry xmlns="http://www.w3.org/2005/Atom">
<id>tag:example.com,2010:entry/123</id>
<title>Hello World</title>
<updated>2010-03-23T23:43:30.485Z</updated>
<author>
<name>Ted Taco</name>
<uri>http://www.example.com/author/ted</uri>
</author>
<content> ... </content>
<link rel="alternate" type="text/html"
href="http://www.example.com/123" />
</entry>
16
Atom<entry xmlns="http://www.w3.org/2005/Atom">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
</entry>
17
Atom<entry xmlns="http://www.w3.org/2005/Atom">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
<link rel="enclosure" type="image/jpeg"
href="http://www.example.com/images/123.jpg" />
</entry>
18
Atom + MediaRSS<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:media="http://search.yahoo.com/mrss/">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
<link rel="enclosure" type="image/jpeg"
href="http://www.example.com/images/123.jpg"
media:height="600" media:width="800" />
</entry>
19
Atom<entry xmlns="http://www.w3.org/2005/Atom">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
</entry>
20
Atom + GeoRSS<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:georss="http://www.georss.org/georss">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
<georss:point>37.7834 -122.4035</georss:point>
<georss:featureName>Moscone Center</georss:featureName>
</entry>
21
Atom + GeoRSS + Portable Contacts<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:georss="http://www.georss.org/georss"
xmlns:poco="http://portablecontacts.net/ns/1.0">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
<georss:point>37.7834 -122.4035</georss:point>
<georss:featureName>Moscone Center</georss:featureName>
<poco:address><poco:formatted>
747 Howard Street, San Francisco, CA 94103
</poco:formatted></poco:address>
</entry>
22
Atom + Threading<entry xmlns="http://www.w3.org/2005/Atom">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
</entry>
23
Atom + Threading<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:thr="http://purl.org/syndication/thread/1.0">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
<link rel="replies" type="application/atom+xml" href="..."
thr:count="14" thr:updated="2010-05-12T20:34:54Z" />
</entry>
24
Atom + Threading<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:thr="http://purl.org/syndication/thread/1.0">
<id> ... </id>
<author> ... </author>
<link rel="alternate" type="text/html" href="..." />
<thr:in-reply-to ref="tag:example.com,2010:post/123"
type="text/html" href="http://example.com/123" />
</entry>
25
Activity Streams
27
28
29
30
What do these feeds have in common?
31
Not Much
32
Actor + Verb + Object
33
• Ted committed revision 43
• Cami favorited a video
• Ted friended Cami
Atom + Activity Streams<entry xmlns="http://www.w3.org/2005/Atom">
<id> ... </id>
<author>
<name> ... </name>
</author>
</entry>
34
Atom + Activity Streams<entry xmlns="http://www.w3.org/2005/Atom"
xmlns:activity="http://activitystrea.ms/spec/1.0">
<id> ... </id>
<author>
<name> ... </name>
<activity:object-type>
http://activitystrea.ms/schema/1.0/person
</activity:object-type>
</author>
<activity:verb>http://activitystrea.ms/schema/1.0/favorite</activity:verb>
<activity:object>
<activity:object-type>
http://activitystrea.ms/schema/1.0/video
</activity:object-type>
<content> ... </content>
</activity:object>
</entry>
35
Salmon
Salmon
37
CommentsLikes
Salmon
37
CommentsLikes
CommentsLikes
Salmon
37
CommentsLikes
CommentsLikes
FriendFeedComments
Likes
Salmon
37
CommentsLikes
CommentsLikes
FriendFeedComments
Likes
Wednesday, 3:00pm - 4:00pm Room 9Bridging the Islands
38
PubSubHubbub
PubSubHubbub
40
Anything New?
NoYes!
PubSubHubbub
40
Anything New?
NoYes!
PubSubHubbub
40
Anything New?
NoYes!
PubSubHubbub
40
Anything New?
NoYes!
PubSubHubbub
41
PubSubHubbub
41
PubSubHubbub
42
PubSubHubbub
42
Wednesday, 4:15pm - 5:15pm Room 9Make your application real-time with PubSubHubbub
43
OAuth
Password Anti-PatternOAuth
45
Your Valet Key for the WebOAuth
46
• Valet Key– Limit speed to 20 mph– Limit total distance to 20 miles– Restrict access to the trunk and glove box
• OAuth Token– Limit to a particular application– Limit which data application can access– Limit how long the data can be accessed – Revokable
47
48
49
Wednesday, 1:45pm - 2:45pm Room 8What's the hubbub about Google Buzz APIs?
50
Thursday, 11:30pm - 12:30pm Room 1Surf the stream: Google Buzz, location, and social gaming
Wednesday, 1:45pm - 2:45pm Room 8What's the hubbub about Google Buzz APIs?
50
Thursday, 11:30pm - 12:30pm Room 1Surf the stream: Google Buzz, location, and social gaming
See the Social Web sessions in I/O schedule
51
Questions
52