SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Downloaden Sie, um offline zu lesen
W3C Geolocation API
      Making Websites Location-aware




Wednesday, April 1, 2009
me
                    • Director of Consumer Products at Skyhook
                      Wireless
                    • Founded Locationaware.org which
                      eventually became W3C Geolocation API
                      Working Group
                    • Follow @rsarver to get the SlideShare link
                      for slides after I post them


Wednesday, April 1, 2009
practical tools to allow you to
                   add location capabilities to
                       your website today



Wednesday, April 1, 2009
What is Geolocation?

                           History of Geolocation on the web

                           Current State of the Union

                           Location Technologies

                           Code Examples

                           Questions


Wednesday, April 1, 2009
location = context



Wednesday, April 1, 2009
higher
                           context =
                                     relevancy


Wednesday, April 1, 2009
higher
                       location =
                                  relevancy


Wednesday, April 1, 2009
location comes in
                             many flavors


Wednesday, April 1, 2009
37.78467, -122.40162



Wednesday, April 1, 2009
Wednesday, April 1, 2009
747 Howard St, San
                          Francisco, CA


Wednesday, April 1, 2009
4th St & Howard St



Wednesday, April 1, 2009
Soma



Wednesday, April 1, 2009
Pete’s Coffee



Wednesday, April 1, 2009
Business Search APIs
                    • Yahoo Local Search API
                    • Yelp API
                    • Localeze - sells business listing
                      information
                    • small businesses are tough, no db is
                      totally complete


Wednesday, April 1, 2009
how you display it
                 can be used as a way
                  of blurring location


Wednesday, April 1, 2009
Ryan checked into The
                        Mission


Wednesday, April 1, 2009
map markers can be
   misleading when dealing
      with user’s location




                           ... maybe use text instead
Wednesday, April 1, 2009
Wednesday, April 1, 2009
Wednesday, April 1, 2009
so, why should I use it?



Wednesday, April 1, 2009
Wednesday, April 1, 2009
HISTORY
                           a lot has changed in a year




Wednesday, April 1, 2009
Wednesday, April 1, 2009
locationaware.org


Wednesday, April 1, 2009
Google Gears


Wednesday, April 1, 2009
W3C Geolocation API

Wednesday, April 1, 2009
coalition of the willing




Wednesday, April 1, 2009
state of the union



http://www.flickr.com/photos/xrrr/2478140383/
Wednesday, April 1, 2009
2009 is the year of
                             location in the
                                Browser


Wednesday, April 1, 2009
• Geode Extension in Mozilla Labs.
                             Powered by Skyhook
                           • W3C Geolocation API support
                             natively in 3.1 (now called 3.5)

                           • Opera Labs release with W3C
                             Geolocation API support. Powered
                             by Skyhook


                           • Support in Chrome for Windows
                             and Android

Wednesday, April 1, 2009
http://bit.ly/mozilla-geode




     http://bit.ly/opera-geolocation




    http://google.com/chrome
Wednesday, April 1, 2009
Location Technologies



Wednesday, April 1, 2009
Two primary methods
                1. IP Geolocation
                2. Triangulation
                           • GPS
                           • Wi-Fi
                           • Cell Tower


Wednesday, April 1, 2009
IP Geolocation
          Pros
              • Widely available
              • Detection happens server-side
          Cons
              • Only accurate to the city-level
              • Only in the right state 85% of the time
              • Costly
              • Produces false positives
Wednesday, April 1, 2009
IP Geolocation
          Vendors

              • MaxMind - http://www.maxmind.com
                    • Has a free database - GeoLite City
              • Quova - http://www.quova.com
              • IPligence - http://www.ipilgence.com
              • IP2Location - http://www.ip2location.com


Wednesday, April 1, 2009
Triangulation
       GPS                                 10 m
       Wi-Fi                               20 m

       Cell Tower                     1000 m
Wednesday, April 1, 2009
GPS
          Pros
              • Accurate after it gets a fix
              • Highly accurate in rural area

          Cons
              • Doesn’t work indoors
              • Difficulty with Urban Canyons
              • Long Time to First Fix


Wednesday, April 1, 2009
Wi-Fi Triangulation




Wednesday, April 1, 2009
Wi-Fi Positioning (WPS)
          Pros
              • Accurate
              • Works indoors and in Urban Areas
              • Quick Time to First Fix
              • Software-only, leverages existing Wi-Fi

          Cons
              • Doesn’t work well in rural areas


Wednesday, April 1, 2009
• Cross-platform, cross-browser plugin for
                      adding geolocation to any website
                    • Locate a user down to their exact street
                      address with a few lines of javascript
                    • http://loki.com/how
                    • </plug>


Wednesday, April 1, 2009
Cell Triangulation
          Pros
              • Works where there is cell coverage (most
                areas)
              • Quick Time to First Fix
              • Software-only, leverages existing cellular
                radio

          Cons
              • Very inaccurate


Wednesday, April 1, 2009
short answer
                             hyrbid is the way




Wednesday, April 1, 2009
W3C Geolocation API

                           ... shut up and get to the code



Wednesday, April 1, 2009
Single shot lookup


   navigator.geolocation.getCurrentPosition(function(pos){
        //show map at (pos.coords.latitude, pos.coords.longitude)
   });




Wednesday, April 1, 2009
Position &
                       Coordinates Objects
   interface Position {
         readonly attribute Coordinates coords;
         readonly attribute DOMTimeStamp timestamp;
   };
   interface Coordinates {
         readonly attribute double latitude;
         readonly attribute double longitude;
         readonly attribute double altitude;
         readonly attribute double accuracy;
         readonly attribute double altitudeAccuracy;
         readonly attribute double heading;
         readonly attribute double speed;
   };
Wednesday, April 1, 2009
Single shot lookup w/
                        callbacks
   function showMap(pos) {
        //show map at pos.coords.latitude, pos.coords.longitude
   }
   function showError(err) {
        alert(err.message + ‘, ’ + err.code);
   }
   navigator.geolocation.getCurrentPosition(showMap, showError);




Wednesday, April 1, 2009
PositionError Object
   interface PositionError {
          const unsigned short UNKNOWN_ERROR = 0;
          const unsigned short PERMISSION_DENIED = 1;
          const unsigned short POSITION_UNAVAILABLE = 2;
          const unsigned short TIMEOUT = 3;
          readonly unsigned short code;
          readonly DOMString message;
   };




Wednesday, April 1, 2009
Single shot lookup w/
                   callbacks & options
   function showMap(pos) {
        //show map at pos.coords.latitude, pos.coords.longitude
   }
   function showError(err) {
        alert(err.message + ‘, ’ + err.code);
   }
   navigator.geolocation.getCurrentPosition(showMap, showError,
   {enableHighAccuracy:true});




Wednesday, April 1, 2009
PositionOptions

    interface PositionOptions {
            attribute boolean enableHighAccuracy;
            attribute long timeout;
            attribute long maximumAge;
    };




Wednesday, April 1, 2009
Single shot lookup w/
                     cached position
   function showMap(pos) {
        //show map at pos.coords.latitude, pos.coords.longitude
   }
   function showError(err) {
        alert(err.message + ‘, ’ + err.code);
   }
   navigator.geolocation.getCurrentPosition(showMap, showError,
   {maximumAge:300000, timeout:0});




Wednesday, April 1, 2009
Periodic lookup w/
                                callbacks
   function moveMap(pos) {
        //update map to pos.coords.latitude, pos.coords.longitude
   }
   function showError(err) {
        alert(err.message + ‘, ’ + err.code);
   }


   // Track location with periodic updates
   watchId = navigator.geolocation.watchPosition(moveMap, showError);


   function stopTracking() {
        navigator.geolocation.clearWatch(watchId);
   }




Wednesday, April 1, 2009
Upcoming Geo Events
                                • Where 2.0
                                 San Jose, CA
                                 May 19th - 21st
                                • WhereCamp
                                 San Francisco, CA
                                 May 23rd - 24th



Wednesday, April 1, 2009
Questions?
                     tweet @rsarver with questions as well




Wednesday, April 1, 2009

Weitere ähnliche Inhalte

Was ist angesagt?

Automation through APIs with the new UiPath Integration Service
 Automation through APIs with the new UiPath Integration Service Automation through APIs with the new UiPath Integration Service
Automation through APIs with the new UiPath Integration ServiceCristina Vidu
 
Introduction to Robotic Process Automation
Introduction to Robotic Process AutomationIntroduction to Robotic Process Automation
Introduction to Robotic Process AutomationBoTree Technologies
 
The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...
The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...
The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...Milena Mitova
 
The Joy of SciPy
The Joy of SciPyThe Joy of SciPy
The Joy of SciPykammeyer
 

Was ist angesagt? (8)

ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
Introduction of python
Introduction of pythonIntroduction of python
Introduction of python
 
Automation through APIs with the new UiPath Integration Service
 Automation through APIs with the new UiPath Integration Service Automation through APIs with the new UiPath Integration Service
Automation through APIs with the new UiPath Integration Service
 
Introduction to Robotic Process Automation
Introduction to Robotic Process AutomationIntroduction to Robotic Process Automation
Introduction to Robotic Process Automation
 
The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...
The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...
The Ultimate Easy-Peasy Guide to Tracking Inbound & Internal Marketing Campai...
 
The Joy of SciPy
The Joy of SciPyThe Joy of SciPy
The Joy of SciPy
 
Html 5
Html 5Html 5
Html 5
 
Introduction to XML
Introduction to XMLIntroduction to XML
Introduction to XML
 

Andere mochten auch

Location, location, geolocation
Location, location, geolocationLocation, location, geolocation
Location, location, geolocationMax Wheeler
 
HTML5 Geolocation API
HTML5 Geolocation APIHTML5 Geolocation API
HTML5 Geolocation APIFilip Mares
 
Wireless Geolocation
Wireless GeolocationWireless Geolocation
Wireless GeolocationFatema Zohora
 
Conversion Matters présente : Les 4 bénéfices de la géolocalisation
Conversion Matters présente : Les 4 bénéfices de la géolocalisationConversion Matters présente : Les 4 bénéfices de la géolocalisation
Conversion Matters présente : Les 4 bénéfices de la géolocalisationKameleoon
 
Chek mate geolocation analyzer
Chek mate geolocation analyzerChek mate geolocation analyzer
Chek mate geolocation analyzerpriyal mistry
 
Lunch2.0 - Geolocation - July 2010
Lunch2.0 - Geolocation - July 2010Lunch2.0 - Geolocation - July 2010
Lunch2.0 - Geolocation - July 2010Jeff Schneidewind
 
Wireless fidelity (a.k.a Wi-Fi)
Wireless fidelity (a.k.a Wi-Fi)Wireless fidelity (a.k.a Wi-Fi)
Wireless fidelity (a.k.a Wi-Fi)Vineet Sansare
 
OpenSource for Entreprise
OpenSource for EntrepriseOpenSource for Entreprise
OpenSource for EntrepriseEric Fesler
 
Vehicular sensor netwks ppt
Vehicular sensor netwks pptVehicular sensor netwks ppt
Vehicular sensor netwks pptVenkatesh Kaduru
 
Interactive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User InterfaceInteractive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User InterfaceAdityo Pratomo
 
Wlan 802.11n - MAC Sublayer
Wlan 802.11n - MAC SublayerWlan 802.11n - MAC Sublayer
Wlan 802.11n - MAC SublayerMd Syed Ahamad
 
Lecture 6 geolocation
Lecture 6 geolocationLecture 6 geolocation
Lecture 6 geolocationmoduledesign
 

Andere mochten auch (20)

Location, location, geolocation
Location, location, geolocationLocation, location, geolocation
Location, location, geolocation
 
HTML5 Geolocation API
HTML5 Geolocation APIHTML5 Geolocation API
HTML5 Geolocation API
 
Wireless Geolocation
Wireless GeolocationWireless Geolocation
Wireless Geolocation
 
Conversion Matters présente : Les 4 bénéfices de la géolocalisation
Conversion Matters présente : Les 4 bénéfices de la géolocalisationConversion Matters présente : Les 4 bénéfices de la géolocalisation
Conversion Matters présente : Les 4 bénéfices de la géolocalisation
 
Wat betekent-presentatie
Wat betekent-presentatieWat betekent-presentatie
Wat betekent-presentatie
 
Chek mate geolocation analyzer
Chek mate geolocation analyzerChek mate geolocation analyzer
Chek mate geolocation analyzer
 
Social commerce
Social commerceSocial commerce
Social commerce
 
Seminar
SeminarSeminar
Seminar
 
Lunch2.0 - Geolocation - July 2010
Lunch2.0 - Geolocation - July 2010Lunch2.0 - Geolocation - July 2010
Lunch2.0 - Geolocation - July 2010
 
Wireless fidelity (a.k.a Wi-Fi)
Wireless fidelity (a.k.a Wi-Fi)Wireless fidelity (a.k.a Wi-Fi)
Wireless fidelity (a.k.a Wi-Fi)
 
Wi-Fi Tecnology
Wi-Fi TecnologyWi-Fi Tecnology
Wi-Fi Tecnology
 
OpenSource for Entreprise
OpenSource for EntrepriseOpenSource for Entreprise
OpenSource for Entreprise
 
Vehicular sensor netwks ppt
Vehicular sensor netwks pptVehicular sensor netwks ppt
Vehicular sensor netwks ppt
 
Wi Fi
Wi FiWi Fi
Wi Fi
 
Vehicular Networks
Vehicular NetworksVehicular Networks
Vehicular Networks
 
Interactive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User InterfaceInteractive Data Visualization with Tangible User Interface
Interactive Data Visualization with Tangible User Interface
 
Wlan 802.11n - MAC Sublayer
Wlan 802.11n - MAC SublayerWlan 802.11n - MAC Sublayer
Wlan 802.11n - MAC Sublayer
 
Lecture 6 geolocation
Lecture 6 geolocationLecture 6 geolocation
Lecture 6 geolocation
 
Microwave oven
Microwave ovenMicrowave oven
Microwave oven
 
Vehicular ad hoc network
Vehicular ad hoc networkVehicular ad hoc network
Vehicular ad hoc network
 

Ähnlich wie W3C Geolocation API - Making Websites Location-aware

Building Apis That Rock
Building Apis That RockBuilding Apis That Rock
Building Apis That RockJeff Eaton
 
Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsDietrich Ayala
 
Designing the experience of locative media
Designing the experience of locative mediaDesigning the experience of locative media
Designing the experience of locative mediaLauri Laineste
 
Web Motion: Motion Detection on the Web
Web Motion: Motion Detection on the WebWeb Motion: Motion Detection on the Web
Web Motion: Motion Detection on the Webfisherwebdev
 
Achieving Scale With Messaging And The Cloud 20090709
Achieving Scale With Messaging And The Cloud 20090709Achieving Scale With Messaging And The Cloud 20090709
Achieving Scale With Messaging And The Cloud 20090709leastfixedpoint
 
Making things Move on the iPhone
Making things Move on the iPhoneMaking things Move on the iPhone
Making things Move on the iPhoneJohn Wilker
 
Getting Off the Island
Getting Off the IslandGetting Off the Island
Getting Off the IslandESUG
 
Introtoduction to cocos2d
Introtoduction to  cocos2dIntrotoduction to  cocos2d
Introtoduction to cocos2dJohn Wilker
 

Ähnlich wie W3C Geolocation API - Making Websites Location-aware (11)

Building Apis That Rock
Building Apis That RockBuilding Apis That Rock
Building Apis That Rock
 
Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web Innovators
 
Hawaii Pacific GIS Conference 2012: Internet GIS - Create Your Own Google Lik...
Hawaii Pacific GIS Conference 2012: Internet GIS - Create Your Own Google Lik...Hawaii Pacific GIS Conference 2012: Internet GIS - Create Your Own Google Lik...
Hawaii Pacific GIS Conference 2012: Internet GIS - Create Your Own Google Lik...
 
Depot Best Practices
Depot Best PracticesDepot Best Practices
Depot Best Practices
 
ERECOMPI
ERECOMPIERECOMPI
ERECOMPI
 
Designing the experience of locative media
Designing the experience of locative mediaDesigning the experience of locative media
Designing the experience of locative media
 
Web Motion: Motion Detection on the Web
Web Motion: Motion Detection on the WebWeb Motion: Motion Detection on the Web
Web Motion: Motion Detection on the Web
 
Achieving Scale With Messaging And The Cloud 20090709
Achieving Scale With Messaging And The Cloud 20090709Achieving Scale With Messaging And The Cloud 20090709
Achieving Scale With Messaging And The Cloud 20090709
 
Making things Move on the iPhone
Making things Move on the iPhoneMaking things Move on the iPhone
Making things Move on the iPhone
 
Getting Off the Island
Getting Off the IslandGetting Off the Island
Getting Off the Island
 
Introtoduction to cocos2d
Introtoduction to  cocos2dIntrotoduction to  cocos2d
Introtoduction to cocos2d
 

Kürzlich hochgeladen

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 Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
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 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 

Kürzlich hochgeladen (20)

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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
+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...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
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
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

W3C Geolocation API - Making Websites Location-aware

  • 1. W3C Geolocation API Making Websites Location-aware Wednesday, April 1, 2009
  • 2. me • Director of Consumer Products at Skyhook Wireless • Founded Locationaware.org which eventually became W3C Geolocation API Working Group • Follow @rsarver to get the SlideShare link for slides after I post them Wednesday, April 1, 2009
  • 3. practical tools to allow you to add location capabilities to your website today Wednesday, April 1, 2009
  • 4. What is Geolocation? History of Geolocation on the web Current State of the Union Location Technologies Code Examples Questions Wednesday, April 1, 2009
  • 6. higher context = relevancy Wednesday, April 1, 2009
  • 7. higher location = relevancy Wednesday, April 1, 2009
  • 8. location comes in many flavors Wednesday, April 1, 2009
  • 11. 747 Howard St, San Francisco, CA Wednesday, April 1, 2009
  • 12. 4th St & Howard St Wednesday, April 1, 2009
  • 15. Business Search APIs • Yahoo Local Search API • Yelp API • Localeze - sells business listing information • small businesses are tough, no db is totally complete Wednesday, April 1, 2009
  • 16. how you display it can be used as a way of blurring location Wednesday, April 1, 2009
  • 17. Ryan checked into The Mission Wednesday, April 1, 2009
  • 18. map markers can be misleading when dealing with user’s location ... maybe use text instead Wednesday, April 1, 2009
  • 21. so, why should I use it? Wednesday, April 1, 2009
  • 23. HISTORY a lot has changed in a year Wednesday, April 1, 2009
  • 28. coalition of the willing Wednesday, April 1, 2009
  • 29. state of the union http://www.flickr.com/photos/xrrr/2478140383/ Wednesday, April 1, 2009
  • 30. 2009 is the year of location in the Browser Wednesday, April 1, 2009
  • 31. • Geode Extension in Mozilla Labs. Powered by Skyhook • W3C Geolocation API support natively in 3.1 (now called 3.5) • Opera Labs release with W3C Geolocation API support. Powered by Skyhook • Support in Chrome for Windows and Android Wednesday, April 1, 2009
  • 32. http://bit.ly/mozilla-geode http://bit.ly/opera-geolocation http://google.com/chrome Wednesday, April 1, 2009
  • 34. Two primary methods 1. IP Geolocation 2. Triangulation • GPS • Wi-Fi • Cell Tower Wednesday, April 1, 2009
  • 35. IP Geolocation Pros • Widely available • Detection happens server-side Cons • Only accurate to the city-level • Only in the right state 85% of the time • Costly • Produces false positives Wednesday, April 1, 2009
  • 36. IP Geolocation Vendors • MaxMind - http://www.maxmind.com • Has a free database - GeoLite City • Quova - http://www.quova.com • IPligence - http://www.ipilgence.com • IP2Location - http://www.ip2location.com Wednesday, April 1, 2009
  • 37. Triangulation GPS 10 m Wi-Fi 20 m Cell Tower 1000 m Wednesday, April 1, 2009
  • 38. GPS Pros • Accurate after it gets a fix • Highly accurate in rural area Cons • Doesn’t work indoors • Difficulty with Urban Canyons • Long Time to First Fix Wednesday, April 1, 2009
  • 40. Wi-Fi Positioning (WPS) Pros • Accurate • Works indoors and in Urban Areas • Quick Time to First Fix • Software-only, leverages existing Wi-Fi Cons • Doesn’t work well in rural areas Wednesday, April 1, 2009
  • 41. • Cross-platform, cross-browser plugin for adding geolocation to any website • Locate a user down to their exact street address with a few lines of javascript • http://loki.com/how • </plug> Wednesday, April 1, 2009
  • 42. Cell Triangulation Pros • Works where there is cell coverage (most areas) • Quick Time to First Fix • Software-only, leverages existing cellular radio Cons • Very inaccurate Wednesday, April 1, 2009
  • 43. short answer hyrbid is the way Wednesday, April 1, 2009
  • 44. W3C Geolocation API ... shut up and get to the code Wednesday, April 1, 2009
  • 45. Single shot lookup navigator.geolocation.getCurrentPosition(function(pos){ //show map at (pos.coords.latitude, pos.coords.longitude) }); Wednesday, April 1, 2009
  • 46. Position & Coordinates Objects interface Position { readonly attribute Coordinates coords; readonly attribute DOMTimeStamp timestamp; }; interface Coordinates { readonly attribute double latitude; readonly attribute double longitude; readonly attribute double altitude; readonly attribute double accuracy; readonly attribute double altitudeAccuracy; readonly attribute double heading; readonly attribute double speed; }; Wednesday, April 1, 2009
  • 47. Single shot lookup w/ callbacks function showMap(pos) { //show map at pos.coords.latitude, pos.coords.longitude } function showError(err) { alert(err.message + ‘, ’ + err.code); } navigator.geolocation.getCurrentPosition(showMap, showError); Wednesday, April 1, 2009
  • 48. PositionError Object interface PositionError { const unsigned short UNKNOWN_ERROR = 0; const unsigned short PERMISSION_DENIED = 1; const unsigned short POSITION_UNAVAILABLE = 2; const unsigned short TIMEOUT = 3; readonly unsigned short code; readonly DOMString message; }; Wednesday, April 1, 2009
  • 49. Single shot lookup w/ callbacks & options function showMap(pos) { //show map at pos.coords.latitude, pos.coords.longitude } function showError(err) { alert(err.message + ‘, ’ + err.code); } navigator.geolocation.getCurrentPosition(showMap, showError, {enableHighAccuracy:true}); Wednesday, April 1, 2009
  • 50. PositionOptions interface PositionOptions { attribute boolean enableHighAccuracy; attribute long timeout; attribute long maximumAge; }; Wednesday, April 1, 2009
  • 51. Single shot lookup w/ cached position function showMap(pos) { //show map at pos.coords.latitude, pos.coords.longitude } function showError(err) { alert(err.message + ‘, ’ + err.code); } navigator.geolocation.getCurrentPosition(showMap, showError, {maximumAge:300000, timeout:0}); Wednesday, April 1, 2009
  • 52. Periodic lookup w/ callbacks function moveMap(pos) { //update map to pos.coords.latitude, pos.coords.longitude } function showError(err) { alert(err.message + ‘, ’ + err.code); } // Track location with periodic updates watchId = navigator.geolocation.watchPosition(moveMap, showError); function stopTracking() { navigator.geolocation.clearWatch(watchId); } Wednesday, April 1, 2009
  • 53. Upcoming Geo Events • Where 2.0 San Jose, CA May 19th - 21st • WhereCamp San Francisco, CA May 23rd - 24th Wednesday, April 1, 2009
  • 54. Questions? tweet @rsarver with questions as well Wednesday, April 1, 2009

Hinweis der Redaktion

  1. - who here runs a website? - who here uses location of some kind on their website? - mobile?
  2. - who here already knows Skyhook?
  3. - its important that you can leave here
  4. - leave lots of time for questions at the end
  5. - location is a proxy to lots of metadata - rich demographic data - context about the physical surroundings of the user - events they might be at - nearby POIs - time of day, weather
  6. - the more context you have the more relevant the experience you can delivery
  7. - deliver the most highly relevant experience to your users - use most accurate location available
  8. - so lets define &#x201C;location&#x201D; - what does that mean?
  9. - going to become important that sites can work with lat/lon - w3c api will always deliver you a lat/lon - start to architect your apps to store lat/lon as well
  10. - anyone here use brightkite or foursquare? - disambiguate lat/lon into something meaningful. business names are great - also consider using custom place names
  11. - some location information is only relevant to nearby users - placenames, neighborhoods - add higher-level context for other users
  12. - maps can be a misnomer bc users dont always want to share exact location - EXAMPLE: user is in San Francisco -- where do you put the marker? - consider text display
  13. - Here is a video of BrightKite using auto-location - gives you a feel for how other sites are doing it
  14. - relevancy. too much noise, not enough signal - location is a piece of metadata that can make the entire web more relevant - better user experience - geotag photos, share location on social networks, local search, local news
  15. - Lets take a store finder as an example - each dot represents a Dunkin Donuts in Boston - if you ask a user to tell you where they are, they will say &#x201C;boston&#x201D; or &#x201C;02218&#x201D; - using precise location allows you to instantly show them the correct location and start to route them there
  16. - A lot has changed in one year, since i was here last - last year i was talking about the how it was coming together and some tools - now, W3C working group and 3 major browser vendors you can download today
  17. - Loki was launched at Where 2.0 in 2006 - toolbar to get skyhook&#x2019;s technology into the browser - eventually made a javascript API to the toolbar
  18. - May 2006 - i realized the only way for this to grow was to get consensus among browser vendors - needed to evangelize the idea of location on the web - no one knew you could make a laptop a gps-like device - pre iPhone
  19. - google picked it up, added it to Gears - started with cell positioning for mobile devices - created their own Javascript API
  20. - June 2008 - standardize the way geolocation is exposed through the browser
  21. - all major vendors are involved - already getting to draft - KISS
  22. &#x201C;its all coming together&#x201D;
  23. - bold proclamation - location was always the technology of next year, well its finally next year - desktops, laptops and netbooks will all be location enabled
  24. - accuracy is directly proportional to cell size - gps, wps = street address accuracy - cell = neighborhood / city accuracy
  25. - instead of waiting for all the browsers, add it now - cross platform, cross browser - on MapQuest.com/findme
  26. - Wi-Fi positioning is primary, IP as a fallback
  27. - REALLY this simple to add location to your website
  28. enableHighAccuracy will probably change
  29. do this to save a new location request. power friendly position <= 5 minutes timeout:0 = return cached position
  30. do this to save a new location request. power friendly position <= 5 minutes timeout:0 = return cached position
  31. - if you are looking to get more involved in geo, there are some great events to attend