• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
ppt
 

ppt

on

  • 493 views

 

Statistics

Views

Total Views
493
Views on SlideShare
493
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    ppt ppt Presentation Transcript

    • Performance Challenges for the Open Web Stanford CS193H 29 September 2008
    • Background: making the web work better
      • I’ve been abusing web browsers for 15 years
        • http://josephsmarr.com
      • I used to work on AJAX / JS performance
        • http://josephsmarr.com/2007/07/25/high-performance-javascript-oscon-2007
        • Video: http://developer.yahoo.net/blogs/theater/archives/2007/08/joseph_smarr_highperformance_j.html
      • Now I’m helping open up the social web
        • http://josephsmarr.com/2008/09/22/tying-it-all-together-implementing-the-open-web-web-20-expo-new-york
        • Weekly video podcast: thesocialweb.tv
      • Open Web has new performance challenges
        • Making multiple sites play well together
        • Privacy, transparency, flexibility, simplicity
    • In a world with lots of socially-aware sites…
    • … and lots of “open social web” building blocks…
    • … how do the pieces fit together? … and what will the new Social Web look like?
    •  
    • Reminder: The social web today is broken…
      • On each site, we still have to:
        • Re-create an account
        • Re-enter our profile info
        • Re-find our friends
        • Re-establish our relationships
      • New social apps have limited options:
        • Create yet-another-silo (and start from scratch) -or-
        • Make a widget inside an existing walled garden
    • …but we know how to make things better!
      • Create a portable, durable online identity
      • OpenID
        • Sign up / sign in with an existing account
        • Link / share your profile data between sites
    • Example: Sign up for Plaxo with OpenID
    •  
    •  
    •  
      • Create a portable, durable online identity
      • OpenID
        • Sign up / sign in with an existing account
        • Link / share your profile data between sites
      • rel=me (XFN)
        • Consolidate your online identity with me -links
      • Social Graph API
        • See what your users said about themselves
    •  
    •  
    •  
    •  
    •  
    •  
      • Build and maintain real relationships
      • Contact APIs
        • Find people from your current address book
        • Leverage previously established relationships
      • OAuth
        • Share private data between trusted sites
      • Friends-list portability
        • Continuous discovery across multiple sites
    •  
    •  
    • “ A periodic check of new people from your networks on other sites”
      • Stay up-to-date with the people you know
      • OpenSocial
        • Build social apps that can run anywhere
    • OpenSocial
    • OpenSocial: Large and Growing Rapidly
      • Stay up-to-date with the people you know
      • OpenSocial
        • Build social apps that can run anywhere
      • RSS / Atom
        • Syndicate your activity to share with others
      • Jabber (XMPP)
        • Real-time update stream between sites
    •  
    •  
    •  
    •  
    •  
    • Building blocks in action: contacts portability
      • User signs in with an OpenID
        • Site fetches OpenID URL  looks for X-XRDS-Location
        • Site parses XRDS-Simple doc to discover available APIs
      • Site tries to access contacts API  gets a 401
        • WWW-Authenticate response header specifies OAuth
        • OAuth Discovery (via XRDS) provides OAuth endpoints
      • Site sends user though OAuth flow to grant access
        • User returns to site with authorized access token
        • Site can now access users’ contacts data via API + token
    • Performance Challenges
      • Minimizing round trips
        • Discovery, Association, OpenID, OAuth, etc.
        • Combining steps vs. small pieces loosely joined
        • JSON-RPC in OpenSocial (batching API calls)
      • Caching: freshness vs. performance
        • Policies for how long to store personal data
        • Social Graph API: cached web crawl
        • Server-alerted notifications
    • Performance Challenges (cont.)
      • Pull vs. push: aggregating activity
        • Polling is easy but inefficient & doesn’t scale (1000 users every 15 min > 1 hit per sec)
        • XMPP & Gnip: receive update notifications
      • Integrating 3 rd party content
        • Server-side (proxied) vs. client-side (JS onload)
        • Iframe vs. inline
        • New techniques: XFBML, Caja, etc.
    • … so how do these building blocks fit together?
    •  
    •  
    •