SlideShare a Scribd company logo
1 of 50
Download to read offline
Social Software for Robots
         XTech 2007
Kellan Elliott-McCrea
Flickr
Blaine Cook
Twitter
For Robots?
Social Software
Social Software is

•social software is made of people
•people talking to people?
•people talking to computers, talking to
  people.
Software to
 collect and share
individuals’ actions
        in a
  social context.
web apis
Server

                       no.
         bored




                                        distracted
                                    ?
                                   t
                             re ye
                      e the
                 are w
                       no.
         bored




                                        distracted
                                    ?
                                   t
                             re ye
                      e the
                 are w
                       no.
         bored

                                        distracted
                                    ?
                                   t
                             re ye
                      e the
                 are w
Client
Client
                    bored                    bored                      bored                       bored
         are we there yet?




                                    are we there yet?




                                                               are we there yet?




                                                                                          are we there yet?
                              no.




                                                         no.




                                                                                    no.




                                                                                                               no.
                                                                                                                     Web
                    ?                       ?                          ?                          ?
                                                                                   no.
                                                        no.




                                                                                                              no.
                             no.




                                                                                                                     DB
         distracted                 distracted                 distracted                 distracted
Client
                    bored                    bored                      bored                       bored
         are we there yet?




                                    are we there yet?




                                                               are we there yet?




                                                                                          are we there yet?
                              no.




                                                         no.




                                                                                    no.




                                                                                                               no.
                                                                                                                     Web
                    ?                       ?                          ?                          ?
                                                                                   no.
                                                        no.




                                                                                                              no.
                             no.




                                                                                                                     DB
         distracted                 distracted                 distracted                 distracted
Server

           we’re there
                           arrival
          let me know re
                       e
         when we’re th
Client
PASSING NOTES
YOU DID THIS WHEN YOU WERE EIGHT.
           IT’LL BE OKAY.
Social Software
  For Robots
Robots do it with
Message Passing
Where it Works.
•real time data           •historical and static
                            content - not so much.
•wire-level data
                          •interactive searches -
  (no db interaction)
                            not so much
•shift from access-past
  to notify-future

•very long
  running queries
New Patterns
(how else can you use it?)
tim
                       e
Realtime Craigslist
Spontaneity
Flickr TMI Addiction
Fishing

•Put a net out, and get notified when
  you catch something.

•When real-time data is more important
  that knowing in advance or researching
  the future.

•Who’s going for lunch NOW?
<message from=”driver@local” to=”car@local”>
PEN DOWN
FORWARD 40
RIGHT 65
LEFT 25
FORWARD 40
</message>
Jabber
What’s in it for me?
•flexible & extensible
•asynchronous, low latency (realtime)
•delegated
•security & identity baked in
•presence
•standardized
It’s Just XML

<message
 to=quot;horatio@denmarkquot;
 from=quot;hamlet@denmarkquot;>
 <body>Angels and Ministers
  of Grace, defend us!</body>
 <foo
  xmlns=quot;http://www.foo.org/quot;>
   <bar>ab<fb/>cd</bar>
 </foo>
</message>
Asynchronous
<message from=quot;xena@gmail.comquot;
 to=quot;sparql@w3c.orgquot;>meow!</message>




             <message from=quot;sparql@w3c.orgquot;
              to= quot;xena@gmail.comquot;>meow!</message>
Secure + Identity
•dialback server authentication (dns)
•s2s encrypted
•c2s encrypted
•from address set by server (no
  spoofing!)

•globally unique jids (like email)
Delegated Delivery
I CAN HAS
CALLBACKS
Standardised
Open Sourcerrific
•ejabberd        •ruby
•djabberd        •php
•wildfire         •java
•lmnop-jabberd   •perl
•twisted suite   •python
                 •firefox
Presence!


•Ralph is going to talk about this in the
  next talk. Y’all stick around now,
  y’hear?
Decentralized,
 But not all the way.

•Smarts on the Edge-1 is what you want
  for ubicomp / device saturated world.
that was a lot.
•async, real-time.      •presence
•extensible             •decentralized, but not
                          p2p*
•secure w/identity
•delegated
•i can has callbacks!
•standardized
Robots
Twitter.
You use it every day. It’s a Social Robot.
Use Jabber::Simple
require 'xmpp4r-simple'

jabber = Jabber::Simple.new
             (quot;flickrit@gmail.comquot;, quot;passwordquot;)




        send your tags to flickrit@gmail.com!
               wifi is “icanhasinternet”
jabber.deliver(quot;flickrviz@laughingmeme.orgquot;,
               quot;hey there.quot;)




        send your tags to flickrit@gmail.com!
               wifi is “icanhasinternet”
jabber.received_messages do |message|
  puts message.body
end




 send your tags to flickrit@gmail.com!
        wifi is “icanhasinternet”
require 'xmpp4r-simple'

CLIENT = Jabber::Simple.new(quot;flickrit@gmail.comquot;, quot;passwordquot;)

def post_photo_update(message)
  CLIENT.deliver(quot;flickrviz@laughingmeme.orgquot;, message)
end

def request_flickr_photos(message)
  CLIENT.deliver(quot;flickrapi@gmail.comquot;, quot;#{message.from} wants to see
photos of #{message.body}quot;)
end

loop do
  CLIENT.received_messages do |message|
    case message.from.strip.to_s
    when 'flickrapi@gmail.com': post_photo_update(message.body)
    else request_flickr_photos(message)
    end
  end
end
pretty

send your tags to flickrit@gmail.com!
       wifi is “icanhasinternet”
Photo Credits
http://www.flickr.com/photos/jayjizzle/205165885/
http://www.flickr.com/photos/heather/384134566/
http://flickr.com/photos/kevinsteele/473590084/
http://www.flickr.com/photos/exfordy/123370328/
http://flickr.com/photos/pingnews/426262117/
thanks!
especially to tom from stamen. he totally rocks.

More Related Content

More from Blaine

Social Privacy for HTTP over Webfinger
Social Privacy for HTTP over WebfingerSocial Privacy for HTTP over Webfinger
Social Privacy for HTTP over WebfingerBlaine
 
Social Software for Robots
Social Software for RobotsSocial Software for Robots
Social Software for RobotsBlaine
 
Building the Real Time Web
Building the Real Time WebBuilding the Real Time Web
Building the Real Time WebBlaine
 
You & Me & Everyone We Know
You & Me & Everyone We KnowYou & Me & Everyone We Know
You & Me & Everyone We KnowBlaine
 
Scaling Twitter
Scaling TwitterScaling Twitter
Scaling TwitterBlaine
 

More from Blaine (6)

Social Privacy for HTTP over Webfinger
Social Privacy for HTTP over WebfingerSocial Privacy for HTTP over Webfinger
Social Privacy for HTTP over Webfinger
 
Social Software for Robots
Social Software for RobotsSocial Software for Robots
Social Software for Robots
 
OAuth
OAuthOAuth
OAuth
 
Building the Real Time Web
Building the Real Time WebBuilding the Real Time Web
Building the Real Time Web
 
You & Me & Everyone We Know
You & Me & Everyone We KnowYou & Me & Everyone We Know
You & Me & Everyone We Know
 
Scaling Twitter
Scaling TwitterScaling Twitter
Scaling Twitter
 

Recently uploaded

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Recently uploaded (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Social Software for Robots