Your SlideShare is downloading. ×
2012 Confoo: Defining User Identity
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

2012 Confoo: Defining User Identity

1,534
views

Published on

March 2012 talk at Confoo (confoo.ca) on defining user identity.

March 2012 talk at Confoo (confoo.ca) on defining user identity.


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,534
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Suck in web content via curlConvert to valid XML document (do not use as text and run Regex against it)
  • Search through text on the page and store words + how often they are usedStrip out common words
  • Use meta description and keywords to match against your keyword density searchUse Open Graph protocol tags to find more keywords and page content
  • http://gizmodo.com/5470696/fck-you-google
  • http://www.pcmag.com/article2/0,2817,2399970,00.asp
  • http://www.forbes.com/sites/kashmirhill/2012/02/16/how-target-figured-out-a-teen-girl-was-pregnant-before-her-father-did/The statistician is now a rock star
  • Transcript

    • 1. Defining User IdentityTrue Identity VS Anonymity Jonathan LeBlanc Developer Evangelist: X.commerce Email: jleblanc@x.com Twitter: @jcleblanc
    • 2. What We’re Going to Cover The Foundations of Human Identity Tribalism and Social Grouping The Big Bag of Social Identity Fail Experimental Identity MethodsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 3. What We’re Going to Cover The Foundations of Human Identity Tribalism and Social Grouping The Big Bag of Social Identity Fail Experimental Identity MethodsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 4. Human Identity: User Types Anonymous Users Real Identity LoginX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 5. Human Identity: Open Identity Programming OAuth (1.0a + 2.0) PayPal Access, Facebook, Twitter OpenID (…and the upcoming OpenID Connect) PayPal Access, Google, Yahoo! BrowserID MozillaX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 6. Human Identity: Anonymous UsersX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 7. Human Identity: Tracking Anonymous Users There are a few common options Tracking Cookie Local StorageX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 8. Human Identity: Tracking Anonymous Users Program Overview • On each page visited, track the URL • HTML5 Local Storage as primary storage • Cookies as secondary storageX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 9. Tracking Anonymous Users with Local Storage var storeName = "visited"; if (typeof(localStorage) == undefined ) { //Local Storage Not Available } else { try { var sites = localStorage.getItem(storeName); sites = (sites === null) ? window.location : sites + window.location; localStorage.setItem(storeName, sites + "|"); } catch (e) { if (e == QUOTA_EXCEEDED_ERR) { //quota exceeded } } }
    • 10. Tracking Anonymous Users with Cookies function readCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(;); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ){ c = c.substring(1, c.length) }; if (c.indexOf(nameEQ) == 0){ return c.substring(nameEQ.length, c.length); } } return null; }
    • 11. Tracking Anonymous Users with Cookies var storeName = "visited"; if (typeof(localStorage) == "undefined" ) { var cookieVal = readCookie(storeName); var value = ((cookieVal === null) ? window.location : cookieVal + window.location); var days = 1; var date = new Date(); date.setTime(date.getTime() + (days*24*60*60*1000)); var expires = "; expires=" + date.toGMTString(); document.cookie = storeName + "=" + value + "|" + expires + "; path=/"; } else { //Use Local Storage }
    • 12. Human Identity: Tracking Anonymous Users Next Steps / Improvements • Remove oldest results when storage fills • Build categorization mapping prior to storage to save space (more on this later)X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 13. Human Identity: Real Identity UsersX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 14. Human Identity: Real Identity Sources Sources of Real Identity Social (perceived) Concrete (true)X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 15. Human Identity: BrowserIDX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 16. Human Identity: BrowserID BrowserID Source <script src="https://browserid.org/include.js" type="text/javascript"></script> JQuery Source <script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 17. Human Identity: BrowserID navigator.id.get(function(assertion) { if (assertion) { $.ajax({ url: https://browserid.org/verify, type: POST, data: assertion=+assertion+&audience=jcleblanc.com, success: function(res) { console.log(res); } }); });X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 18. Human Identity: BrowserID JSON Results { audience: "jcleblanc.com", email: "nakedtechnologist@gmail.com", expires: 1320081400987, issuer: "browserid.org", status: "okay" }X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 19. What We’re Going to Cover The Foundations of Human Identity Tribalism and Social Grouping The Big Bag of Social Identity Fail Experimental Identity MethodsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 20. Social Grouping: It’s Not A New Thing…X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 21. Social Grouping: Foundation in Tribalism Tribalism started as a way to keep us safe …it has lead to some horrible parts of history but it is also a foundation of many of our social relationshipsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 22. Social Grouping: The Real Life Social GraphX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 23. Social Grouping: The Online Social GraphX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 24. Social Grouping: Group Types Follower Type Connection Type Group TypeX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 25. Social Grouping: Data Miners are Rock StarsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 26. Social Grouping: Group Programming Primer Program Overview • Use all URLs from the previous program. • Obtain content category for page. • Categorize user interest.X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 27. Social Grouping: Group Programming Primer Step 1: Obtain Website ContentX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 28. Social Grouping: Group Programming Primer Step 2: Perform Keyword Density SearchX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 29. Social Grouping: Group Programming Primer Step 3: Weight KeywordsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 30. What We’re Going to Cover The Foundations of Human Identity Tribalism and Social Grouping The Big Bag of Social Identity Fail Experimental Identity MethodsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 31. Social Identity Fail: Personal Safety When Social Discovery Impacts Personal Safety “My privacy concerns are not trite. They are linked to my actual physical safety” --Harriet Jacobs (Gizmodo)X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 32. Social Identity Fail: Privacy Concerns When Making Things Easy Impairs Privacy “Path Uploads Your Entire iPhone Contact List By Default” --Mark Hachman (PCMag)X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 33. Social Identity Fail: The Fine Line The Fine Line Between Insightful and Creepy “How Target Figured Out A Teen Girl Was Pregnant Before Her Father Did” --Kashmir Hill (Forbes)X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 34. What We’re Going to Cover The Foundations of Human Identity Tribalism and Social Grouping The Big Bag of Social Identity Fail Experimental Identity MethodsX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 35. Experimental Identity: WebFingerX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 36. Experimental Identity: WebFinger Step 1: Perform Discovery curl https://gmail.com/.well-known/host-metaX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 37. Experimental Identity: WebFinger <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>X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 38. Experimental Identity: WebFinger Step 2: Collect User Data curlhttp://www.google.com/s2/webfinger/?q=nakedt echnologist@gmail.comX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 39. Experimental Identity: WebFinger User Profile http://www.google.com/profiles/nakedtechnolo gist Portable Contacts http://www- opensocial.googleusercontent.com/api/people/1 18167121283215553793/X.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 40. Experimental Identity: WebFinger profileUrl name id formatted thumbnail url family name urls given name photos display nameX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 41. Identity Programming Core Concepts Identity is more than just a login Authentication is just the first step Find the tool that: – Has the raw data that you need – Works with your businessX.Commerce (eBay Inc.)http://www.x.com | @x_commerce
    • 42. Thanks! Any Questions?http://slidesha.re/confoo_identity2 Jonathan LeBlanc Email: jleblanc@x.com Twitter: @jcleblanc Github: https://github.com/jcleblanc