SlideShare a Scribd company logo
1 of 254
Download to read offline
messina@google.com   •   @chrismessina   •   factoryjoe.com
@chris.messina
                          buzz.google.com/chrismessina


                            @chrismessina
                                      #devfest


Hello.

Here are some useful coordinates before we begin: chris.messina on Buzz; chrismessina on
Twitter.

The hashtag is #devfest
Google y la Web Social
Google Search   I’m Feeling Lucky




So Google is thought of by most people to be a search company. But it’s actually an
information company.

Even still, there’s no reason why Google shouldn’t do more to enhance its information
products with social information, helping to make more information that’s relevance, timely,
and useful available to everyone.
Google Search   I’m Feeling Lucky
                                                               Social




So Google is thought of by most people to be a search company. But it’s actually an
information company.

Even still, there’s no reason why Google shouldn’t do more to enhance its information
products with social information, helping to make more information that’s relevance, timely,
and useful available to everyone.
chris messina

                                       Google Search   I’m Feeling Lucky
                                                                   Social




So Google is thought of by most people to be a search company. But it’s actually an
information company.

Even still, there’s no reason why Google shouldn’t do more to enhance its information
products with social information, helping to make more information that’s relevance, timely,
and useful available to everyone.
?




but there’s still a question about what this should really look like. And a question about the
right way for Google to get involved with and help advance the social web.
Google Social Products




But Google has always had social products. From Google Talk to Reader to Docs...
Google Social Products




             Google Talk                                           Google Reader




                                      Google Docs



But Google has always had social products. From Google Talk to Reader to Docs...
Google Social Products
   Search                                      Communicate, show & share

        Blog Search                                 Blogger
        Find blogs on your favorite topics          Share your life online with a blog - it's quick, easy and free

        Earth                                       Calendar
        Explore the world from your computer        Organize your schedule and share events with friends

        Maps                                        Docs
        View maps and directions                    Create and share your online documents, presentations and spreadsheets

        Web Search                                  Google Mail
        Search billions of web pages                Fast, searchable email with less spam

                                                    Groups
                                                    Create mailing lists and discussion groups

                                                    Orkut
                                                    Meet new people and stay in touch with friends

                                                    Picasa
                                                    Find, edit and share your photos

                                                    Reader
                                                    Get all your blogs and news feeds fast

                                                    Sites
                                                    Create websites and secure group wikis

                                                    Talk
                                                    IM and call your friends through your computer

                                                    Translate
                                                    View web pages in other languages

                                                    YouTube
                                                    Watch, upload and share videos




but in fact, there’s a much broader social story at Google — it just hasn’t revealed itself with
the same degree of obviousness that we see elsewhere in the industry.
In fact it’s important to keep in mind that Google’s original algorithm, called PageRank is
Google’s original “social web” product. How so?
“PageRank can be thought of as a model
   of user behavior.”




   Sergey Brin and Larry Page, 1998




Well, in the original academic paper that described PageRank, Larry and Sergey said that
PageRank “can be thought of as a model of user behavior.”
At the time, the user model that they were describing was that of a user following links from
one site to another — the “follow your nose” model of the “web of links”. From this kind of
user behavior, the algorithm for PageRank was derived (click).

While that model has changed over time, the basic premise that links indicate a social signals
remains relevant.
At the time, the user model that they were describing was that of a user following links from
one site to another — the “follow your nose” model of the “web of links”. From this kind of
user behavior, the algorithm for PageRank was derived (click).

While that model has changed over time, the basic premise that links indicate a social signals
remains relevant.
At the time, the user model that they were describing was that of a user following links from
one site to another — the “follow your nose” model of the “web of links”. From this kind of
user behavior, the algorithm for PageRank was derived (click).

While that model has changed over time, the basic premise that links indicate a social signals
remains relevant.
The signals that were once embedded in static HTML pages that could be crawled at one’s
leisure are now predominantly being shared in social streams. And more importantly, the
make up of social streams differs per person — which leads to an incredible opportunity to
improve personalization and the relevance of search results.
The signals that were once embedded in static HTML pages that could be crawled at one’s
leisure are now predominantly being shared in social streams. And more importantly, the
make up of social streams differs per person — which leads to an incredible opportunity to
improve personalization and the relevance of search results.
and so google can use those signals to personalize your search results, as they do with the
social circle feature.
and so google can use those signals to personalize your search results, as they do with the
social circle feature.
which brings us to Buzz, Google’s latest baby entry into the social web.
This is what Buzz looks like in Gmail, in case you haven’t seen it.
it also gives you a nice way to interact with media right from within buzz.
Announcing Buzz This Buttons
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
http://j.mp/buzz-this-api
Google Buzz and the social web
“ The best way to get a sense of where the Buzz API is
    heading is to take a look at http://code.google.com/
    apis/buzz/. You'll notice that the “coming soon”
    section mentions a ton of protocols—Activity
    Streams, Atom, AtomPub, MediaRSS, WebFinger,
    PubSubHubbub, Salmon, OAuth, XFN, etc.


   DeWitt Clinton, Google




    Photo by Joi Ito



“The best way to get a sense of where the Buzz API is heading is to take a look at http://
code.google.com/apis/buzz/. You'll notice that the “coming soon” section mentions a ton of
protocols—Activity Streams, Atom, AtomPub, MediaRSS, WebFinger, PubSubHubbub, Salmon,
OAuth, XFN, etc.
“ What it doesn't talk much about is Google. That's
    because the goal isn't Google specific at all. The
    idea is that someday, any host on the web should
    be able to implement these open protocols and
    send messages back and forth in real time with
    users from any network, without any one
    company in the middle.

   DeWitt Clinton, Google




    Photo by Joi Ito



“What it doesn't talk much about is Google. That's because the goal isn't Google specific at
all. The idea is that someday, any host on the web should be able to implement these open
protocols and send messages back and forth in real time with users from any network,
without any one company in the middle.
“ What it doesn't talk much about is Google. That's
    because the goal isn't Google specific at all. The
    idea is that someday, any host on the web should
    be able to implement these open protocols and
    send messages back and forth in real time with
    users from any network, without any one
    company in the middle.

   DeWitt Clinton, Google




    Photo by Joi Ito



“What it doesn't talk much about is Google. That's because the goal isn't Google specific at
all. The idea is that someday, any host on the web should be able to implement these open
protocols and send messages back and forth in real time with users from any network,
without any one company in the middle.
“ The web contains the social graph, the
    protocols are standard web protocols, the
    messages can contain whatever crazy stuff
    people think to put in them. Google Buzz will
    be just another node (a very good node, I
    hope) among many peers.”
   DeWitt Clinton, Google




    Photo by Joi Ito



“The web contains the social graph, the protocols are standard web protocols, the messages
can contain whatever crazy stuff people think to put in them. Google Buzz will be just
another node (a very good node, I hope) among many peers.”
“ The web contains the social graph, the
    protocols are standard web protocols, the
    messages can contain whatever crazy stuff
    people think to put in them. Google Buzz will
    be just another node (a very good node, I
    hope) among many peers.”
   DeWitt Clinton, Google




    Photo by Joi Ito



This is really important. The goal of Google Buzz, while on the one hand is create an
excellent social experience on the web, is also to adopt and make use of technologies that
expand the size and participation on the social web.
What is the social web?
Image from the Opte Project



So if this is the web, it’s important to understand that the goal is NOT for Google to own the
web. On the contrary... [CLICK]
{                                                                           }
    Image from the Opte Project



So if this is the web, it’s important to understand that the goal is NOT for Google to own the
web. On the contrary... [CLICK]
{                                                                           }
    Image from the Opte Project



So if this is the web, it’s important to understand that the goal is NOT for Google to own the
web. On the contrary... [CLICK]
Image from the Opte Project



So if this is the web, it’s important to understand that the goal is NOT for Google to own the
web. On the contrary... [CLICK]
Image from the Opte Project



the goal is for there to be many different players on the open web, providing choice for
people, and competing to offer the best services around.

And this isn’t just for the bigger or more popular services. The goal is for a much larger,
more interconnected social web to grow larger.
Image from the Opte Project



the goal is for there to be many different players on the open web, providing choice for
people, and competing to offer the best services around.

And this isn’t just for the bigger or more popular services. The goal is for a much larger,
more interconnected social web to grow larger.
Image from the Opte Project



the goal is for there to be many different players on the open web, providing choice for
people, and competing to offer the best services around.

And this isn’t just for the bigger or more popular services. The goal is for a much larger,
more interconnected social web to grow larger.
The web is better when it’s social



The web is better when it’s social.

And that means that we want to make sure that every page and site on the web can offer
social functionality, and compelling social experiences.
What do I mean by social?




it’s about enabling new verbs on the web... verbs like follow, share, discuss, comment,
mention, like, rate,
I saw this in a local supermarket back home in San Francisco.

I’ve seen similar signs all over the Mission, where I live.
This is where the social web begins — an invitation from the real world to join others online.

But the social web is about much more. However...
“Find us on Facebook”

                    “Follow us on Twitter”



This is where the social web begins — an invitation from the real world to join others online.

But the social web is about much more. However...
Engagement & interaction




This is where the social web begins — an invitation from the real world to join others online.

But the social web is about much more. However...
Consuming




                                                          Participating


  Source: groundswell.forrester.com


...current trends indicate a 1-10-90 (the math doesn’t add up, no) split on creators,
commentors, and consumers.

our challenge is to flip that trend [CLICK] — to help people feel more comfortable sharing
online.
Participating




                                                           Consuming


  Source: groundswell.forrester.com


...current trends indicate a 1-10-90 (the math doesn’t add up, no) split on creators,
commentors, and consumers.

our challenge is to flip that trend [CLICK] — to help people feel more comfortable sharing
online.
Google has developed OpenSocial and Friend Connect with that challenge in mind... and has
found some positive successes.

But we’re not done yet. In fact, I’d argue that we’re just getting started.
• There are 40 or more active
        OpenSocial containers
      • ...representing 820 million users
        worldwide (June 2009)
      • 15,000 OpenSocial applications
        running on these social networks
      • 315M+ app installs across these
        social networks




Google has developed OpenSocial and Friend Connect with that challenge in mind... and has
found some positive successes.

But we’re not done yet. In fact, I’d argue that we’re just getting started.
• There are 40 or more active                   • Tens of thousands of sites and
        OpenSocial containers                           millions of blogs are using Friend
                                                        Connect, and these numbers
      • ...representing 820 million users               continue to grow.
        worldwide (June 2009)
                                                      • 9 million 30-day-active friend
      • 15,000 OpenSocial applications                  connected sites (December
        running on these social networks                2009)
      • 315M+ app installs across these               • 160,000 joins/day (which is
        social networks                                 >1/second) (December 2009)




Google has developed OpenSocial and Friend Connect with that challenge in mind... and has
found some positive successes.

But we’re not done yet. In fact, I’d argue that we’re just getting started.
OpenSocial, Friend Connect, and the middle
          Site Complexity




                                           Long tail




The way I see it, Google has already invested a considerable amount of resources working
with partners to develop technology for the head of the tail — the OpenSocial “containers”.

Google has also worked hard on Google Friend Connect.

It’s the middle here that we’re looking at working on now — whose needs will be covered by
a series of emerging, open building blocks that we call the “social stack”.
OpenSocial, Friend Connect, and the middle
          Site Complexity




                                           Long tail




The way I see it, Google has already invested a considerable amount of resources working
with partners to develop technology for the head of the tail — the OpenSocial “containers”.

Google has also worked hard on Google Friend Connect.

It’s the middle here that we’re looking at working on now — whose needs will be covered by
a series of emerging, open building blocks that we call the “social stack”.
OpenSocial, Friend Connect, and the middle
          Site Complexity




                                           Long tail




The way I see it, Google has already invested a considerable amount of resources working
with partners to develop technology for the head of the tail — the OpenSocial “containers”.

Google has also worked hard on Google Friend Connect.

It’s the middle here that we’re looking at working on now — whose needs will be covered by
a series of emerging, open building blocks that we call the “social stack”.
OpenSocial, Friend Connect, and the middle

                               Social Stack
          Site Complexity




                                           Long tail




The way I see it, Google has already invested a considerable amount of resources working
with partners to develop technology for the head of the tail — the OpenSocial “containers”.

Google has also worked hard on Google Friend Connect.

It’s the middle here that we’re looking at working on now — whose needs will be covered by
a series of emerging, open building blocks that we call the “social stack”.
OpenSocial, Friend Connect, and the middle

                               Social Stack
          Site Complexity




                                           Long tail




The way I see it, Google has already invested a considerable amount of resources working
with partners to develop technology for the head of the tail — the OpenSocial “containers”.

Google has also worked hard on Google Friend Connect.

It’s the middle here that we’re looking at working on now — whose needs will be covered by
a series of emerging, open building blocks that we call the “social stack”.
Social Building Blocks




Here’s how.
Social Building Blocks
   • Identity & Profile




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect


  The Glue




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect


  The Glue
   • Email-style Identifiers (WebFinger)




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect


  The Glue
   • Email-style Identifiers (WebFinger)
   • Service Discovery (LRDD)




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect


  The Glue
   • Email-style Identifiers (WebFinger)
   • Service Discovery (LRDD)
   • Service Authorization (OAuth)




Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect


  The Glue
   • Email-style Identifiers (WebFinger)
   • Service Discovery (LRDD)
   • Service Authorization (OAuth)
   • Distributed Conversations (Salmon)



Here’s how.
Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities
   • Connect


  The Glue
   • Email-style Identifiers (WebFinger)
   • Service Discovery (LRDD)
   • Service Authorization (OAuth)
   • Distributed Conversations (Salmon)
   • Real-time Publishing (PubSubHubbub)


Here’s how.
Social Building Blocks
Identity & Profile
OpenID
Google and the Social Web (Mexico City Dev Fest 2010)
Photo by Teresa Stanton


OpenID is like a personal skeleton key for all your web accounts.

By using an account that you already have to sign up for another website, not only is it more
convenient, but you are able to start developing your own universal web identity — that, if
you CHOOSE TO, you can own.
Why is OpenID important?




* People use different identities for different purposes
* Ultimately choice and competition is a good thing to foster in this early landscape.
* With greater diversity of providers, publishers may see the potential for wider distribution
of shareable content.
* Digital identity is in its infancy now; the final chapter has not yet been written.
Why is OpenID important?

   • People use different identities for different purposes




* People use different identities for different purposes
* Ultimately choice and competition is a good thing to foster in this early landscape.
* With greater diversity of providers, publishers may see the potential for wider distribution
of shareable content.
* Digital identity is in its infancy now; the final chapter has not yet been written.
Why is OpenID important?

   • People use different identities for different purposes
   • Ultimately choice and competition is a good thing to foster in
     this early landscape.




* People use different identities for different purposes
* Ultimately choice and competition is a good thing to foster in this early landscape.
* With greater diversity of providers, publishers may see the potential for wider distribution
of shareable content.
* Digital identity is in its infancy now; the final chapter has not yet been written.
Why is OpenID important?

   • People use different identities for different purposes
   • Ultimately choice and competition is a good thing to foster in
     this early landscape.
   • With greater diversity of providers, publishers may see the
     potential for wider distribution of shareable content.




* People use different identities for different purposes
* Ultimately choice and competition is a good thing to foster in this early landscape.
* With greater diversity of providers, publishers may see the potential for wider distribution
of shareable content.
* Digital identity is in its infancy now; the final chapter has not yet been written.
Why is OpenID important?

   • People use different identities for different purposes
   • Ultimately choice and competition is a good thing to foster in
     this early landscape.
   • With greater diversity of providers, publishers may see the
     potential for wider distribution of shareable content.
   • Digital identity is in its infancy now; the final chapter has not
     yet been written.




* People use different identities for different purposes
* Ultimately choice and competition is a good thing to foster in this early landscape.
* With greater diversity of providers, publishers may see the potential for wider distribution
of shareable content.
* Digital identity is in its infancy now; the final chapter has not yet been written.
Now, unfortunately this is what OpenID often looks like today.
when people really just want this.

their goal is to get access to their account

To be fair, this is merely an uncomfortable transitional step along a much longer path
towards open identity on the web. it is a means to an end, but not the end that we seek.
when people really just want this.

their goal is to get access to their account

To be fair, this is merely an uncomfortable transitional step along a much longer path
towards open identity on the web. it is a means to an end, but not the end that we seek.
so this interface — with all these buttons, is what we call the “NASCAR”, which is named after
the cars in the popular american racing sport.
Photo by Timothy Vogel

the result is what we call the “OpenID NASCAR” where everyone wants their brand shown on
login forms....

But it’s this way for an important reason. People want — and exercise — choice when logging
in.
Contextual identity




And as more relying parties come online, it’s increasing important that there is choice in
identity providers.

For example, the OpenID that you might want to use to sign in to Basecamp may be different
from the one that you want to use to sign in to Lady Gaga’s website.

And that idea proves out in case after case.
Unique OpenID Relying Parties
    As of July 1, 2009




 Data from Janrain


So as we’ve seen an explosion in the number of OpenID relying parties in the last five years
— users are carefully considering which account they want to use to sign in.
Unique OpenID Relying Parties
    As of July 1, 2009


               50,000

               40,000

               30,000

               20,000

               10,000

                     0
                          5

                               06


                                    06


                                         06


                                               6

                                                    07


                                                         07


                                                              07


                                                                    7

                                                                         08


                                                                              08


                                                                                   08


                                                                                         8

                                                                                              09


                                                                                                   09
                          /0




                                               /0




                                                                    /0




                                                                                         /0
                               1/


                                    4/


                                         7/




                                                    1/


                                                         4/


                                                              7/




                                                                         1/


                                                                              4/


                                                                                   7/




                                                                                              1/


                                                                                                   7/
                         10




                                              10




                                                                   10




 Data from Janrain                                                                      10

So as we’ve seen an explosion in the number of OpenID relying parties in the last five years
— users are carefully considering which account they want to use to sign in.
Unique OpenID Relying Parties
    As of July 1, 2009


               50,000

               40,000

               30,000

               20,000

               10,000

                     0
                          5

                               06


                                    06


                                         06


                                               6

                                                    07


                                                         07


                                                              07


                                                                    7

                                                                         08


                                                                              08


                                                                                   08


                                                                                         8

                                                                                              09


                                                                                                   09
                          /0




                                               /0




                                                                    /0




                                                                                         /0
                               1/


                                    4/


                                         7/




                                                    1/


                                                         4/


                                                              7/




                                                                         1/


                                                                              4/


                                                                                   7/




                                                                                              1/


                                                                                                   7/
                         10




                                              10




                                                                   10




 Data from Janrain                                                                      10

So as we’ve seen an explosion in the number of OpenID relying parties in the last five years
— users are carefully considering which account they want to use to sign in.
Companies that have adopted OpenID




So who’s actually adopted OpenID?

Well, as that chart suggests, there’s a lot of folks out there. And there are more coming
online everyday.
Companies that have adopted OpenID




So who’s actually adopted OpenID?

Well, as that chart suggests, there’s a lot of folks out there. And there are more coming
online everyday.
OpenID Usage Trends




This is some data from a company called Janrain that makes a product called RPX which
makes it easy to integrate third-party authentication services.
OpenID usage trends
    UserVoice Providers
                                          13%


           19%                                       9%


                                                           4%
                                                           2%
                                                           1%
                                                           1%
                                                           1%




                                    52%

                 Google               Facebook   Yahoo!
                 MyOpenID             Other      AOL
                 VeriSign PIP         Blogger    ClaimID




 Chart from Janrain, January 2009


I want you to look at these graphs very carefully. Each color represents a different identity
provider.
OpenID usage trends
    Interscope Records Providers

                              43%




                                                               19%


      12%

                                                      1%
                                                    2% 0%



                                    24%


              Google        Facebook      Yahoo!    MyOpenID
              Other         AOL           MySpace




 Chart from Janrain, January 2009


...and on each site, people use different identity providers depending on the context.

INTERSCOPE — Facebook, MySpace, Yahoo, Google
OpenID usage trends
    sulit.com.ph Providers

                                      24%




                                                       10%


                                                              1%
                                                           1%
                                                             0%




                     64%



               Yahoo!        Google   Facebook   MySpace
               AOL           Other




 Chart from Janrain, January 2009


Especially when you’re thinking about an international audience, everything changes.

Yahoo, Google, Facebook
OpenID usage trends
    Sign in preferences across all Janrain properties

                              11.4%   6.3%




                                              18.3%    Google
                                                       Facebook
  26.6%
                                                       Yahoo!
                                                       Twitter
                                                       Other
                                                        (MySpace, Windows Live, AOL, etc)


                                      37.4%




 Chart from Janrain, April 2009


Especially when you’re thinking about an international audience, everything changes.
Making OpenID easier




one of the challenges of OpenID has been figuring out how to make OpenID easier.

One of the biggest challenges is helping people to know what their OpenID is and to
remember it.
people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?
   • Twitter?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?
   • Twitter?
   • Are you on Facebook?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?
   • Twitter?
   • Are you on Facebook?
   • What’s your Gmail?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?
   • Twitter?
   • Are you on Facebook?
   • What’s your Gmail?
   • What’s your OpenID?




people can remember their address, their phone number, AOL screenname, email, MySpace...
Twitter... Facebook? Gmail...? OpenID?
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?
   • Twitter?
   • Are you on Facebook?
   • What’s your Gmail?
   • What’s your OpenID?




turns out that email addresses seem to be much more universal and memorable than an
“OpenID”, and so the OpenID community has been working on ways to make it possible to
use an email address as a way to bootstrap the OpenID authentication process. (more on that
later)
• What’s your address?
   • What’s your phone number?
   • What’s your AOL screenname?
   • What’s your email address?
   • What’s your MySpace?
   • Twitter?
   • Are you on Facebook?
   • What’s your Gmail?
   • What’s your OpenID?




turns out that email addresses seem to be much more universal and memorable than an
“OpenID”, and so the OpenID community has been working on ways to make it possible to
use an email address as a way to bootstrap the OpenID authentication process. (more on that
later)
which brings us to WebFinger.
WebFinger




which brings us to WebFinger.
The Hammer Stack
   Discovery for the open web




WebFinger relies on an emerging set of technologies and formats that together we call “The
Hammer Stack”
How WebFinger works




           Enter email:   Email   Connect
How WebFinger works




           Enter email:   chris.messina@gmail.com   Connect
How WebFinger works




           Enter email:   chris.messina@gmail.com   Connect
How WebFinger works
   Discovering a user’s WebFinger profile




                                   chris.messina@gmail.com




So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use
host-meta to pull the user’s WebFinger.
How WebFinger works
   Discovering a user’s WebFinger profile




                                   chris.messina@gmail.com




                                   {
                              local account




So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use
host-meta to pull the user’s WebFinger.
How WebFinger works
   Discovering a user’s WebFinger profile




                                   chris.messina@gmail.com




                                                {
                                                realm




So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use
host-meta to pull the user’s WebFinger.
How WebFinger works
   Discovering a user’s WebFinger profile




                                   chris.messina@gmail.com




                                                {
                                                realm




So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use
host-meta to pull the user’s WebFinger.
How WebFinger works
Use host meta to retrieve an LRDD document




                      $curl http://gmail.com/.well-known/host-meta
How WebFinger works
Use host meta to retrieve an LRDD document




                      $curl http://gmail.com/.well-known/host-meta
How WebFinger works
Use host meta to retrieve an LRDD document




                      $curl http://gmail.com/.well-known/host-meta
How WebFinger works
Server returns LRDD document




      <?xml version='1.0' encoding='UTF-8'?>
      <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'
           xmlns:hm='http://host-meta.net/xrd/1.0'>
        <hm:Host xmlns='http://host-meta.net/xrd/1.0'>gmail.com</hm:Host>
        <Link rel='lrdd'
              template='http://www.google.com/s2/webfinger/?q={uri}'>
          <Title>Resource Descriptor</Title>
        </Link>
      </XRD>
How WebFinger works
Server returns LRDD document




      <?xml version='1.0' encoding='UTF-8'?>
      <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'
           xmlns:hm='http://host-meta.net/xrd/1.0'>
        <hm:Host xmlns='http://host-meta.net/xrd/1.0'>gmail.com</hm:Host>
        <Link rel='lrdd'
              template='http://www.google.com/s2/webfinger/?q={uri}'>
          <Title>Resource Descriptor</Title>
        </Link>
      </XRD>
How WebFinger works
   Plugin acct: into URI Template




                              http://www.google.com/s2/webfinger/?q={uri}




so let’s bring back my email address and turn it into an acct: URI and plug it into the URI
template we got from the host-meta file.
How WebFinger works
   Plugin acct: into URI Template




                                   chris.messina@gmail.com



                              http://www.google.com/s2/webfinger/?q={uri}




so let’s bring back my email address and turn it into an acct: URI and plug it into the URI
template we got from the host-meta file.
How WebFinger works
   Plugin acct: into URI Template




                                acct:chris.messina@gmail.com



                              http://www.google.com/s2/webfinger/?q={uri}




so let’s bring back my email address and turn it into an acct: URI and plug it into the URI
template we got from the host-meta file.
How WebFinger works
   Plugin acct: into URI Template




                                                    acct:chris.messina@gmail.com
              http://www.google.com/s2/webfinger/?q={uri}




so let’s bring back my email address and turn it into an acct: URI and plug it into the URI
template we got from the host-meta file.
How WebFinger works
   Plugin acct: into URI Template




                                                    acct:chris.messina@gmail.com
              http://www.google.com/s2/webfinger/?q={uri}




so let’s bring back my email address and turn it into an acct: URI and plug it into the URI
template we got from the host-meta file.
How WebFinger works
Retrieve WebFinger document




$curl http://www.google.com/s2/webfinger/?q=chris.messina@gmail.com
How WebFinger works
Retrieve WebFinger document




$curl http://www.google.com/s2/webfinger/?q=chris.messina@gmail.com
How WebFinger works
Retrieve WebFinger document




$curl http://www.google.com/s2/webfinger/?q=chris.messina@gmail.com
How WebFinger works
   XRD Profile
    <?xml version='1.0'?>
    <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'>
    "   <Subject>acct:chris.messina@gmail.com</Subject>
    "   <Alias>http://www.google.com/profiles/chris.messina</Alias>
    "   <Link rel='http://portablecontacts.net/spec/1.0'
    "     href='http://www-opensocial.googleusercontent.com/api/people/'/>
    "   <Link rel='http://webfinger.net/rel/profile-page'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://microformats.org/profile/hcard'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://gmpg.org/xfn/11'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://specs.openid.net/auth/2.0/provider'
    "     href='http://www.google.com/profiles/chris.messina'/>
    "   <Link rel='describedby'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='describedby'
    "     href='http://s2.googleusercontent.com/webfinger/?q=chris.messina%40gmail.com&amp;fmt=foaf'
    "     type='application/rdf+xml'/>
    "   <Link rel='http://schemas.google.com/g/2010#updates-from'
    "     href='http://buzz.googleapis.com/feeds/102034052532213921839/public/posted'
    "     type='application/atom+xml'/>
    </XRD>




from here I can grab any service that I need.
How WebFinger works
   XRD Profile
    <?xml version='1.0'?>
    <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'>
    "   <Subject>acct:chris.messina@gmail.com</Subject>
    "   <Alias>http://www.google.com/profiles/chris.messina</Alias>
    "   <Link rel='http://portablecontacts.net/spec/1.0'
    "     href='http://www-opensocial.googleusercontent.com/api/people/'/>
    "   <Link rel='http://webfinger.net/rel/profile-page'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://microformats.org/profile/hcard'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://gmpg.org/xfn/11'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://specs.openid.net/auth/2.0/provider'
    "     href='http://www.google.com/profiles/chris.messina'/>
    "   <Link rel='describedby'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='describedby'
    "     href='http://s2.googleusercontent.com/webfinger/?q=chris.messina%40gmail.com&amp;fmt=foaf'
    "     type='application/rdf+xml'/>
    "   <Link rel='http://schemas.google.com/g/2010#updates-from'
    "     href='http://buzz.googleapis.com/feeds/102034052532213921839/public/posted'
    "     type='application/atom+xml'/>
    </XRD>




from here I can grab any service that I need.
How WebFinger works
   XRD Profile
    <?xml version='1.0'?>
    <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'>
    "   <Subject>acct:chris.messina@gmail.com</Subject>
    "   <Alias>http://www.google.com/profiles/chris.messina</Alias>
    "   <Link rel='http://portablecontacts.net/spec/1.0'
    "     href='http://www-opensocial.googleusercontent.com/api/people/'/>
    "   <Link rel='http://webfinger.net/rel/profile-page'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://microformats.org/profile/hcard'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://gmpg.org/xfn/11'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='http://specs.openid.net/auth/2.0/provider'
    "     href='http://www.google.com/profiles/chris.messina'/>
    "   <Link rel='describedby'
    "     href='http://www.google.com/profiles/chris.messina'
    "     type='text/html'/>
    "   <Link rel='describedby'
    "     href='http://s2.googleusercontent.com/webfinger/?q=chris.messina%40gmail.com&amp;fmt=foaf'
    "     type='application/rdf+xml'/>
    "   <Link rel='http://schemas.google.com/g/2010#updates-from'
    "     href='http://buzz.googleapis.com/feeds/102034052532213921839/public/posted'
    "     type='application/atom+xml'/>
    </XRD>




from here I can grab any service that I need.
Putting it all together




                        Enter email:   Email     Connect




so let’s go back to the beginning of this flow.
Putting it all together




                        Enter email:   chris.messina@gmail.com   Connect




so let’s go back to the beginning of this flow.
Putting it all together




                        Enter email:   chris.messina@gmail.com   Connect




so let’s go back to the beginning of this flow.
Putting it all together
   OpenID Authentication




presuming I’m already logged in, I’ll be taken to a page like this, where I can click on button
to sign in.
Putting it all together
Easier sign-in using email




                  Signed in as: Chris Messina

                                                
Putting it all together
Easier sign-in using email




                  Signed in as: Chris Messina

                                                
http://openid.net
                      http://webfinger.info




to learn more, this is where it all happens.
Friends & Contacts
Portable Contacts & OAuth
This is my social graph — a view of my connections and relationships.
now say that I find some new site that I want to sign up for and try out...

let’s say that site is Blippy, a website that allows you to see and discuss you and your friends’
shopping habits. but say I don’t want to use my Twitter or Facebook account to sign up —
not yet.
now say that I find some new site that I want to sign up for and try out...

let’s say that site is Blippy, a website that allows you to see and discuss you and your friends’
shopping habits. but say I don’t want to use my Twitter or Facebook account to sign up —
not yet.
when I arrive at my profile, you’ll see that it’s pretty bleak.

The problem, as you can see (CLICK) is that I’m not following anyone on this service. Of
course to get the benefits from this service, I need to add friends...
when I arrive at my profile, you’ll see that it’s pretty bleak.

The problem, as you can see (CLICK) is that I’m not following anyone on this service. Of
course to get the benefits from this service, I need to add friends...
I could try searching for my friends, but that’s timely and I really don’t want to be bothered.
?




I could try searching for my friends, but that’s timely and I really don’t want to be bothered.
So how do I bring my social graph that I store and maintain on another site into Blippy?
?




So how do I bring my social graph that I store and maintain on another site into Blippy?
Well, the obvious thing is import my address book and see which of my friends is already on
the site...

However, the last thing that you want to do is ask for a user’s password. That’s information
that should only be shared between the user and their provider.

Fortunately, there’s an alternative that’s gaining widespread adoption.
Well, the obvious thing is import my address book and see which of my friends is already on
the site...

However, the last thing that you want to do is ask for a user’s password. That’s information
that should only be shared between the user and their provider.

Fortunately, there’s an alternative that’s gaining widespread adoption.
it’s just a bad idea. don’t do it, [CLICK]
marshallk
                               Marshall Kirkpatrick




and don’t betray your users.
anyway, the answer to the question of how to get the address book into Blippy safely? [CLICK]

Portable Contacts.
?




anyway, the answer to the question of how to get the address book into Blippy safely? [CLICK]

Portable Contacts.
Portable Contacts!




anyway, the answer to the question of how to get the address book into Blippy safely? [CLICK]

Portable Contacts.
Portable Contacts Primer
                           {
                             "startIndex": 10,
                             "itemsPerPage": 10,
                             "totalResults": 12,
                               {
                                 "id": "703887",
                                 "displayName": "Mark Hashimoto",
                                 "name": {
                                   "familyName": "Hashimoto",
                                   "givenName": "Mark"
                                 },
                                 "birthday": "0000-01-16",
                                 "gender": "male",
                                 "drinker": "heavily",
                                 "tags": [
                                   "plaxo guy"
                                 ],
                                 "emails": [
                                   {
                                     "value": "mhashimoto-04@plaxo.com",
                                     "type": "work",
                                     "primary": "true"
                                   },
                                   {
                                     "value": "mhashimoto@plaxo.com",
                                     "type": "home"
                                   }
                                 ],
                                 "urls": [
                                   {
                                     "value": "http://www.seeyellow.com",
                                     "type": "work"
                                   },

                               ...
                           }




So what does Portable Contacts look like? Your typical JSON feed...
Portable Contacts Primer
   Typical Response
                     {
                         {
                           "id": "1",
                           "name": "Chris Messina",
                           "urls": [
                             { "value": "http://factoryjoe.com/blog", "type": "blog" }
                           ]
                         },
                         {
                           "id": "2",
                           "name": "Joseph Smarr",
                           "emails": [
                             { "value": "joseph@plaxo.com", "type": "work", "primary": "true" },
                             { "value": "jsmarr@gmail.com", "type": "home" }
                           ],
                         }
                     }




with some handy filtering abilities.

So you take a basic PoCo snippet like this and tweak your API call...
Portable Contacts Primer
   filterBy=name&filterOp=startswith&filterValue=Chr
                        {
                            {
                              "id": "1",
                              "name": "Chris Messina",
                              "urls": [
                                { "value": "http://factoryjoe.com/blog", "type": "blog" }
                              ]
                            },
                            {
                              "id": "2",
                              "name": "Joseph Smarr",
                              "emails": [
                                { "value": "joseph@plaxo.com", "type": "work", "primary": "true" },
                                { "value": "jsmarr@gmail.com", "type": "home" }
                              ],
                            }
                        }




and you’ll get this..
Portable Contacts Primer
   filterBy=name&filterOp=contacts&filterValue=plaxo.com
                      {
                          {
                            "id": "1",
                            "name": "Chris Messina",
                            "urls": [
                              { "value": "http://factoryjoe.com/blog", "type": "blog" }
                            ]
                          },
                          {
                            "id": "2",
                            "name": "Joseph Smarr",
                            "emails": [
                              { "value": "joseph@plaxo.com", "type": "work", "primary": "true" },
                              { "value": "jsmarr@gmail.com", "type": "home" }
                            ],
                          }
                      }




change it again, and you’ll get this.
So let’s go back to Blippy.
Say I want to import my address book, but this time, let’s get rid of my password (CLICK).

Using Portable Contacts, this can be as easy as a single click.
So let’s go back to Blippy.
Say I want to import my address book, but this time, let’s get rid of my password (CLICK).

Using Portable Contacts, this can be as easy as a single click.
Blippy.com

                      Blippy.com is asking for some information from your Google Account




So let’s go back to Blippy.
Say I want to import my address book, but this time, let’s get rid of my password (CLICK).

Using Portable Contacts, this can be as easy as a single click.
56 Following




and here we are — back in the app with activity without needing to manually find my friends.
http://portablecontacts.net




you can learn more at portablecontacts.net.
Now, the secret behind this is called OAuth.

How many people are familiar with OAuth?
Now, the secret behind this is called OAuth.

How many people are familiar with OAuth?
Photo by Damian Morys


Think of OAuth like your valet key for the web.
On the desktop




let’s take a look at how OAuth works on the desktop using the Yammer Adobe Air app.
when you launch the app for the first time, you’ll be asked to authorize access to your data.
the app will launch a page like this in your browser and you click authorize.
the app will launch a page like this in your browser and you click authorize.
4D56




next you’re given a special code to prevent what’s called “session fixation attack”.
return to the app and enter the code
and now you’ve granted access to the desktop app without needing to provide your
password.
On the web
Google and the Social Web (Mexico City Dev Fest 2010)
Google and the Social Web (Mexico City Dev Fest 2010)
Friendfeed

Friendfeed.com is asking for some information from your Google Account
Now I’m signed in, and my contacts have already been brought in with a simple click.

Very simple, especially if I’m already signed in to my Google account.
On mobile
Start out with an iPhone app call FlightTrackPro.
now this app syncs with your TripIt account. So here we are in the app, and we need to login
to connect to our TripIt account.
We click login...
now this app syncs with your TripIt account. So here we are in the app, and we need to login
to connect to our TripIt account.
We click login...
and we’re taken into Safari, where we sign in through the web browser.
chris@domain.com

                                          ••••••••




and we’re taken into Safari, where we sign in through the web browser.
We see an access request... and scrolling down
we see that we can Grant Access here. Note that all the permissions are spelled out simply
here.
we see that we can Grant Access here. Note that all the permissions are spelled out simply
here.
If we grant access, Safari fades out, bringing the app back into focus.
and voila, with OAuth, FlightTrackPro now has access to our trips.

Since FlightTrack Pro isn’t owned by TripIt, I never had to give my password to FlightTrack
Pro.
http://oauth.net




you can learn more at oauth.net
Activities
ActivityStreams
1999




RSS 0.9 was introduced in 1999 by Netscape as a content-gathering mechanism for My
Netscape Network (MNN) back when portals were all the rage (pre-social networks).

By providing a simple snapshot-in-a-document, web site producers acquired audience
through the presence of their content on My Netscape.
so, you’d have someone like the NYTimes wanting to grow their online audience...
...and they’d use RSS to get their content into the Netscape portal.
Copyright 2000 ZWave, LLC




...and they’d use RSS to get their content into the Netscape portal.
RSS

       <?xml version="1.0" encoding="utf-8"?>
       <rss version="2.0">
         <channel>
            <item>
              <title>When Will Location-Based Coupons Take Off?</title>
              <link>http://bits.blogs.nytimes.com/2010/03/12/when-will-
                location-based-mobile-coupons-take-off/</link>
              <pubDate>Fri, 12 Mar 2010 21:38:26 +0000</pubDate>
              <creator>By CLAIRE CAIN MILLER</creator>
              <description>
                People want to receive location-based cellphone coupons,
                but most have not, according to a Web analytics firm.
              </description>
            </item>
         </channel>
       </rss>




RSS looks like this.
RSS




                    title + link + description




the only mandatory fields in RSS are title, link, and description — which makes it an
extremely flexible format. The only problem is that aggregators have to do a lot of
guesswork about what’s in it.

this was complicated by the various flavors of RSS (0.9, 0.91, 0.92, 0.93, 2.0 et al)
2005




this in 2005, a group of people got together to create a “better specified” syndication format
called Atom.
Atom

      <?xml version="1.0" encoding="utf-8"?>
      <feed xmlns="http://www.w3.org/2005/Atom">
        <entry>
            <title>When Will Location-Based Coupons Take Off?</title>
            <link rel=”alternate”>http://bits.blogs.nytimes.com/2010/03/12/when-will-
                location-based-mobile-coupons-take-off/</link>
            <id>urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6</id>
            <updated>Fri, 12 Mar 2010 21:38:26 +0000</updated>
            <author>
                <name>By CLAIRE CAIN MILLER</name>
            </author>
            <summary>
                People want to receive location-based cellphone coupons,
                but most have not, according to a Web analytics firm.
            </summary>
        </entry>
      </feed>




here’s what ATOM looks like.
Atom




                      title + link + summary +
                       author + id + updated




so, in five years, the required elements of RSS essentially doubled, and we now had a unique
way to identity a feed entry, the author, and when it was last changed.
even still, this format was really still designed for the case of syndicating ARTICLES into
PORTALS.
Copyright 2000 ZWave, LLC


even still, this format was really still designed for the case of syndicating ARTICLES into
PORTALS.
2010
so, you take an article like this, turn it into RSS or ATOM...
so, you take an article like this, turn it into RSS or ATOM...
and the most interesting thing the browser can do for you is turn this rich and well designed
page into something like this... [click]
and the most interesting thing the browser can do for you is turn this rich and well designed
page into something like this... [click]
and now you know why the newsfeed looks like it does.

spot the similarity?
and now you know why the newsfeed looks like it does.

spot the similarity?
and yet we know that people are performing more and more activities online.

and yet, regardless of its type, sites only publish this information as RSS or Atom
so no matter what, to sites like Friendfeed, Facebook, or Google Buzz, all these activities all
look the same.
icons by Fast Icon


so how do you differentiate all these different feeds when you only have one basic format?
Google and the Social Web (Mexico City Dev Fest 2010)
actor verb object target




the basic model of ActivityStreams follows the “actor verb object”, “target”archetype.
Atom

       <?xml version="1.0" encoding="utf-8"?>
       <feed xmlns="http://www.w3.org/2005/Atom">
         <entry>
              <title>...</title>
              <link rel=”alternate”>...</link>
              <id>...</id>
              <updated>...</updated>
              <author>
                 <name>...</name>
              </author>
              <summary>
                 ...
              </summary>
         </entry>
       </feed>




well, let’s take your typical Atom feed...
Atom




                      title + link + summary +
                       author + id + updated




remember that the foundation of Atom is title, link, summary, author, id, and the updated
time.
Atom+ActivityStreams




                   title + link + summary +
                     author + id + updated
                 + verb + object-type + target




now add verb, object-type, and target
Atom+ActivityStreams
   <?xml version="1.0" encoding="utf-8"?>
   <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/">
     <entry>
         <title>...</title>
         <link rel=”alternate”>...</link>
         <id>...</id>
         <updated>...</updated>
         <author>
             <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type>
             <name>...</name>
         </author>
         <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>
         <activity:object>
             <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type>
             <content type=”html”>
               ...
             </content>
         </activity:object>
     </entry>
   </feed>




here’s what Atom+ActivityStreams looks like. Similar,
Atom+ActivityStreams
    <?xml version="1.0" encoding="utf-8"?>
                                              xmlns:activity="http://activitystrea.ms/spec/1.0/"
    <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/">
      <entry>
          <title>...</title>
          <link rel=”alternate”>...</link>
          <id>...</id>
          <updated>...</updated>
          <author>
              <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type>
              <name>...</name>
          </author>
          <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>
          <activity:object>
              <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type>
              <content type=”html”>
                ...
              </content>
          </activity:object>
      </entry>
    </feed>




here are the new parts.
Atom+ActivityStreams
    <?xml version="1.0" encoding="utf-8"?>
    <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/">
      <entry>
          <title>...</title>
          <link rel=”alternate”>...</link>
          <id>...</id>
          <updated>...</updated>
          <author>
                                                                       person
              <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type>
              <name>...</name>
          </author>
                                                            post
          <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>
          <activity:object>
                                                                       note
              <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type>
              <content type=”html”>
                ...
              </content>
          </activity:object>
      </entry>
    </feed>




so, see what this adds for the aggregator?

as the most basic example, we’re essentially telling the aggregator that a person posted a
note.
Verbs &
   Objects




and to begin with, we already support a dozen verbs and several well-known objects.
Verbs &                        • Add Friend        • Article
   Objects                        • Check-in          • Audio
                                  • Favorite          • Bookmark
                                  • Follow            • Comment
                                  • Like              • File
                                  • Join              • Folder
                                  • Play              • Group
                                  • Post              • List
                                  • Save              • Note
                                  • Share             • Person
                                  • Tag               • Photo
                                  • Update            • Photo Album
                                                      • Place
                                                      • Playlist
                                                      • Product
                                                      • Review
                                                      • Service
                                                      • Status
                                                        Video

and to begin with, we already support a dozen verbs and several well-known objects.
Verbs &                        • Add Friend        • Article
   Objects                        • Check-in          • Audio
                                  • Favorite          • Bookmark
                                  • Follow            • Comment
                                  • Like              • File
                    v0.8          • Join
                                  • Play
                                                      • Folder
                                                      • Group
                                  • Post              • List
                                  • Save              • Note
                                  • Share             • Person
                                  • Tag               • Photo
                                  • Update            • Photo Album
                                                      • Place
                                                      • Playlist
                                                      • Product
                                                      • Review
                                                      • Service
                                                      • Status
                                                        Video

and to begin with, we already support a dozen verbs and several well-known objects.
Process




and the process for extending the core schema? well’s it’s pretty simple... and based on the
microformats process.
Process


                                                     1. Ask why.




and the process for extending the core schema? well’s it’s pretty simple... and based on the
microformats process.
Process


                                                     1. Ask why.
                                                     2. Do your homework




and the process for extending the core schema? well’s it’s pretty simple... and based on the
microformats process.
Process


                                                     1. Ask why.
                                                     2. Do your homework
                                                     3. Propose




and the process for extending the core schema? well’s it’s pretty simple... and based on the
microformats process.
Process


                                                     1. Ask why.
                                                     2. Do your homework
                                                     3. Propose
                                                     4. Iterate




and the process for extending the core schema? well’s it’s pretty simple... and based on the
microformats process.
Process


                                                     1. Ask why.
                                                     2. Do your homework
                                                     3. Propose
                                                     4. Iterate
                                                     5. Interoperate




and the process for extending the core schema? well’s it’s pretty simple... and based on the
microformats process.
http://activitystrea.ms




to learn more, this is where it all happens.

so, what does and activitystream-formatted feed look like?
Connect
The anatomy of connect
   ...according to David Recordon




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)
   • Activity (poked, bought, shared, blogged)




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)
   • Activity (poked, bought, shared, blogged)


   • Goal: Discovery of new people and content




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)
   • Activity (poked, bought, shared, blogged)


   Social Building Blocks




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)
   • Activity (poked, bought, shared, blogged)


   Social Building Blocks
   • Identity & Profile




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)
   • Activity (poked, bought, shared, blogged)


   Social Building Blocks
   • Identity & Profile
   • Friends & Contacts




   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
The anatomy of connect
   ...according to David Recordon
   • Profile (identity, accounts, profiles)
   • Relationships (followers, friends, contacts)
   • Content (posts, photos, videos, links)
   • Activity (poked, bought, shared, blogged)


   Social Building Blocks
   • Identity & Profile
   • Friends & Contacts
   • Activities



   Source O’Reilly Radar.



Profile (identity, accounts, profiles)
Relationships (followers, friends, contacts)
Content (posts, photos, videos, links)
Activity (poked, bought, shared, blogged)

Goal: Discovery of new people and content
Connect



and so I before I joined Google, I proposed a simple idea built upon all these open
technologies called OpenID Connect that ties all these technologies that I’ve told you about
together.

This concept is emerging and I think you’ll see some exciting moves in this area this year —
so I want to leave you with that vision for the future.
Google Search   I’m Feeling Lucky




and when you think about Google and the social web, I think it’s important to really consider
where we’re headed.
Google Search   I’m Feeling Lucky
                                                                Social




and when you think about Google and the social web, I think it’s important to really consider
where we’re headed.
this is what we think of when we think of the social web, and the most exciting thing about it
[CLICK]

is that there’s plenty of space for you to establish yourself and make a name for your app.
YOU



this is what we think of when we think of the social web, and the most exciting thing about it
[CLICK]

is that there’s plenty of space for you to establish yourself and make a name for your app.
messina@google.com   •   @chrismessina   •   factoryjoe.com
Don’t forget! GTUG Meetup at 6pm

More Related Content

What's hot

Google Plus Quickstart Guide
Google Plus Quickstart GuideGoogle Plus Quickstart Guide
Google Plus Quickstart Guideamw403
 
LUON WassUp recap - mar 2014 - 1. the search landscape
LUON WassUp recap  - mar 2014 - 1. the search landscapeLUON WassUp recap  - mar 2014 - 1. the search landscape
LUON WassUp recap - mar 2014 - 1. the search landscapeLUON
 
Google Plus briefing notes
Google Plus briefing notesGoogle Plus briefing notes
Google Plus briefing notesNixonMcInnes
 
The Newest Challenger To SEO: Social Discovery
The Newest Challenger To SEO: Social DiscoveryThe Newest Challenger To SEO: Social Discovery
The Newest Challenger To SEO: Social DiscoveryCommand Partners
 
Social Media for Business and World-Class Blogging
Social Media for Business and World-Class BloggingSocial Media for Business and World-Class Blogging
Social Media for Business and World-Class BloggingLouis Gray
 
Visual Guide to Circles in Google+ by @ross
Visual Guide to Circles in Google+ by @rossVisual Guide to Circles in Google+ by @ross
Visual Guide to Circles in Google+ by @rossRoss Mayfield
 
Nurun google+ overview
Nurun google+ overviewNurun google+ overview
Nurun google+ overviewNurun
 
What is Google Plus
What is Google PlusWhat is Google Plus
What is Google PlusPeta Hopkins
 
Google plus Revealed! Why you should start using Goggle plus today
Google plus Revealed! Why you should start using Goggle plus todayGoogle plus Revealed! Why you should start using Goggle plus today
Google plus Revealed! Why you should start using Goggle plus today4FingersMedia
 
Bay Area Childrens Theatre DMA
Bay Area Childrens Theatre DMABay Area Childrens Theatre DMA
Bay Area Childrens Theatre DMADevon Smith
 
Beginners Guide to Google+ for Social Selling
Beginners Guide to Google+ for Social SellingBeginners Guide to Google+ for Social Selling
Beginners Guide to Google+ for Social SellingInsideView
 
The Community Manager (v1.1)
The Community Manager (v1.1)The Community Manager (v1.1)
The Community Manager (v1.1)David Hachez
 
A guide to Google + and its SEO benefits
A guide to Google + and its SEO benefitsA guide to Google + and its SEO benefits
A guide to Google + and its SEO benefitsMicrosoft
 
Awesome Genius
Awesome GeniusAwesome Genius
Awesome Geniusion tudor
 
Podcast Storyboard
Podcast StoryboardPodcast Storyboard
Podcast StoryboardLevy Nguyen
 

What's hot (20)

Google Plus Quickstart Guide
Google Plus Quickstart GuideGoogle Plus Quickstart Guide
Google Plus Quickstart Guide
 
LUON WassUp recap - mar 2014 - 1. the search landscape
LUON WassUp recap  - mar 2014 - 1. the search landscapeLUON WassUp recap  - mar 2014 - 1. the search landscape
LUON WassUp recap - mar 2014 - 1. the search landscape
 
Google Plus briefing notes
Google Plus briefing notesGoogle Plus briefing notes
Google Plus briefing notes
 
The Newest Challenger To SEO: Social Discovery
The Newest Challenger To SEO: Social DiscoveryThe Newest Challenger To SEO: Social Discovery
The Newest Challenger To SEO: Social Discovery
 
Social Media for Business and World-Class Blogging
Social Media for Business and World-Class BloggingSocial Media for Business and World-Class Blogging
Social Media for Business and World-Class Blogging
 
Visual Guide to Circles in Google+ by @ross
Visual Guide to Circles in Google+ by @rossVisual Guide to Circles in Google+ by @ross
Visual Guide to Circles in Google+ by @ross
 
Best 5 Uses of Google+
Best 5 Uses of Google+Best 5 Uses of Google+
Best 5 Uses of Google+
 
Nurun google+ overview
Nurun google+ overviewNurun google+ overview
Nurun google+ overview
 
What is Google Plus
What is Google PlusWhat is Google Plus
What is Google Plus
 
Google plus Revealed! Why you should start using Goggle plus today
Google plus Revealed! Why you should start using Goggle plus todayGoogle plus Revealed! Why you should start using Goggle plus today
Google plus Revealed! Why you should start using Goggle plus today
 
Bay Area Childrens Theatre DMA
Bay Area Childrens Theatre DMABay Area Childrens Theatre DMA
Bay Area Childrens Theatre DMA
 
Google+ 201 Guide
Google+ 201 GuideGoogle+ 201 Guide
Google+ 201 Guide
 
Beginners Guide to Google+ for Social Selling
Beginners Guide to Google+ for Social SellingBeginners Guide to Google+ for Social Selling
Beginners Guide to Google+ for Social Selling
 
The Community Manager (v1.1)
The Community Manager (v1.1)The Community Manager (v1.1)
The Community Manager (v1.1)
 
Google Plus
Google PlusGoogle Plus
Google Plus
 
Google+
Google+Google+
Google+
 
Google+ Pubcon Presentation
Google+ Pubcon PresentationGoogle+ Pubcon Presentation
Google+ Pubcon Presentation
 
A guide to Google + and its SEO benefits
A guide to Google + and its SEO benefitsA guide to Google + and its SEO benefits
A guide to Google + and its SEO benefits
 
Awesome Genius
Awesome GeniusAwesome Genius
Awesome Genius
 
Podcast Storyboard
Podcast StoryboardPodcast Storyboard
Podcast Storyboard
 

Viewers also liked

Americas Iron Ore E Y0912409
Americas  Iron  Ore  E Y0912409Americas  Iron  Ore  E Y0912409
Americas Iron Ore E Y0912409InformaGroup
 
What Is A Producer?
What Is A Producer?What Is A Producer?
What Is A Producer?apt
 
Trabajo sociales 1º eso Suleika Aviles
Trabajo sociales 1º eso Suleika AvilesTrabajo sociales 1º eso Suleika Aviles
Trabajo sociales 1º eso Suleika Avilesmadreportero
 
Mercy ehrler-portfolio
Mercy ehrler-portfolioMercy ehrler-portfolio
Mercy ehrler-portfolioMercy Ehrler
 
Easy Office Design Tamara Romeo
Easy Office Design Tamara RomeoEasy Office Design Tamara Romeo
Easy Office Design Tamara RomeoNicole Kuester
 
SoBigData. European Research Infrastructure for Big Data and Social Mining
SoBigData. European Research Infrastructure for Big Data and Social MiningSoBigData. European Research Infrastructure for Big Data and Social Mining
SoBigData. European Research Infrastructure for Big Data and Social MiningResearch Data Alliance
 
"Plans are worthless, but planning is essential"
"Plans are worthless, but planning is essential""Plans are worthless, but planning is essential"
"Plans are worthless, but planning is essential"Research Data Alliance
 
Cultural Heritage: when data are much worst than one can believe
Cultural Heritage: when data are much worst than one can believe Cultural Heritage: when data are much worst than one can believe
Cultural Heritage: when data are much worst than one can believe Research Data Alliance
 
Catalogo dqi oct ver 3.1 industria
Catalogo dqi oct ver 3.1 industriaCatalogo dqi oct ver 3.1 industria
Catalogo dqi oct ver 3.1 industriaEnriqueMKT
 
Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation...
 Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation... Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation...
Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation...hydrologyproject001
 
Herramientas multimedia
Herramientas multimediaHerramientas multimedia
Herramientas multimediaNelly Guzman
 
Dijimos que todo estaba bien....
Dijimos que todo estaba bien....Dijimos que todo estaba bien....
Dijimos que todo estaba bien....Alexander Perdomo
 
бизнес инкубатор
бизнес инкубаторбизнес инкубатор
бизнес инкубатор_Slava
 

Viewers also liked (20)

Americas Iron Ore E Y0912409
Americas  Iron  Ore  E Y0912409Americas  Iron  Ore  E Y0912409
Americas Iron Ore E Y0912409
 
What Is A Producer?
What Is A Producer?What Is A Producer?
What Is A Producer?
 
Trabajo sociales 1º eso Suleika Aviles
Trabajo sociales 1º eso Suleika AvilesTrabajo sociales 1º eso Suleika Aviles
Trabajo sociales 1º eso Suleika Aviles
 
Pakistan Expert TransNET
Pakistan Expert TransNETPakistan Expert TransNET
Pakistan Expert TransNET
 
Mercy ehrler-portfolio
Mercy ehrler-portfolioMercy ehrler-portfolio
Mercy ehrler-portfolio
 
penal I
penal Ipenal I
penal I
 
Future Presentation Slides
Future Presentation SlidesFuture Presentation Slides
Future Presentation Slides
 
Easy Office Design Tamara Romeo
Easy Office Design Tamara RomeoEasy Office Design Tamara Romeo
Easy Office Design Tamara Romeo
 
SoBigData. European Research Infrastructure for Big Data and Social Mining
SoBigData. European Research Infrastructure for Big Data and Social MiningSoBigData. European Research Infrastructure for Big Data and Social Mining
SoBigData. European Research Infrastructure for Big Data and Social Mining
 
"Plans are worthless, but planning is essential"
"Plans are worthless, but planning is essential""Plans are worthless, but planning is essential"
"Plans are worthless, but planning is essential"
 
Cultural Heritage: when data are much worst than one can believe
Cultural Heritage: when data are much worst than one can believe Cultural Heritage: when data are much worst than one can believe
Cultural Heritage: when data are much worst than one can believe
 
RDA in a Nutshell - December 2016
RDA in a Nutshell - December 2016RDA in a Nutshell - December 2016
RDA in a Nutshell - December 2016
 
"Cool" metadata for FAIR data
"Cool" metadata for FAIR data"Cool" metadata for FAIR data
"Cool" metadata for FAIR data
 
Rda in a_nutshell_january_2017
Rda in a_nutshell_january_2017Rda in a_nutshell_january_2017
Rda in a_nutshell_january_2017
 
Catalogo dqi oct ver 3.1 industria
Catalogo dqi oct ver 3.1 industriaCatalogo dqi oct ver 3.1 industria
Catalogo dqi oct ver 3.1 industria
 
Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation...
 Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation... Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation...
Download-manuals-surface water-waterlevel-32howtocarryoutsecondaryvalidation...
 
Cia jlau-3
Cia jlau-3Cia jlau-3
Cia jlau-3
 
Herramientas multimedia
Herramientas multimediaHerramientas multimedia
Herramientas multimedia
 
Dijimos que todo estaba bien....
Dijimos que todo estaba bien....Dijimos que todo estaba bien....
Dijimos que todo estaba bien....
 
бизнес инкубатор
бизнес инкубаторбизнес инкубатор
бизнес инкубатор
 

Similar to Google and the Social Web (Mexico City Dev Fest 2010)

The Pluses And Minuses of Google+ Plus
The Pluses And Minuses of Google+ PlusThe Pluses And Minuses of Google+ Plus
The Pluses And Minuses of Google+ PlusAdria Richards
 
Google+ How Can It Help Enhance Your Personal Learning Network.
Google+ How Can It Help Enhance Your Personal Learning Network.Google+ How Can It Help Enhance Your Personal Learning Network.
Google+ How Can It Help Enhance Your Personal Learning Network.St. Petersburg College
 
Whats Web 2.0 Got To Do With Research?
Whats Web 2.0 Got To Do With Research?Whats Web 2.0 Got To Do With Research?
Whats Web 2.0 Got To Do With Research?Timothy Collinson
 
Google plus business page
Google plus business pageGoogle plus business page
Google plus business pageMrElshMedia
 
How to use Google Plus and Pinterest for Recruiting
How to use Google Plus and Pinterest for RecruitingHow to use Google Plus and Pinterest for Recruiting
How to use Google Plus and Pinterest for RecruitingHM Revenue & Customs
 
Web 2.0 And Social Networking
Web 2.0 And Social NetworkingWeb 2.0 And Social Networking
Web 2.0 And Social NetworkingAngela Brandt
 
WassUp Recap - June 2012 - session 1
WassUp Recap - June 2012 - session 1WassUp Recap - June 2012 - session 1
WassUp Recap - June 2012 - session 1Geert De Laet
 
Content Ecosystem Presentation for Holderness Chamber
Content Ecosystem Presentation for Holderness ChamberContent Ecosystem Presentation for Holderness Chamber
Content Ecosystem Presentation for Holderness ChamberLeslie Poston
 
The freedom to be you
The freedom to be youThe freedom to be you
The freedom to be youAde Oshineye
 
The Business Show - Google+ & Google Authorship
The Business Show - Google+ & Google AuthorshipThe Business Show - Google+ & Google Authorship
The Business Show - Google+ & Google AuthorshipReflect Digital
 
Google plus for ete565
Google plus for ete565Google plus for ete565
Google plus for ete565ImpactPlayr
 
Presentación: Google + overview (Google, Maxie 2011)
Presentación: Google + overview (Google, Maxie 2011)Presentación: Google + overview (Google, Maxie 2011)
Presentación: Google + overview (Google, Maxie 2011)Retelur Marketing
 
Google+ Overview For Brands & Marketers
Google+ Overview For Brands & MarketersGoogle+ Overview For Brands & Marketers
Google+ Overview For Brands & MarketersDaniel Cho
 
Collaboration and Website Tools for TLI Lincs
Collaboration and Website Tools for TLI LincsCollaboration and Website Tools for TLI Lincs
Collaboration and Website Tools for TLI LincsLasa UK
 
Social medai marketing
Social medai marketingSocial medai marketing
Social medai marketingSubash T
 
Time for true radicals
Time for true radicalsTime for true radicals
Time for true radicalsGareth Kay
 
Google apps latest 2013 baw
Google apps latest 2013 bawGoogle apps latest 2013 baw
Google apps latest 2013 bawRita Zeinstejer
 

Similar to Google and the Social Web (Mexico City Dev Fest 2010) (20)

The Pluses And Minuses of Google+ Plus
The Pluses And Minuses of Google+ PlusThe Pluses And Minuses of Google+ Plus
The Pluses And Minuses of Google+ Plus
 
Google+ How Can It Help Enhance Your Personal Learning Network.
Google+ How Can It Help Enhance Your Personal Learning Network.Google+ How Can It Help Enhance Your Personal Learning Network.
Google+ How Can It Help Enhance Your Personal Learning Network.
 
Whats Web 2.0 Got To Do With Research?
Whats Web 2.0 Got To Do With Research?Whats Web 2.0 Got To Do With Research?
Whats Web 2.0 Got To Do With Research?
 
Google plus business page
Google plus business pageGoogle plus business page
Google plus business page
 
How to use Google Plus and Pinterest for Recruiting
How to use Google Plus and Pinterest for RecruitingHow to use Google Plus and Pinterest for Recruiting
How to use Google Plus and Pinterest for Recruiting
 
Web 2.0 And Social Networking
Web 2.0 And Social NetworkingWeb 2.0 And Social Networking
Web 2.0 And Social Networking
 
WassUp Recap - June 2012 - session 1
WassUp Recap - June 2012 - session 1WassUp Recap - June 2012 - session 1
WassUp Recap - June 2012 - session 1
 
Content Ecosystem Presentation for Holderness Chamber
Content Ecosystem Presentation for Holderness ChamberContent Ecosystem Presentation for Holderness Chamber
Content Ecosystem Presentation for Holderness Chamber
 
Ade Oshineye Google
Ade Oshineye  GoogleAde Oshineye  Google
Ade Oshineye Google
 
The freedom to be you
The freedom to be youThe freedom to be you
The freedom to be you
 
Google Plus +
Google Plus +Google Plus +
Google Plus +
 
The Business Show - Google+ & Google Authorship
The Business Show - Google+ & Google AuthorshipThe Business Show - Google+ & Google Authorship
The Business Show - Google+ & Google Authorship
 
Google plus for ete565
Google plus for ete565Google plus for ete565
Google plus for ete565
 
Presentación: Google + overview (Google, Maxie 2011)
Presentación: Google + overview (Google, Maxie 2011)Presentación: Google + overview (Google, Maxie 2011)
Presentación: Google + overview (Google, Maxie 2011)
 
Google+ Overview For Brands & Marketers
Google+ Overview For Brands & MarketersGoogle+ Overview For Brands & Marketers
Google+ Overview For Brands & Marketers
 
Google +
Google +Google +
Google +
 
Collaboration and Website Tools for TLI Lincs
Collaboration and Website Tools for TLI LincsCollaboration and Website Tools for TLI Lincs
Collaboration and Website Tools for TLI Lincs
 
Social medai marketing
Social medai marketingSocial medai marketing
Social medai marketing
 
Time for true radicals
Time for true radicalsTime for true radicals
Time for true radicals
 
Google apps latest 2013 baw
Google apps latest 2013 bawGoogle apps latest 2013 baw
Google apps latest 2013 baw
 

More from Chris Messina

Uber Developer Platform Overview for Apigee Webcast
Uber Developer Platform Overview for Apigee WebcastUber Developer Platform Overview for Apigee Webcast
Uber Developer Platform Overview for Apigee WebcastChris Messina
 
Joining the conversation
Joining the conversationJoining the conversation
Joining the conversationChris Messina
 
Joining the Conversation
Joining the ConversationJoining the Conversation
Joining the ConversationChris Messina
 
Future of the Social Web and How to Stop It
Future of the Social Web and How to Stop ItFuture of the Social Web and How to Stop It
Future of the Social Web and How to Stop ItChris Messina
 
SWAT0 (variant flow)
SWAT0 (variant flow)SWAT0 (variant flow)
SWAT0 (variant flow)Chris Messina
 
Google & the open, social web
Google & the open, social webGoogle & the open, social web
Google & the open, social webChris Messina
 
OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3
OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3
OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3Chris Messina
 
Socialism, Activity Streams, & Federating The Social Web
Socialism, Activity Streams, & Federating The Social WebSocialism, Activity Streams, & Federating The Social Web
Socialism, Activity Streams, & Federating The Social WebChris Messina
 
Activity Streams, Socialism, & the Future of Open Source
Activity Streams,  Socialism,  & the Future of Open SourceActivity Streams,  Socialism,  & the Future of Open Source
Activity Streams, Socialism, & the Future of Open SourceChris Messina
 
The Open and Social Web
The Open and Social WebThe Open and Social Web
The Open and Social WebChris Messina
 
The Future of the Social Web and How to Stop It
The Future of the Social Web and How to Stop ItThe Future of the Social Web and How to Stop It
The Future of the Social Web and How to Stop ItChris Messina
 
ActivityStrea.ms: Is It Getting Streamy In Here?
ActivityStrea.ms: Is It Getting Streamy In Here?ActivityStrea.ms: Is It Getting Streamy In Here?
ActivityStrea.ms: Is It Getting Streamy In Here?Chris Messina
 
Identity is the platform (Netflix)
Identity is the platform (Netflix)Identity is the platform (Netflix)
Identity is the platform (Netflix)Chris Messina
 
Identity is the platform (Toronto)
Identity is the platform (Toronto)Identity is the platform (Toronto)
Identity is the platform (Toronto)Chris Messina
 
Identity is the Platform (Russian variant)
Identity is the Platform (Russian variant)Identity is the Platform (Russian variant)
Identity is the Platform (Russian variant)Chris Messina
 
Identity is the Platform
Identity is the PlatformIdentity is the Platform
Identity is the PlatformChris Messina
 
The Open, Social Web Workshop
The Open, Social Web WorkshopThe Open, Social Web Workshop
The Open, Social Web WorkshopChris Messina
 
Social Network Supermarkets and How to Defeat Them
Social Network Supermarkets and How to Defeat ThemSocial Network Supermarkets and How to Defeat Them
Social Network Supermarkets and How to Defeat ThemChris Messina
 
Openness In The Era Of Social Web
Openness In The Era Of Social WebOpenness In The Era Of Social Web
Openness In The Era Of Social WebChris Messina
 
The Open, Social Web (N2Y4)
The Open, Social Web (N2Y4)The Open, Social Web (N2Y4)
The Open, Social Web (N2Y4)Chris Messina
 

More from Chris Messina (20)

Uber Developer Platform Overview for Apigee Webcast
Uber Developer Platform Overview for Apigee WebcastUber Developer Platform Overview for Apigee Webcast
Uber Developer Platform Overview for Apigee Webcast
 
Joining the conversation
Joining the conversationJoining the conversation
Joining the conversation
 
Joining the Conversation
Joining the ConversationJoining the Conversation
Joining the Conversation
 
Future of the Social Web and How to Stop It
Future of the Social Web and How to Stop ItFuture of the Social Web and How to Stop It
Future of the Social Web and How to Stop It
 
SWAT0 (variant flow)
SWAT0 (variant flow)SWAT0 (variant flow)
SWAT0 (variant flow)
 
Google & the open, social web
Google & the open, social webGoogle & the open, social web
Google & the open, social web
 
OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3
OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3
OpenID & OAuth for the Consumer Web Workshop, Part 1 of 3
 
Socialism, Activity Streams, & Federating The Social Web
Socialism, Activity Streams, & Federating The Social WebSocialism, Activity Streams, & Federating The Social Web
Socialism, Activity Streams, & Federating The Social Web
 
Activity Streams, Socialism, & the Future of Open Source
Activity Streams,  Socialism,  & the Future of Open SourceActivity Streams,  Socialism,  & the Future of Open Source
Activity Streams, Socialism, & the Future of Open Source
 
The Open and Social Web
The Open and Social WebThe Open and Social Web
The Open and Social Web
 
The Future of the Social Web and How to Stop It
The Future of the Social Web and How to Stop ItThe Future of the Social Web and How to Stop It
The Future of the Social Web and How to Stop It
 
ActivityStrea.ms: Is It Getting Streamy In Here?
ActivityStrea.ms: Is It Getting Streamy In Here?ActivityStrea.ms: Is It Getting Streamy In Here?
ActivityStrea.ms: Is It Getting Streamy In Here?
 
Identity is the platform (Netflix)
Identity is the platform (Netflix)Identity is the platform (Netflix)
Identity is the platform (Netflix)
 
Identity is the platform (Toronto)
Identity is the platform (Toronto)Identity is the platform (Toronto)
Identity is the platform (Toronto)
 
Identity is the Platform (Russian variant)
Identity is the Platform (Russian variant)Identity is the Platform (Russian variant)
Identity is the Platform (Russian variant)
 
Identity is the Platform
Identity is the PlatformIdentity is the Platform
Identity is the Platform
 
The Open, Social Web Workshop
The Open, Social Web WorkshopThe Open, Social Web Workshop
The Open, Social Web Workshop
 
Social Network Supermarkets and How to Defeat Them
Social Network Supermarkets and How to Defeat ThemSocial Network Supermarkets and How to Defeat Them
Social Network Supermarkets and How to Defeat Them
 
Openness In The Era Of Social Web
Openness In The Era Of Social WebOpenness In The Era Of Social Web
Openness In The Era Of Social Web
 
The Open, Social Web (N2Y4)
The Open, Social Web (N2Y4)The Open, Social Web (N2Y4)
The Open, Social Web (N2Y4)
 

Recently uploaded

LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0DanBrown980551
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightSafe Software
 
3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud Data3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud DataEric D. Schabell
 
EMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? WebinarEMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? WebinarThousandEyes
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxKaustubhBhavsar6
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2DianaGray10
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch TuesdayIvanti
 
Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.IPLOOK Networks
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Alkin Tezuysal
 
How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Libraryshyamraj55
 
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - TechWebinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - TechProduct School
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)codyslingerland1
 
Patch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 updatePatch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 updateadam112203
 
20140402 - Smart house demo kit
20140402 - Smart house demo kit20140402 - Smart house demo kit
20140402 - Smart house demo kitJamie (Taka) Wang
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applicationsnooralam814309
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsDianaGray10
 
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfQ4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfTejal81
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTxtailishbaloch
 

Recently uploaded (20)

LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0LF Energy Webinar - Unveiling OpenEEMeter 4.0
LF Energy Webinar - Unveiling OpenEEMeter 4.0
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud Data3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud Data
 
SheDev 2024
SheDev 2024SheDev 2024
SheDev 2024
 
EMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? WebinarEMEA What is ThousandEyes? Webinar
EMEA What is ThousandEyes? Webinar
 
How to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptxHow to become a GDSC Lead GDSC MI AOE.pptx
How to become a GDSC Lead GDSC MI AOE.pptx
 
UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2UiPath Studio Web workshop series - Day 2
UiPath Studio Web workshop series - Day 2
 
March Patch Tuesday
March Patch TuesdayMarch Patch Tuesday
March Patch Tuesday
 
Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.Introduction - IPLOOK NETWORKS CO., LTD.
Introduction - IPLOOK NETWORKS CO., LTD.
 
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
Design and Modeling for MySQL SCALE 21X Pasadena, CA Mar 2024
 
How to release an Open Source Dataweave Library
How to release an Open Source Dataweave LibraryHow to release an Open Source Dataweave Library
How to release an Open Source Dataweave Library
 
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - TechWebinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
 
The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)The New Cloud World Order Is FinOps (Slideshow)
The New Cloud World Order Is FinOps (Slideshow)
 
Patch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 updatePatch notes explaining DISARM Version 1.4 update
Patch notes explaining DISARM Version 1.4 update
 
20140402 - Smart house demo kit
20140402 - Smart house demo kit20140402 - Smart house demo kit
20140402 - Smart house demo kit
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Graphene Quantum Dots-Based Composites for Biomedical Applications
Graphene Quantum Dots-Based Composites for  Biomedical ApplicationsGraphene Quantum Dots-Based Composites for  Biomedical Applications
Graphene Quantum Dots-Based Composites for Biomedical Applications
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projects
 
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfQ4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
 

Google and the Social Web (Mexico City Dev Fest 2010)

  • 1. messina@google.com • @chrismessina • factoryjoe.com
  • 2. @chris.messina buzz.google.com/chrismessina @chrismessina #devfest Hello. Here are some useful coordinates before we begin: chris.messina on Buzz; chrismessina on Twitter. The hashtag is #devfest
  • 3. Google y la Web Social
  • 4. Google Search I’m Feeling Lucky So Google is thought of by most people to be a search company. But it’s actually an information company. Even still, there’s no reason why Google shouldn’t do more to enhance its information products with social information, helping to make more information that’s relevance, timely, and useful available to everyone.
  • 5. Google Search I’m Feeling Lucky Social So Google is thought of by most people to be a search company. But it’s actually an information company. Even still, there’s no reason why Google shouldn’t do more to enhance its information products with social information, helping to make more information that’s relevance, timely, and useful available to everyone.
  • 6. chris messina Google Search I’m Feeling Lucky Social So Google is thought of by most people to be a search company. But it’s actually an information company. Even still, there’s no reason why Google shouldn’t do more to enhance its information products with social information, helping to make more information that’s relevance, timely, and useful available to everyone.
  • 7. ? but there’s still a question about what this should really look like. And a question about the right way for Google to get involved with and help advance the social web.
  • 8. Google Social Products But Google has always had social products. From Google Talk to Reader to Docs...
  • 9. Google Social Products Google Talk Google Reader Google Docs But Google has always had social products. From Google Talk to Reader to Docs...
  • 10. Google Social Products Search Communicate, show & share Blog Search Blogger Find blogs on your favorite topics Share your life online with a blog - it's quick, easy and free Earth Calendar Explore the world from your computer Organize your schedule and share events with friends Maps Docs View maps and directions Create and share your online documents, presentations and spreadsheets Web Search Google Mail Search billions of web pages Fast, searchable email with less spam Groups Create mailing lists and discussion groups Orkut Meet new people and stay in touch with friends Picasa Find, edit and share your photos Reader Get all your blogs and news feeds fast Sites Create websites and secure group wikis Talk IM and call your friends through your computer Translate View web pages in other languages YouTube Watch, upload and share videos but in fact, there’s a much broader social story at Google — it just hasn’t revealed itself with the same degree of obviousness that we see elsewhere in the industry.
  • 11. In fact it’s important to keep in mind that Google’s original algorithm, called PageRank is Google’s original “social web” product. How so?
  • 12. “PageRank can be thought of as a model of user behavior.” Sergey Brin and Larry Page, 1998 Well, in the original academic paper that described PageRank, Larry and Sergey said that PageRank “can be thought of as a model of user behavior.”
  • 13. At the time, the user model that they were describing was that of a user following links from one site to another — the “follow your nose” model of the “web of links”. From this kind of user behavior, the algorithm for PageRank was derived (click). While that model has changed over time, the basic premise that links indicate a social signals remains relevant.
  • 14. At the time, the user model that they were describing was that of a user following links from one site to another — the “follow your nose” model of the “web of links”. From this kind of user behavior, the algorithm for PageRank was derived (click). While that model has changed over time, the basic premise that links indicate a social signals remains relevant.
  • 15. At the time, the user model that they were describing was that of a user following links from one site to another — the “follow your nose” model of the “web of links”. From this kind of user behavior, the algorithm for PageRank was derived (click). While that model has changed over time, the basic premise that links indicate a social signals remains relevant.
  • 16. The signals that were once embedded in static HTML pages that could be crawled at one’s leisure are now predominantly being shared in social streams. And more importantly, the make up of social streams differs per person — which leads to an incredible opportunity to improve personalization and the relevance of search results.
  • 17. The signals that were once embedded in static HTML pages that could be crawled at one’s leisure are now predominantly being shared in social streams. And more importantly, the make up of social streams differs per person — which leads to an incredible opportunity to improve personalization and the relevance of search results.
  • 18. and so google can use those signals to personalize your search results, as they do with the social circle feature.
  • 19. and so google can use those signals to personalize your search results, as they do with the social circle feature.
  • 20. which brings us to Buzz, Google’s latest baby entry into the social web.
  • 21. This is what Buzz looks like in Gmail, in case you haven’t seen it.
  • 22. it also gives you a nice way to interact with media right from within buzz.
  • 32. Google Buzz and the social web
  • 33. “ The best way to get a sense of where the Buzz API is heading is to take a look at http://code.google.com/ apis/buzz/. You'll notice that the “coming soon” section mentions a ton of protocols—Activity Streams, Atom, AtomPub, MediaRSS, WebFinger, PubSubHubbub, Salmon, OAuth, XFN, etc. DeWitt Clinton, Google Photo by Joi Ito “The best way to get a sense of where the Buzz API is heading is to take a look at http:// code.google.com/apis/buzz/. You'll notice that the “coming soon” section mentions a ton of protocols—Activity Streams, Atom, AtomPub, MediaRSS, WebFinger, PubSubHubbub, Salmon, OAuth, XFN, etc.
  • 34. “ What it doesn't talk much about is Google. That's because the goal isn't Google specific at all. The idea is that someday, any host on the web should be able to implement these open protocols and send messages back and forth in real time with users from any network, without any one company in the middle. DeWitt Clinton, Google Photo by Joi Ito “What it doesn't talk much about is Google. That's because the goal isn't Google specific at all. The idea is that someday, any host on the web should be able to implement these open protocols and send messages back and forth in real time with users from any network, without any one company in the middle.
  • 35. “ What it doesn't talk much about is Google. That's because the goal isn't Google specific at all. The idea is that someday, any host on the web should be able to implement these open protocols and send messages back and forth in real time with users from any network, without any one company in the middle. DeWitt Clinton, Google Photo by Joi Ito “What it doesn't talk much about is Google. That's because the goal isn't Google specific at all. The idea is that someday, any host on the web should be able to implement these open protocols and send messages back and forth in real time with users from any network, without any one company in the middle.
  • 36. “ The web contains the social graph, the protocols are standard web protocols, the messages can contain whatever crazy stuff people think to put in them. Google Buzz will be just another node (a very good node, I hope) among many peers.” DeWitt Clinton, Google Photo by Joi Ito “The web contains the social graph, the protocols are standard web protocols, the messages can contain whatever crazy stuff people think to put in them. Google Buzz will be just another node (a very good node, I hope) among many peers.”
  • 37. “ The web contains the social graph, the protocols are standard web protocols, the messages can contain whatever crazy stuff people think to put in them. Google Buzz will be just another node (a very good node, I hope) among many peers.” DeWitt Clinton, Google Photo by Joi Ito This is really important. The goal of Google Buzz, while on the one hand is create an excellent social experience on the web, is also to adopt and make use of technologies that expand the size and participation on the social web.
  • 38. What is the social web?
  • 39. Image from the Opte Project So if this is the web, it’s important to understand that the goal is NOT for Google to own the web. On the contrary... [CLICK]
  • 40. { } Image from the Opte Project So if this is the web, it’s important to understand that the goal is NOT for Google to own the web. On the contrary... [CLICK]
  • 41. { } Image from the Opte Project So if this is the web, it’s important to understand that the goal is NOT for Google to own the web. On the contrary... [CLICK]
  • 42. Image from the Opte Project So if this is the web, it’s important to understand that the goal is NOT for Google to own the web. On the contrary... [CLICK]
  • 43. Image from the Opte Project the goal is for there to be many different players on the open web, providing choice for people, and competing to offer the best services around. And this isn’t just for the bigger or more popular services. The goal is for a much larger, more interconnected social web to grow larger.
  • 44. Image from the Opte Project the goal is for there to be many different players on the open web, providing choice for people, and competing to offer the best services around. And this isn’t just for the bigger or more popular services. The goal is for a much larger, more interconnected social web to grow larger.
  • 45. Image from the Opte Project the goal is for there to be many different players on the open web, providing choice for people, and competing to offer the best services around. And this isn’t just for the bigger or more popular services. The goal is for a much larger, more interconnected social web to grow larger.
  • 46. The web is better when it’s social The web is better when it’s social. And that means that we want to make sure that every page and site on the web can offer social functionality, and compelling social experiences.
  • 47. What do I mean by social? it’s about enabling new verbs on the web... verbs like follow, share, discuss, comment, mention, like, rate,
  • 48. I saw this in a local supermarket back home in San Francisco. I’ve seen similar signs all over the Mission, where I live.
  • 49. This is where the social web begins — an invitation from the real world to join others online. But the social web is about much more. However...
  • 50. “Find us on Facebook” “Follow us on Twitter” This is where the social web begins — an invitation from the real world to join others online. But the social web is about much more. However...
  • 51. Engagement & interaction This is where the social web begins — an invitation from the real world to join others online. But the social web is about much more. However...
  • 52. Consuming Participating Source: groundswell.forrester.com ...current trends indicate a 1-10-90 (the math doesn’t add up, no) split on creators, commentors, and consumers. our challenge is to flip that trend [CLICK] — to help people feel more comfortable sharing online.
  • 53. Participating Consuming Source: groundswell.forrester.com ...current trends indicate a 1-10-90 (the math doesn’t add up, no) split on creators, commentors, and consumers. our challenge is to flip that trend [CLICK] — to help people feel more comfortable sharing online.
  • 54. Google has developed OpenSocial and Friend Connect with that challenge in mind... and has found some positive successes. But we’re not done yet. In fact, I’d argue that we’re just getting started.
  • 55. • There are 40 or more active OpenSocial containers • ...representing 820 million users worldwide (June 2009) • 15,000 OpenSocial applications running on these social networks • 315M+ app installs across these social networks Google has developed OpenSocial and Friend Connect with that challenge in mind... and has found some positive successes. But we’re not done yet. In fact, I’d argue that we’re just getting started.
  • 56. • There are 40 or more active • Tens of thousands of sites and OpenSocial containers millions of blogs are using Friend Connect, and these numbers • ...representing 820 million users continue to grow. worldwide (June 2009) • 9 million 30-day-active friend • 15,000 OpenSocial applications connected sites (December running on these social networks 2009) • 315M+ app installs across these • 160,000 joins/day (which is social networks >1/second) (December 2009) Google has developed OpenSocial and Friend Connect with that challenge in mind... and has found some positive successes. But we’re not done yet. In fact, I’d argue that we’re just getting started.
  • 57. OpenSocial, Friend Connect, and the middle Site Complexity Long tail The way I see it, Google has already invested a considerable amount of resources working with partners to develop technology for the head of the tail — the OpenSocial “containers”. Google has also worked hard on Google Friend Connect. It’s the middle here that we’re looking at working on now — whose needs will be covered by a series of emerging, open building blocks that we call the “social stack”.
  • 58. OpenSocial, Friend Connect, and the middle Site Complexity Long tail The way I see it, Google has already invested a considerable amount of resources working with partners to develop technology for the head of the tail — the OpenSocial “containers”. Google has also worked hard on Google Friend Connect. It’s the middle here that we’re looking at working on now — whose needs will be covered by a series of emerging, open building blocks that we call the “social stack”.
  • 59. OpenSocial, Friend Connect, and the middle Site Complexity Long tail The way I see it, Google has already invested a considerable amount of resources working with partners to develop technology for the head of the tail — the OpenSocial “containers”. Google has also worked hard on Google Friend Connect. It’s the middle here that we’re looking at working on now — whose needs will be covered by a series of emerging, open building blocks that we call the “social stack”.
  • 60. OpenSocial, Friend Connect, and the middle Social Stack Site Complexity Long tail The way I see it, Google has already invested a considerable amount of resources working with partners to develop technology for the head of the tail — the OpenSocial “containers”. Google has also worked hard on Google Friend Connect. It’s the middle here that we’re looking at working on now — whose needs will be covered by a series of emerging, open building blocks that we call the “social stack”.
  • 61. OpenSocial, Friend Connect, and the middle Social Stack Site Complexity Long tail The way I see it, Google has already invested a considerable amount of resources working with partners to develop technology for the head of the tail — the OpenSocial “containers”. Google has also worked hard on Google Friend Connect. It’s the middle here that we’re looking at working on now — whose needs will be covered by a series of emerging, open building blocks that we call the “social stack”.
  • 63. Social Building Blocks • Identity & Profile Here’s how.
  • 64. Social Building Blocks • Identity & Profile • Friends & Contacts Here’s how.
  • 65. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities Here’s how.
  • 66. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect Here’s how.
  • 67. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect The Glue Here’s how.
  • 68. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect The Glue • Email-style Identifiers (WebFinger) Here’s how.
  • 69. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect The Glue • Email-style Identifiers (WebFinger) • Service Discovery (LRDD) Here’s how.
  • 70. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect The Glue • Email-style Identifiers (WebFinger) • Service Discovery (LRDD) • Service Authorization (OAuth) Here’s how.
  • 71. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect The Glue • Email-style Identifiers (WebFinger) • Service Discovery (LRDD) • Service Authorization (OAuth) • Distributed Conversations (Salmon) Here’s how.
  • 72. Social Building Blocks • Identity & Profile • Friends & Contacts • Activities • Connect The Glue • Email-style Identifiers (WebFinger) • Service Discovery (LRDD) • Service Authorization (OAuth) • Distributed Conversations (Salmon) • Real-time Publishing (PubSubHubbub) Here’s how.
  • 76. Photo by Teresa Stanton OpenID is like a personal skeleton key for all your web accounts. By using an account that you already have to sign up for another website, not only is it more convenient, but you are able to start developing your own universal web identity — that, if you CHOOSE TO, you can own.
  • 77. Why is OpenID important? * People use different identities for different purposes * Ultimately choice and competition is a good thing to foster in this early landscape. * With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. * Digital identity is in its infancy now; the final chapter has not yet been written.
  • 78. Why is OpenID important? • People use different identities for different purposes * People use different identities for different purposes * Ultimately choice and competition is a good thing to foster in this early landscape. * With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. * Digital identity is in its infancy now; the final chapter has not yet been written.
  • 79. Why is OpenID important? • People use different identities for different purposes • Ultimately choice and competition is a good thing to foster in this early landscape. * People use different identities for different purposes * Ultimately choice and competition is a good thing to foster in this early landscape. * With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. * Digital identity is in its infancy now; the final chapter has not yet been written.
  • 80. Why is OpenID important? • People use different identities for different purposes • Ultimately choice and competition is a good thing to foster in this early landscape. • With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. * People use different identities for different purposes * Ultimately choice and competition is a good thing to foster in this early landscape. * With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. * Digital identity is in its infancy now; the final chapter has not yet been written.
  • 81. Why is OpenID important? • People use different identities for different purposes • Ultimately choice and competition is a good thing to foster in this early landscape. • With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. • Digital identity is in its infancy now; the final chapter has not yet been written. * People use different identities for different purposes * Ultimately choice and competition is a good thing to foster in this early landscape. * With greater diversity of providers, publishers may see the potential for wider distribution of shareable content. * Digital identity is in its infancy now; the final chapter has not yet been written.
  • 82. Now, unfortunately this is what OpenID often looks like today.
  • 83. when people really just want this. their goal is to get access to their account To be fair, this is merely an uncomfortable transitional step along a much longer path towards open identity on the web. it is a means to an end, but not the end that we seek.
  • 84. when people really just want this. their goal is to get access to their account To be fair, this is merely an uncomfortable transitional step along a much longer path towards open identity on the web. it is a means to an end, but not the end that we seek.
  • 85. so this interface — with all these buttons, is what we call the “NASCAR”, which is named after the cars in the popular american racing sport.
  • 86. Photo by Timothy Vogel the result is what we call the “OpenID NASCAR” where everyone wants their brand shown on login forms.... But it’s this way for an important reason. People want — and exercise — choice when logging in.
  • 87. Contextual identity And as more relying parties come online, it’s increasing important that there is choice in identity providers. For example, the OpenID that you might want to use to sign in to Basecamp may be different from the one that you want to use to sign in to Lady Gaga’s website. And that idea proves out in case after case.
  • 88. Unique OpenID Relying Parties As of July 1, 2009 Data from Janrain So as we’ve seen an explosion in the number of OpenID relying parties in the last five years — users are carefully considering which account they want to use to sign in.
  • 89. Unique OpenID Relying Parties As of July 1, 2009 50,000 40,000 30,000 20,000 10,000 0 5 06 06 06 6 07 07 07 7 08 08 08 8 09 09 /0 /0 /0 /0 1/ 4/ 7/ 1/ 4/ 7/ 1/ 4/ 7/ 1/ 7/ 10 10 10 Data from Janrain 10 So as we’ve seen an explosion in the number of OpenID relying parties in the last five years — users are carefully considering which account they want to use to sign in.
  • 90. Unique OpenID Relying Parties As of July 1, 2009 50,000 40,000 30,000 20,000 10,000 0 5 06 06 06 6 07 07 07 7 08 08 08 8 09 09 /0 /0 /0 /0 1/ 4/ 7/ 1/ 4/ 7/ 1/ 4/ 7/ 1/ 7/ 10 10 10 Data from Janrain 10 So as we’ve seen an explosion in the number of OpenID relying parties in the last five years — users are carefully considering which account they want to use to sign in.
  • 91. Companies that have adopted OpenID So who’s actually adopted OpenID? Well, as that chart suggests, there’s a lot of folks out there. And there are more coming online everyday.
  • 92. Companies that have adopted OpenID So who’s actually adopted OpenID? Well, as that chart suggests, there’s a lot of folks out there. And there are more coming online everyday.
  • 93. OpenID Usage Trends This is some data from a company called Janrain that makes a product called RPX which makes it easy to integrate third-party authentication services.
  • 94. OpenID usage trends UserVoice Providers 13% 19% 9% 4% 2% 1% 1% 1% 52% Google Facebook Yahoo! MyOpenID Other AOL VeriSign PIP Blogger ClaimID Chart from Janrain, January 2009 I want you to look at these graphs very carefully. Each color represents a different identity provider.
  • 95. OpenID usage trends Interscope Records Providers 43% 19% 12% 1% 2% 0% 24% Google Facebook Yahoo! MyOpenID Other AOL MySpace Chart from Janrain, January 2009 ...and on each site, people use different identity providers depending on the context. INTERSCOPE — Facebook, MySpace, Yahoo, Google
  • 96. OpenID usage trends sulit.com.ph Providers 24% 10% 1% 1% 0% 64% Yahoo! Google Facebook MySpace AOL Other Chart from Janrain, January 2009 Especially when you’re thinking about an international audience, everything changes. Yahoo, Google, Facebook
  • 97. OpenID usage trends Sign in preferences across all Janrain properties 11.4% 6.3% 18.3% Google Facebook 26.6% Yahoo! Twitter Other (MySpace, Windows Live, AOL, etc) 37.4% Chart from Janrain, April 2009 Especially when you’re thinking about an international audience, everything changes.
  • 98. Making OpenID easier one of the challenges of OpenID has been figuring out how to make OpenID easier. One of the biggest challenges is helping people to know what their OpenID is and to remember it.
  • 99. people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 100. • What’s your address? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 101. • What’s your address? • What’s your phone number? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 102. • What’s your address? • What’s your phone number? • What’s your AOL screenname? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 103. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 104. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 105. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? • Twitter? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 106. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? • Twitter? • Are you on Facebook? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 107. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? • Twitter? • Are you on Facebook? • What’s your Gmail? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 108. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? • Twitter? • Are you on Facebook? • What’s your Gmail? • What’s your OpenID? people can remember their address, their phone number, AOL screenname, email, MySpace... Twitter... Facebook? Gmail...? OpenID?
  • 109. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? • Twitter? • Are you on Facebook? • What’s your Gmail? • What’s your OpenID? turns out that email addresses seem to be much more universal and memorable than an “OpenID”, and so the OpenID community has been working on ways to make it possible to use an email address as a way to bootstrap the OpenID authentication process. (more on that later)
  • 110. • What’s your address? • What’s your phone number? • What’s your AOL screenname? • What’s your email address? • What’s your MySpace? • Twitter? • Are you on Facebook? • What’s your Gmail? • What’s your OpenID? turns out that email addresses seem to be much more universal and memorable than an “OpenID”, and so the OpenID community has been working on ways to make it possible to use an email address as a way to bootstrap the OpenID authentication process. (more on that later)
  • 111. which brings us to WebFinger.
  • 112. WebFinger which brings us to WebFinger.
  • 113. The Hammer Stack Discovery for the open web WebFinger relies on an emerging set of technologies and formats that together we call “The Hammer Stack”
  • 114. How WebFinger works Enter email: Email Connect
  • 115. How WebFinger works Enter email: chris.messina@gmail.com Connect
  • 116. How WebFinger works Enter email: chris.messina@gmail.com Connect
  • 117. How WebFinger works Discovering a user’s WebFinger profile chris.messina@gmail.com So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use host-meta to pull the user’s WebFinger.
  • 118. How WebFinger works Discovering a user’s WebFinger profile chris.messina@gmail.com { local account So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use host-meta to pull the user’s WebFinger.
  • 119. How WebFinger works Discovering a user’s WebFinger profile chris.messina@gmail.com { realm So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use host-meta to pull the user’s WebFinger.
  • 120. How WebFinger works Discovering a user’s WebFinger profile chris.messina@gmail.com { realm So here’s the identifier that the user supplied. We take it and split it at the @ symbol, and use host-meta to pull the user’s WebFinger.
  • 121. How WebFinger works Use host meta to retrieve an LRDD document $curl http://gmail.com/.well-known/host-meta
  • 122. How WebFinger works Use host meta to retrieve an LRDD document $curl http://gmail.com/.well-known/host-meta
  • 123. How WebFinger works Use host meta to retrieve an LRDD document $curl http://gmail.com/.well-known/host-meta
  • 124. How WebFinger works Server returns LRDD document <?xml version='1.0' encoding='UTF-8'?> <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'      xmlns:hm='http://host-meta.net/xrd/1.0'>   <hm:Host xmlns='http://host-meta.net/xrd/1.0'>gmail.com</hm:Host>   <Link rel='lrdd'         template='http://www.google.com/s2/webfinger/?q={uri}'>     <Title>Resource Descriptor</Title>   </Link> </XRD>
  • 125. How WebFinger works Server returns LRDD document <?xml version='1.0' encoding='UTF-8'?> <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'      xmlns:hm='http://host-meta.net/xrd/1.0'>   <hm:Host xmlns='http://host-meta.net/xrd/1.0'>gmail.com</hm:Host>   <Link rel='lrdd'         template='http://www.google.com/s2/webfinger/?q={uri}'>     <Title>Resource Descriptor</Title>   </Link> </XRD>
  • 126. How WebFinger works Plugin acct: into URI Template http://www.google.com/s2/webfinger/?q={uri} so let’s bring back my email address and turn it into an acct: URI and plug it into the URI template we got from the host-meta file.
  • 127. How WebFinger works Plugin acct: into URI Template chris.messina@gmail.com http://www.google.com/s2/webfinger/?q={uri} so let’s bring back my email address and turn it into an acct: URI and plug it into the URI template we got from the host-meta file.
  • 128. How WebFinger works Plugin acct: into URI Template acct:chris.messina@gmail.com http://www.google.com/s2/webfinger/?q={uri} so let’s bring back my email address and turn it into an acct: URI and plug it into the URI template we got from the host-meta file.
  • 129. How WebFinger works Plugin acct: into URI Template acct:chris.messina@gmail.com http://www.google.com/s2/webfinger/?q={uri} so let’s bring back my email address and turn it into an acct: URI and plug it into the URI template we got from the host-meta file.
  • 130. How WebFinger works Plugin acct: into URI Template acct:chris.messina@gmail.com http://www.google.com/s2/webfinger/?q={uri} so let’s bring back my email address and turn it into an acct: URI and plug it into the URI template we got from the host-meta file.
  • 131. How WebFinger works Retrieve WebFinger document $curl http://www.google.com/s2/webfinger/?q=chris.messina@gmail.com
  • 132. How WebFinger works Retrieve WebFinger document $curl http://www.google.com/s2/webfinger/?q=chris.messina@gmail.com
  • 133. How WebFinger works Retrieve WebFinger document $curl http://www.google.com/s2/webfinger/?q=chris.messina@gmail.com
  • 134. How WebFinger works XRD Profile <?xml version='1.0'?> <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'> " <Subject>acct:chris.messina@gmail.com</Subject> " <Alias>http://www.google.com/profiles/chris.messina</Alias> " <Link rel='http://portablecontacts.net/spec/1.0' " href='http://www-opensocial.googleusercontent.com/api/people/'/> " <Link rel='http://webfinger.net/rel/profile-page' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://microformats.org/profile/hcard' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://gmpg.org/xfn/11' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://specs.openid.net/auth/2.0/provider' " href='http://www.google.com/profiles/chris.messina'/> " <Link rel='describedby' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='describedby' " href='http://s2.googleusercontent.com/webfinger/?q=chris.messina%40gmail.com&amp;fmt=foaf' " type='application/rdf+xml'/> " <Link rel='http://schemas.google.com/g/2010#updates-from' " href='http://buzz.googleapis.com/feeds/102034052532213921839/public/posted' " type='application/atom+xml'/> </XRD> from here I can grab any service that I need.
  • 135. How WebFinger works XRD Profile <?xml version='1.0'?> <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'> " <Subject>acct:chris.messina@gmail.com</Subject> " <Alias>http://www.google.com/profiles/chris.messina</Alias> " <Link rel='http://portablecontacts.net/spec/1.0' " href='http://www-opensocial.googleusercontent.com/api/people/'/> " <Link rel='http://webfinger.net/rel/profile-page' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://microformats.org/profile/hcard' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://gmpg.org/xfn/11' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://specs.openid.net/auth/2.0/provider' " href='http://www.google.com/profiles/chris.messina'/> " <Link rel='describedby' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='describedby' " href='http://s2.googleusercontent.com/webfinger/?q=chris.messina%40gmail.com&amp;fmt=foaf' " type='application/rdf+xml'/> " <Link rel='http://schemas.google.com/g/2010#updates-from' " href='http://buzz.googleapis.com/feeds/102034052532213921839/public/posted' " type='application/atom+xml'/> </XRD> from here I can grab any service that I need.
  • 136. How WebFinger works XRD Profile <?xml version='1.0'?> <XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'> " <Subject>acct:chris.messina@gmail.com</Subject> " <Alias>http://www.google.com/profiles/chris.messina</Alias> " <Link rel='http://portablecontacts.net/spec/1.0' " href='http://www-opensocial.googleusercontent.com/api/people/'/> " <Link rel='http://webfinger.net/rel/profile-page' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://microformats.org/profile/hcard' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://gmpg.org/xfn/11' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='http://specs.openid.net/auth/2.0/provider' " href='http://www.google.com/profiles/chris.messina'/> " <Link rel='describedby' " href='http://www.google.com/profiles/chris.messina' " type='text/html'/> " <Link rel='describedby' " href='http://s2.googleusercontent.com/webfinger/?q=chris.messina%40gmail.com&amp;fmt=foaf' " type='application/rdf+xml'/> " <Link rel='http://schemas.google.com/g/2010#updates-from' " href='http://buzz.googleapis.com/feeds/102034052532213921839/public/posted' " type='application/atom+xml'/> </XRD> from here I can grab any service that I need.
  • 137. Putting it all together Enter email: Email Connect so let’s go back to the beginning of this flow.
  • 138. Putting it all together Enter email: chris.messina@gmail.com Connect so let’s go back to the beginning of this flow.
  • 139. Putting it all together Enter email: chris.messina@gmail.com Connect so let’s go back to the beginning of this flow.
  • 140. Putting it all together OpenID Authentication presuming I’m already logged in, I’ll be taken to a page like this, where I can click on button to sign in.
  • 141. Putting it all together Easier sign-in using email Signed in as: Chris Messina 
  • 142. Putting it all together Easier sign-in using email Signed in as: Chris Messina 
  • 143. http://openid.net http://webfinger.info to learn more, this is where it all happens.
  • 144. Friends & Contacts Portable Contacts & OAuth
  • 145. This is my social graph — a view of my connections and relationships.
  • 146. now say that I find some new site that I want to sign up for and try out... let’s say that site is Blippy, a website that allows you to see and discuss you and your friends’ shopping habits. but say I don’t want to use my Twitter or Facebook account to sign up — not yet.
  • 147. now say that I find some new site that I want to sign up for and try out... let’s say that site is Blippy, a website that allows you to see and discuss you and your friends’ shopping habits. but say I don’t want to use my Twitter or Facebook account to sign up — not yet.
  • 148. when I arrive at my profile, you’ll see that it’s pretty bleak. The problem, as you can see (CLICK) is that I’m not following anyone on this service. Of course to get the benefits from this service, I need to add friends...
  • 149. when I arrive at my profile, you’ll see that it’s pretty bleak. The problem, as you can see (CLICK) is that I’m not following anyone on this service. Of course to get the benefits from this service, I need to add friends...
  • 150. I could try searching for my friends, but that’s timely and I really don’t want to be bothered.
  • 151. ? I could try searching for my friends, but that’s timely and I really don’t want to be bothered.
  • 152. So how do I bring my social graph that I store and maintain on another site into Blippy?
  • 153. ? So how do I bring my social graph that I store and maintain on another site into Blippy?
  • 154. Well, the obvious thing is import my address book and see which of my friends is already on the site... However, the last thing that you want to do is ask for a user’s password. That’s information that should only be shared between the user and their provider. Fortunately, there’s an alternative that’s gaining widespread adoption.
  • 155. Well, the obvious thing is import my address book and see which of my friends is already on the site... However, the last thing that you want to do is ask for a user’s password. That’s information that should only be shared between the user and their provider. Fortunately, there’s an alternative that’s gaining widespread adoption.
  • 156. it’s just a bad idea. don’t do it, [CLICK]
  • 157. marshallk Marshall Kirkpatrick and don’t betray your users.
  • 158. anyway, the answer to the question of how to get the address book into Blippy safely? [CLICK] Portable Contacts.
  • 159. ? anyway, the answer to the question of how to get the address book into Blippy safely? [CLICK] Portable Contacts.
  • 160. Portable Contacts! anyway, the answer to the question of how to get the address book into Blippy safely? [CLICK] Portable Contacts.
  • 161. Portable Contacts Primer {   "startIndex": 10,   "itemsPerPage": 10,   "totalResults": 12,     {       "id": "703887",       "displayName": "Mark Hashimoto",       "name": {         "familyName": "Hashimoto",         "givenName": "Mark"       },       "birthday": "0000-01-16",       "gender": "male",       "drinker": "heavily",       "tags": [         "plaxo guy"       ],       "emails": [         {           "value": "mhashimoto-04@plaxo.com",           "type": "work",           "primary": "true"         },         {           "value": "mhashimoto@plaxo.com",           "type": "home"         }       ],       "urls": [         {           "value": "http://www.seeyellow.com",           "type": "work"         }, ... } So what does Portable Contacts look like? Your typical JSON feed...
  • 162. Portable Contacts Primer Typical Response { {       "id": "1",       "name": "Chris Messina",       "urls": [         { "value": "http://factoryjoe.com/blog", "type": "blog" }       ]     },     {       "id": "2",       "name": "Joseph Smarr",       "emails": [         { "value": "joseph@plaxo.com", "type": "work", "primary": "true" },         { "value": "jsmarr@gmail.com", "type": "home" }       ],     } } with some handy filtering abilities. So you take a basic PoCo snippet like this and tweak your API call...
  • 163. Portable Contacts Primer filterBy=name&filterOp=startswith&filterValue=Chr {     {       "id": "1",       "name": "Chris Messina",       "urls": [         { "value": "http://factoryjoe.com/blog", "type": "blog" }       ]     },     {       "id": "2",       "name": "Joseph Smarr",       "emails": [         { "value": "joseph@plaxo.com", "type": "work", "primary": "true" },         { "value": "jsmarr@gmail.com", "type": "home" }       ],     } } and you’ll get this..
  • 164. Portable Contacts Primer filterBy=name&filterOp=contacts&filterValue=plaxo.com {     {       "id": "1",       "name": "Chris Messina",       "urls": [         { "value": "http://factoryjoe.com/blog", "type": "blog" }       ]     },     {       "id": "2",       "name": "Joseph Smarr",       "emails": [         { "value": "joseph@plaxo.com", "type": "work", "primary": "true" },         { "value": "jsmarr@gmail.com", "type": "home" }       ],     } } change it again, and you’ll get this.
  • 165. So let’s go back to Blippy. Say I want to import my address book, but this time, let’s get rid of my password (CLICK). Using Portable Contacts, this can be as easy as a single click.
  • 166. So let’s go back to Blippy. Say I want to import my address book, but this time, let’s get rid of my password (CLICK). Using Portable Contacts, this can be as easy as a single click.
  • 167. Blippy.com Blippy.com is asking for some information from your Google Account So let’s go back to Blippy. Say I want to import my address book, but this time, let’s get rid of my password (CLICK). Using Portable Contacts, this can be as easy as a single click.
  • 168. 56 Following and here we are — back in the app with activity without needing to manually find my friends.
  • 169. http://portablecontacts.net you can learn more at portablecontacts.net.
  • 170. Now, the secret behind this is called OAuth. How many people are familiar with OAuth?
  • 171. Now, the secret behind this is called OAuth. How many people are familiar with OAuth?
  • 172. Photo by Damian Morys Think of OAuth like your valet key for the web.
  • 173. On the desktop let’s take a look at how OAuth works on the desktop using the Yammer Adobe Air app.
  • 174. when you launch the app for the first time, you’ll be asked to authorize access to your data.
  • 175. the app will launch a page like this in your browser and you click authorize.
  • 176. the app will launch a page like this in your browser and you click authorize.
  • 177. 4D56 next you’re given a special code to prevent what’s called “session fixation attack”.
  • 178. return to the app and enter the code
  • 179. and now you’ve granted access to the desktop app without needing to provide your password.
  • 183. Friendfeed Friendfeed.com is asking for some information from your Google Account
  • 184. Now I’m signed in, and my contacts have already been brought in with a simple click. Very simple, especially if I’m already signed in to my Google account.
  • 186. Start out with an iPhone app call FlightTrackPro.
  • 187. now this app syncs with your TripIt account. So here we are in the app, and we need to login to connect to our TripIt account. We click login...
  • 188. now this app syncs with your TripIt account. So here we are in the app, and we need to login to connect to our TripIt account. We click login...
  • 189. and we’re taken into Safari, where we sign in through the web browser.
  • 190. chris@domain.com •••••••• and we’re taken into Safari, where we sign in through the web browser.
  • 191. We see an access request... and scrolling down
  • 192. we see that we can Grant Access here. Note that all the permissions are spelled out simply here.
  • 193. we see that we can Grant Access here. Note that all the permissions are spelled out simply here.
  • 194. If we grant access, Safari fades out, bringing the app back into focus.
  • 195. and voila, with OAuth, FlightTrackPro now has access to our trips. Since FlightTrack Pro isn’t owned by TripIt, I never had to give my password to FlightTrack Pro.
  • 196. http://oauth.net you can learn more at oauth.net
  • 198. 1999 RSS 0.9 was introduced in 1999 by Netscape as a content-gathering mechanism for My Netscape Network (MNN) back when portals were all the rage (pre-social networks). By providing a simple snapshot-in-a-document, web site producers acquired audience through the presence of their content on My Netscape.
  • 199. so, you’d have someone like the NYTimes wanting to grow their online audience...
  • 200. ...and they’d use RSS to get their content into the Netscape portal.
  • 201. Copyright 2000 ZWave, LLC ...and they’d use RSS to get their content into the Netscape portal.
  • 202. RSS <?xml version="1.0" encoding="utf-8"?> <rss version="2.0"> <channel> <item> <title>When Will Location-Based Coupons Take Off?</title> <link>http://bits.blogs.nytimes.com/2010/03/12/when-will- location-based-mobile-coupons-take-off/</link> <pubDate>Fri, 12 Mar 2010 21:38:26 +0000</pubDate> <creator>By CLAIRE CAIN MILLER</creator> <description> People want to receive location-based cellphone coupons, but most have not, according to a Web analytics firm. </description> </item> </channel> </rss> RSS looks like this.
  • 203. RSS title + link + description the only mandatory fields in RSS are title, link, and description — which makes it an extremely flexible format. The only problem is that aggregators have to do a lot of guesswork about what’s in it. this was complicated by the various flavors of RSS (0.9, 0.91, 0.92, 0.93, 2.0 et al)
  • 204. 2005 this in 2005, a group of people got together to create a “better specified” syndication format called Atom.
  • 205. Atom <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <entry> <title>When Will Location-Based Coupons Take Off?</title> <link rel=”alternate”>http://bits.blogs.nytimes.com/2010/03/12/when-will- location-based-mobile-coupons-take-off/</link> <id>urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6</id> <updated>Fri, 12 Mar 2010 21:38:26 +0000</updated> <author> <name>By CLAIRE CAIN MILLER</name> </author> <summary> People want to receive location-based cellphone coupons, but most have not, according to a Web analytics firm. </summary> </entry> </feed> here’s what ATOM looks like.
  • 206. Atom title + link + summary + author + id + updated so, in five years, the required elements of RSS essentially doubled, and we now had a unique way to identity a feed entry, the author, and when it was last changed.
  • 207. even still, this format was really still designed for the case of syndicating ARTICLES into PORTALS.
  • 208. Copyright 2000 ZWave, LLC even still, this format was really still designed for the case of syndicating ARTICLES into PORTALS.
  • 209. 2010
  • 210. so, you take an article like this, turn it into RSS or ATOM...
  • 211. so, you take an article like this, turn it into RSS or ATOM...
  • 212. and the most interesting thing the browser can do for you is turn this rich and well designed page into something like this... [click]
  • 213. and the most interesting thing the browser can do for you is turn this rich and well designed page into something like this... [click]
  • 214. and now you know why the newsfeed looks like it does. spot the similarity?
  • 215. and now you know why the newsfeed looks like it does. spot the similarity?
  • 216. and yet we know that people are performing more and more activities online. and yet, regardless of its type, sites only publish this information as RSS or Atom
  • 217. so no matter what, to sites like Friendfeed, Facebook, or Google Buzz, all these activities all look the same.
  • 218. icons by Fast Icon so how do you differentiate all these different feeds when you only have one basic format?
  • 220. actor verb object target the basic model of ActivityStreams follows the “actor verb object”, “target”archetype.
  • 221. Atom <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> <name>...</name> </author> <summary> ... </summary> </entry> </feed> well, let’s take your typical Atom feed...
  • 222. Atom title + link + summary + author + id + updated remember that the foundation of Atom is title, link, summary, author, id, and the updated time.
  • 223. Atom+ActivityStreams title + link + summary + author + id + updated + verb + object-type + target now add verb, object-type, and target
  • 224. Atom+ActivityStreams <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> <name>...</name> </author> <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <content type=”html”> ... </content> </activity:object> </entry> </feed> here’s what Atom+ActivityStreams looks like. Similar,
  • 225. Atom+ActivityStreams <?xml version="1.0" encoding="utf-8"?> xmlns:activity="http://activitystrea.ms/spec/1.0/" <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> <name>...</name> </author> <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <content type=”html”> ... </content> </activity:object> </entry> </feed> here are the new parts.
  • 226. Atom+ActivityStreams <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:activity="http://activitystrea.ms/spec/1.0/"> <entry> <title>...</title> <link rel=”alternate”>...</link> <id>...</id> <updated>...</updated> <author> person <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> <name>...</name> </author> post <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb> <activity:object> note <activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type> <content type=”html”> ... </content> </activity:object> </entry> </feed> so, see what this adds for the aggregator? as the most basic example, we’re essentially telling the aggregator that a person posted a note.
  • 227. Verbs & Objects and to begin with, we already support a dozen verbs and several well-known objects.
  • 228. Verbs & • Add Friend • Article Objects • Check-in • Audio • Favorite • Bookmark • Follow • Comment • Like • File • Join • Folder • Play • Group • Post • List • Save • Note • Share • Person • Tag • Photo • Update • Photo Album • Place • Playlist • Product • Review • Service • Status Video and to begin with, we already support a dozen verbs and several well-known objects.
  • 229. Verbs & • Add Friend • Article Objects • Check-in • Audio • Favorite • Bookmark • Follow • Comment • Like • File v0.8 • Join • Play • Folder • Group • Post • List • Save • Note • Share • Person • Tag • Photo • Update • Photo Album • Place • Playlist • Product • Review • Service • Status Video and to begin with, we already support a dozen verbs and several well-known objects.
  • 230. Process and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  • 231. Process 1. Ask why. and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  • 232. Process 1. Ask why. 2. Do your homework and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  • 233. Process 1. Ask why. 2. Do your homework 3. Propose and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  • 234. Process 1. Ask why. 2. Do your homework 3. Propose 4. Iterate and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  • 235. Process 1. Ask why. 2. Do your homework 3. Propose 4. Iterate 5. Interoperate and the process for extending the core schema? well’s it’s pretty simple... and based on the microformats process.
  • 236. http://activitystrea.ms to learn more, this is where it all happens. so, what does and activitystream-formatted feed look like?
  • 238. The anatomy of connect ...according to David Recordon Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 239. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 240. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 241. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 242. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) • Activity (poked, bought, shared, blogged) Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 243. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) • Activity (poked, bought, shared, blogged) • Goal: Discovery of new people and content Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 244. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) • Activity (poked, bought, shared, blogged) Social Building Blocks Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 245. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) • Activity (poked, bought, shared, blogged) Social Building Blocks • Identity & Profile Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 246. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) • Activity (poked, bought, shared, blogged) Social Building Blocks • Identity & Profile • Friends & Contacts Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 247. The anatomy of connect ...according to David Recordon • Profile (identity, accounts, profiles) • Relationships (followers, friends, contacts) • Content (posts, photos, videos, links) • Activity (poked, bought, shared, blogged) Social Building Blocks • Identity & Profile • Friends & Contacts • Activities Source O’Reilly Radar. Profile (identity, accounts, profiles) Relationships (followers, friends, contacts) Content (posts, photos, videos, links) Activity (poked, bought, shared, blogged) Goal: Discovery of new people and content
  • 248. Connect and so I before I joined Google, I proposed a simple idea built upon all these open technologies called OpenID Connect that ties all these technologies that I’ve told you about together. This concept is emerging and I think you’ll see some exciting moves in this area this year — so I want to leave you with that vision for the future.
  • 249. Google Search I’m Feeling Lucky and when you think about Google and the social web, I think it’s important to really consider where we’re headed.
  • 250. Google Search I’m Feeling Lucky Social and when you think about Google and the social web, I think it’s important to really consider where we’re headed.
  • 251. this is what we think of when we think of the social web, and the most exciting thing about it [CLICK] is that there’s plenty of space for you to establish yourself and make a name for your app.
  • 252. YOU this is what we think of when we think of the social web, and the most exciting thing about it [CLICK] is that there’s plenty of space for you to establish yourself and make a name for your app.
  • 253. messina@google.com • @chrismessina • factoryjoe.com
  • 254. Don’t forget! GTUG Meetup at 6pm