SlideShare a Scribd company logo
Defining User Identity
True Identity VS Anonymity




                                         Jonathan LeBlanc
                         Developer Evangelist: X.commerce
                                    Email: jleblanc@x.com
                                       Twitter: @jcleblanc
What We’re Going to Cover


          The Foundations of Human Identity

          Tribalism and Social Grouping

          The Big Bag of Social Identity Fail

          Experimental Identity Methods


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
What We’re Going to Cover


          The Foundations of Human Identity

          Tribalism and Social Grouping

          The Big Bag of Social Identity Fail

          Experimental Identity Methods


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Human Identity: User Types




        Anonymous Users          Real Identity Login


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
       Mozilla
X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Human Identity: Anonymous Users




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Human Identity: Tracking Anonymous Users

                There are a few common options




             Tracking Cookie      Local Storage

X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Human Identity: Tracking Anonymous Users

                          Program Overview

        • On each page visited, track the URL

        • HTML5 Local Storage as primary storage

        • Cookies as secondary storage

X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
       }
    }
 }
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;
    }
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
 }
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
Human Identity: Real Identity Users




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Human Identity: Real Identity Sources

                        Sources of Real Identity




         Social (perceived)            Concrete (true)

X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Human Identity: BrowserID




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
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
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
What We’re Going to Cover


          The Foundations of Human Identity

          Tribalism and Social Grouping

          The Big Bag of Social Identity Fail

          Experimental Identity Methods


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: It’s Not A New Thing…




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
    relationships


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: The Real Life Social Graph




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: The Online Social Graph




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: Group Types



                                 Follower Type


                                 Connection Type

                                 Group Type


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: Data Miners are Rock Stars




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
Social Grouping: Group Programming Primer




                                 Step 1: Obtain
                                 Website Content




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: Group Programming Primer




  Step 2: Perform
  Keyword Density
  Search




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Social Grouping: Group Programming Primer




                                 Step 3: Weight
                                 Keywords




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
What We’re Going to Cover


          The Foundations of Human Identity

          Tribalism and Social Grouping

          The Big Bag of Social Identity Fail

          Experimental Identity Methods


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
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
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
What We’re Going to Cover


          The Foundations of Human Identity

          Tribalism and Social Grouping

          The Big Bag of Social Identity Fail

          Experimental Identity Methods


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Experimental Identity: WebFinger




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Experimental Identity: WebFinger



                    Step 1: Perform Discovery

   curl https://gmail.com/.well-known/host-meta




X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
Experimental Identity: WebFinger



                     Step 2: Collect User Data

                    curl
http://www.google.com/s2/webfinger/?q=nakedt
           echnologist@gmail.com


X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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
Experimental Identity: WebFinger


         profileUrl              name
         id                       formatted
         thumbnail url            family name
         urls                     given name
         photos                   display name



X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
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 business

X.Commerce (eBay Inc.)
http://www.x.com | @x_commerce
Thanks! Any Questions?
http://slidesha.re/confoo_identity2



                                      Jonathan LeBlanc
                                Email: jleblanc@x.com
                                    Twitter: @jcleblanc
                  Github: https://github.com/jcleblanc

More Related Content

Similar to 2012 Confoo: Defining User Identity

2012 O'Reilly TOC: Commerce Identity
2012 O'Reilly TOC: Commerce Identity2012 O'Reilly TOC: Commerce Identity
2012 O'Reilly TOC: Commerce Identity
Jonathan LeBlanc
 
2012 UKTI Startup Mission
2012 UKTI Startup Mission2012 UKTI Startup Mission
2012 UKTI Startup Mission
Jonathan LeBlanc
 
X University Georgia Tech: Overview
X University Georgia Tech: OverviewX University Georgia Tech: Overview
X University Georgia Tech: Overview
Jonathan LeBlanc
 
X University Georgia Tech: ql.io and Identity
X University Georgia Tech: ql.io and IdentityX University Georgia Tech: ql.io and Identity
X University Georgia Tech: ql.io and Identity
Jonathan LeBlanc
 
Find,Mix And Show
Find,Mix And ShowFind,Mix And Show
Find,Mix And Show
Christian Heilmann
 
Whats The Buzz
Whats The BuzzWhats The Buzz
Whats The Buzz
Bill Albing
 
Scaling business app development with Play and Scala
Scaling business app development with Play and ScalaScaling business app development with Play and Scala
Scaling business app development with Play and Scala
Peter Hilton
 
Pragmatic Designer's Guide to Identity on the Web
Pragmatic Designer's Guide to Identity on the WebPragmatic Designer's Guide to Identity on the Web
Pragmatic Designer's Guide to Identity on the Web
Jamie Reffell
 
"Atomization" - a new trend in online marketing and how to exploit it
"Atomization" - a new trend in online marketing and how to exploit it"Atomization" - a new trend in online marketing and how to exploit it
"Atomization" - a new trend in online marketing and how to exploit it
Econsultancy
 
Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...
Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...
Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...
Chetan Khatri
 
We are Digital Puppets
We are Digital PuppetsWe are Digital Puppets
We are Digital Puppets
Secpro - Security Professionals
 
The social media developer
The social media developer The social media developer
The social media developer
Thet Aung Min Latt
 
11ntcfailinform resources
11ntcfailinform resources11ntcfailinform resources
11ntcfailinform resources
Simone Parrish
 
SXSWi 2012: Programming Social Applications
SXSWi 2012: Programming Social ApplicationsSXSWi 2012: Programming Social Applications
SXSWi 2012: Programming Social Applications
Jonathan LeBlanc
 
Hacked - EVERYONE INTRUSTED
Hacked - EVERYONE INTRUSTEDHacked - EVERYONE INTRUSTED
Hacked - EVERYONE INTRUSTED
pratikrathodnetsquare1
 
Towards the decentralisation of personal data through blockchains and linked ...
Towards the decentralisation of personal data through blockchains and linked ...Towards the decentralisation of personal data through blockchains and linked ...
Towards the decentralisation of personal data through blockchains and linked ...
John Domingue
 
Web marketing Anand Saini
Web marketing  Anand SainiWeb marketing  Anand Saini
Web marketing Anand Saini
Dr,Saini Anand
 
Smart Content = Smart Business
Smart Content = Smart BusinessSmart Content = Smart Business
Smart Content = Smart Business
Seth Grimes
 
Bg Concordia Socnet Identity Final
Bg Concordia Socnet Identity FinalBg Concordia Socnet Identity Final
Bg Concordia Socnet Identity Final
Mike Gotta
 
Internet Research
Internet ResearchInternet Research
Internet Research
Laurence Yap M.A. (UM) CHRM
 

Similar to 2012 Confoo: Defining User Identity (20)

2012 O'Reilly TOC: Commerce Identity
2012 O'Reilly TOC: Commerce Identity2012 O'Reilly TOC: Commerce Identity
2012 O'Reilly TOC: Commerce Identity
 
2012 UKTI Startup Mission
2012 UKTI Startup Mission2012 UKTI Startup Mission
2012 UKTI Startup Mission
 
X University Georgia Tech: Overview
X University Georgia Tech: OverviewX University Georgia Tech: Overview
X University Georgia Tech: Overview
 
X University Georgia Tech: ql.io and Identity
X University Georgia Tech: ql.io and IdentityX University Georgia Tech: ql.io and Identity
X University Georgia Tech: ql.io and Identity
 
Find,Mix And Show
Find,Mix And ShowFind,Mix And Show
Find,Mix And Show
 
Whats The Buzz
Whats The BuzzWhats The Buzz
Whats The Buzz
 
Scaling business app development with Play and Scala
Scaling business app development with Play and ScalaScaling business app development with Play and Scala
Scaling business app development with Play and Scala
 
Pragmatic Designer's Guide to Identity on the Web
Pragmatic Designer's Guide to Identity on the WebPragmatic Designer's Guide to Identity on the Web
Pragmatic Designer's Guide to Identity on the Web
 
"Atomization" - a new trend in online marketing and how to exploit it
"Atomization" - a new trend in online marketing and how to exploit it"Atomization" - a new trend in online marketing and how to exploit it
"Atomization" - a new trend in online marketing and how to exploit it
 
Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...
Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...
Data Science for Beginner by Chetan Khatri and Deptt. of Computer Science, Ka...
 
We are Digital Puppets
We are Digital PuppetsWe are Digital Puppets
We are Digital Puppets
 
The social media developer
The social media developer The social media developer
The social media developer
 
11ntcfailinform resources
11ntcfailinform resources11ntcfailinform resources
11ntcfailinform resources
 
SXSWi 2012: Programming Social Applications
SXSWi 2012: Programming Social ApplicationsSXSWi 2012: Programming Social Applications
SXSWi 2012: Programming Social Applications
 
Hacked - EVERYONE INTRUSTED
Hacked - EVERYONE INTRUSTEDHacked - EVERYONE INTRUSTED
Hacked - EVERYONE INTRUSTED
 
Towards the decentralisation of personal data through blockchains and linked ...
Towards the decentralisation of personal data through blockchains and linked ...Towards the decentralisation of personal data through blockchains and linked ...
Towards the decentralisation of personal data through blockchains and linked ...
 
Web marketing Anand Saini
Web marketing  Anand SainiWeb marketing  Anand Saini
Web marketing Anand Saini
 
Smart Content = Smart Business
Smart Content = Smart BusinessSmart Content = Smart Business
Smart Content = Smart Business
 
Bg Concordia Socnet Identity Final
Bg Concordia Socnet Identity FinalBg Concordia Socnet Identity Final
Bg Concordia Socnet Identity Final
 
Internet Research
Internet ResearchInternet Research
Internet Research
 

More from Jonathan LeBlanc

JavaScript App Security: Auth and Identity on the Client
JavaScript App Security: Auth and Identity on the ClientJavaScript App Security: Auth and Identity on the Client
JavaScript App Security: Auth and Identity on the Client
Jonathan LeBlanc
 
Improving Developer Onboarding Through Intelligent Data Insights
Improving Developer Onboarding Through Intelligent Data InsightsImproving Developer Onboarding Through Intelligent Data Insights
Improving Developer Onboarding Through Intelligent Data Insights
Jonathan LeBlanc
 
Better Data with Machine Learning and Serverless
Better Data with Machine Learning and ServerlessBetter Data with Machine Learning and Serverless
Better Data with Machine Learning and Serverless
Jonathan LeBlanc
 
Best Practices for Application Development with Box
Best Practices for Application Development with BoxBest Practices for Application Development with Box
Best Practices for Application Development with Box
Jonathan LeBlanc
 
Box Platform Overview
Box Platform OverviewBox Platform Overview
Box Platform Overview
Jonathan LeBlanc
 
Box Platform Developer Workshop
Box Platform Developer WorkshopBox Platform Developer Workshop
Box Platform Developer Workshop
Jonathan LeBlanc
 
Modern Cloud Data Security Practices
Modern Cloud Data Security PracticesModern Cloud Data Security Practices
Modern Cloud Data Security Practices
Jonathan LeBlanc
 
Box Authentication Types
Box Authentication TypesBox Authentication Types
Box Authentication Types
Jonathan LeBlanc
 
Understanding Box UI Elements
Understanding Box UI ElementsUnderstanding Box UI Elements
Understanding Box UI Elements
Jonathan LeBlanc
 
Understanding Box applications, tokens, and scoping
Understanding Box applications, tokens, and scopingUnderstanding Box applications, tokens, and scoping
Understanding Box applications, tokens, and scoping
Jonathan LeBlanc
 
The Future of Online Money: Creating Secure Payments Globally
The Future of Online Money: Creating Secure Payments GloballyThe Future of Online Money: Creating Secure Payments Globally
The Future of Online Money: Creating Secure Payments Globally
Jonathan LeBlanc
 
Modern API Security with JSON Web Tokens
Modern API Security with JSON Web TokensModern API Security with JSON Web Tokens
Modern API Security with JSON Web Tokens
Jonathan LeBlanc
 
Creating an In-Aisle Purchasing System from Scratch
Creating an In-Aisle Purchasing System from ScratchCreating an In-Aisle Purchasing System from Scratch
Creating an In-Aisle Purchasing System from Scratch
Jonathan LeBlanc
 
Secure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication MediaSecure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication Media
Jonathan LeBlanc
 
Protecting the Future of Mobile Payments
Protecting the Future of Mobile PaymentsProtecting the Future of Mobile Payments
Protecting the Future of Mobile Payments
Jonathan LeBlanc
 
Node.js Authentication and Data Security
Node.js Authentication and Data SecurityNode.js Authentication and Data Security
Node.js Authentication and Data Security
Jonathan LeBlanc
 
PHP Identity and Data Security
PHP Identity and Data SecurityPHP Identity and Data Security
PHP Identity and Data Security
Jonathan LeBlanc
 
Secure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication MediaSecure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication Media
Jonathan LeBlanc
 
Protecting the Future of Mobile Payments
Protecting the Future of Mobile PaymentsProtecting the Future of Mobile Payments
Protecting the Future of Mobile Payments
Jonathan LeBlanc
 
Future of Identity, Data, and Wearable Security
Future of Identity, Data, and Wearable SecurityFuture of Identity, Data, and Wearable Security
Future of Identity, Data, and Wearable Security
Jonathan LeBlanc
 

More from Jonathan LeBlanc (20)

JavaScript App Security: Auth and Identity on the Client
JavaScript App Security: Auth and Identity on the ClientJavaScript App Security: Auth and Identity on the Client
JavaScript App Security: Auth and Identity on the Client
 
Improving Developer Onboarding Through Intelligent Data Insights
Improving Developer Onboarding Through Intelligent Data InsightsImproving Developer Onboarding Through Intelligent Data Insights
Improving Developer Onboarding Through Intelligent Data Insights
 
Better Data with Machine Learning and Serverless
Better Data with Machine Learning and ServerlessBetter Data with Machine Learning and Serverless
Better Data with Machine Learning and Serverless
 
Best Practices for Application Development with Box
Best Practices for Application Development with BoxBest Practices for Application Development with Box
Best Practices for Application Development with Box
 
Box Platform Overview
Box Platform OverviewBox Platform Overview
Box Platform Overview
 
Box Platform Developer Workshop
Box Platform Developer WorkshopBox Platform Developer Workshop
Box Platform Developer Workshop
 
Modern Cloud Data Security Practices
Modern Cloud Data Security PracticesModern Cloud Data Security Practices
Modern Cloud Data Security Practices
 
Box Authentication Types
Box Authentication TypesBox Authentication Types
Box Authentication Types
 
Understanding Box UI Elements
Understanding Box UI ElementsUnderstanding Box UI Elements
Understanding Box UI Elements
 
Understanding Box applications, tokens, and scoping
Understanding Box applications, tokens, and scopingUnderstanding Box applications, tokens, and scoping
Understanding Box applications, tokens, and scoping
 
The Future of Online Money: Creating Secure Payments Globally
The Future of Online Money: Creating Secure Payments GloballyThe Future of Online Money: Creating Secure Payments Globally
The Future of Online Money: Creating Secure Payments Globally
 
Modern API Security with JSON Web Tokens
Modern API Security with JSON Web TokensModern API Security with JSON Web Tokens
Modern API Security with JSON Web Tokens
 
Creating an In-Aisle Purchasing System from Scratch
Creating an In-Aisle Purchasing System from ScratchCreating an In-Aisle Purchasing System from Scratch
Creating an In-Aisle Purchasing System from Scratch
 
Secure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication MediaSecure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication Media
 
Protecting the Future of Mobile Payments
Protecting the Future of Mobile PaymentsProtecting the Future of Mobile Payments
Protecting the Future of Mobile Payments
 
Node.js Authentication and Data Security
Node.js Authentication and Data SecurityNode.js Authentication and Data Security
Node.js Authentication and Data Security
 
PHP Identity and Data Security
PHP Identity and Data SecurityPHP Identity and Data Security
PHP Identity and Data Security
 
Secure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication MediaSecure Payments Over Mixed Communication Media
Secure Payments Over Mixed Communication Media
 
Protecting the Future of Mobile Payments
Protecting the Future of Mobile PaymentsProtecting the Future of Mobile Payments
Protecting the Future of Mobile Payments
 
Future of Identity, Data, and Wearable Security
Future of Identity, Data, and Wearable SecurityFuture of Identity, Data, and Wearable Security
Future of Identity, Data, and Wearable Security
 

Recently uploaded

AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Jeffrey Haguewood
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 

Recently uploaded (20)

AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 

2012 Confoo: Defining User Identity

  • 1. Defining User Identity True 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 Methods X.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 Methods X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 4. Human Identity: User Types Anonymous Users Real Identity Login X.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 Mozilla X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 6. Human Identity: Anonymous Users X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 7. Human Identity: Tracking Anonymous Users There are a few common options Tracking Cookie Local Storage X.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 storage X.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 Users X.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: BrowserID X.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 Methods X.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 relationships X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 22. Social Grouping: The Real Life Social Graph X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 23. Social Grouping: The Online Social Graph X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 24. Social Grouping: Group Types Follower Type Connection Type Group Type X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 25. Social Grouping: Data Miners are Rock Stars X.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 Content X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 28. Social Grouping: Group Programming Primer Step 2: Perform Keyword Density Search X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 29. Social Grouping: Group Programming Primer Step 3: Weight Keywords X.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 Methods X.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 Methods X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 35. Experimental Identity: WebFinger X.Commerce (eBay Inc.) http://www.x.com | @x_commerce
  • 36. Experimental Identity: WebFinger Step 1: Perform Discovery curl https://gmail.com/.well-known/host-meta X.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 curl http://www.google.com/s2/webfinger/?q=nakedt echnologist@gmail.com X.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 name X.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 business X.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

Editor's Notes

  1. Suck in web content via curlConvert to valid XML document (do not use as text and run Regex against it)
  2. Search through text on the page and store words + how often they are usedStrip out common words
  3. Use meta description and keywords to match against your keyword density searchUse Open Graph protocol tags to find more keywords and page content
  4. http://gizmodo.com/5470696/fck-you-google
  5. http://www.pcmag.com/article2/0,2817,2399970,00.asp
  6. 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