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

Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
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
 

Recently uploaded (20)

Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
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...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
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
 

Social Software for Robots