stanh's picture
From stanh rss RSS  subscribe Subscribe

W3C Geolocation API - Making Websites Location-aware 

 

 
 
Tags:  wireless pos  dom  api  geolocation  loki  location  web2.0expo  geocode  w2e  geo  web  standar 
Views:  107
Published:  November 22, 2011
 
0
download

Share plick with friends Share
save to favorite
Report Abuse Report Abuse
 
Related Plicks
Verizon Wireless VI Avatar Sweepstakes

Verizon Wireless VI Avatar Sweepstakes

From: steelers
Views: 180 Comments: 0
Verizon Wireless VI Avatar Sweepstakes
 
See all 
 
More from this user
Investing In Tax Deeds Seminar For Brevard Co Presentation Used

Investing In Tax Deeds Seminar For Brevard Co Presentation Used

From: stanh
Views: 12
Comments: 0

Open Source Software Integration and Customization Service

Open Source Software Integration and Customization Service

From: stanh
Views: 497
Comments: 0

Top Legal Outsourcing (Ito) Advisors And Consultants, Black Book Survey 2007 Results

Top Legal Outsourcing (Ito) Advisors And Consultants, Black Book Survey 2007 Results

From: stanh
Views: 241
Comments: 0

How Can I Get Into A Wholesale Jewelry Business

How Can I Get Into A Wholesale Jewelry Business

From: stanh
Views: 402
Comments: 0

YMedia Not For Profit Workshop Series 2010

YMedia Not For Profit Workshop Series 2010

From: stanh
Views: 374
Comments: 0

Gotowanie Jest Proste   Fragment

Gotowanie Jest Proste Fragment

From: stanh
Views: 11
Comments: 0

See all 
 
 
 URL:          AddThis Social Bookmark Button
Embed Thin Player: (fits in most blogs)
Embed Full Player :
 
 

Name

Email (will NOT be shown to other users)

 

 
 
Comments: (watch)
 
 
Notes:
 
Slide 1: W3C Geolocation API Making Websites Location-aware Wednesday, April 1, 2009
Slide 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
Slide 3: practical tools to allow you to add location capabilities to your website today Wednesday, April 1, 2009
Slide 4: What is Geolocation? History of Geolocation on the web Current State of the Union Location Technologies Code Examples Questions Wednesday, April 1, 2009
Slide 5: location = context Wednesday, April 1, 2009
Slide 6: higher context = relevancy Wednesday, April 1, 2009
Slide 7: higher location = relevancy Wednesday, April 1, 2009
Slide 8: location comes in many flavors Wednesday, April 1, 2009
Slide 9: 37.78467, -122.40162 Wednesday, April 1, 2009
Slide 10: Wednesday, April 1, 2009
Slide 11: 747 Howard St, San Francisco, CA Wednesday, April 1, 2009
Slide 12: 4th St & Howard St Wednesday, April 1, 2009
Slide 13: Soma Wednesday, April 1, 2009
Slide 14: Pete’s Coffee Wednesday, April 1, 2009
Slide 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
Slide 16: how you display it can be used as a way of blurring location Wednesday, April 1, 2009
Slide 17: Ryan checked into The Mission Wednesday, April 1, 2009
Slide 18: map markers can be misleading when dealing with user’s location ... maybe use text instead Wednesday, April 1, 2009
Slide 19: Wednesday, April 1, 2009
Slide 20: Wednesday, April 1, 2009
Slide 21: so, why should I use it? Wednesday, April 1, 2009
Slide 22: Wednesday, April 1, 2009
Slide 23: HISTORY a lot has changed in a year Wednesday, April 1, 2009
Slide 24: Wednesday, April 1, 2009
Slide 25: locationaware.org Wednesday, April 1, 2009
Slide 26: Google Gears Wednesday, April 1, 2009
Slide 27: W3C Geolocation API Wednesday, April 1, 2009
Slide 28: coalition of the willing Wednesday, April 1, 2009
Slide 29: state of the union http://www.flickr.com/photos/xrrr/2478140383/ Wednesday, April 1, 2009
Slide 30: 2009 is the year of location in the Browser Wednesday, April 1, 2009
Slide 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
Slide 32: http://bit.ly/mozilla-geode http://bit.ly/opera-geolocation http://google.com/chrome Wednesday, April 1, 2009
Slide 33: Location Technologies Wednesday, April 1, 2009
Slide 34: Two primary methods 1. IP Geolocation 2. Triangulation • GPS • Wi-Fi • Cell Tower Wednesday, April 1, 2009
Slide 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
Slide 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
Slide 37: Triangulation GPS Wi-Fi Cell Tower Wednesday, April 1, 2009 10 m 20 m 1000 m
Slide 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
Slide 39: Wi-Fi Triangulation Wednesday, April 1, 2009
Slide 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
Slide 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
Slide 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
Slide 43: short answer hyrbid is the way Wednesday, April 1, 2009
Slide 44: W3C Geolocation API ... shut up and get to the code Wednesday, April 1, 2009
Slide 45: Single shot lookup navigator.geolocation.getCurrentPosition(function(pos){ //show map at (pos.coords.latitude, pos.coords.longitude) }); Wednesday, April 1, 2009
Slide 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
Slide 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
Slide 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
Slide 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
Slide 50: PositionOptions interface PositionOptions { attribute boolean enableHighAccuracy; attribute long timeout; attribute long maximumAge; }; Wednesday, April 1, 2009
Slide 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
Slide 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
Slide 53: Upcoming Geo Events • Where 2.0 San Jose, CA May 19th - 21st San Francisco, CA May 23rd - 24th • WhereCamp Wednesday, April 1, 2009
Slide 54: Questions? tweet @rsarver with questions as well Wednesday, April 1, 2009

   
Time on Slide Time on Plick
Slides per Visit Slide Views Views by Location