SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
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.

Weitere ähnliche Inhalte

Mehr von 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
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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 PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
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...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
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
 

Social Software for Robots