SlideShare a Scribd company logo
1 of 68
Download to read offline
Wie, wo, wer und was?
Geolocation im Web




                                            Chris&an Heilmann
                     WebTechCon, Mainz, Germany, October 2010
Unsere Nutzer sind
mehr und mehr
mobil.
Geographische
    Inhalte
       >
Generelle Inhalte
Wo gehts denn hier
zum Bahnhof?
Was gibt es in der
Umgebung meines
Hotels?
Wo kann man hier
aufs Klo?
Laptop + Handy +
Internet kann alles
das beantworten.
Geo Probleme die
wir loesen wollen.
Besucher finden.
Ein Weg ist IP
sniffing.
http://isithackday.com/hacks/geo/js-location.html
Ein Problem ist, das
die IP weit weg sein
kann.
Ausserdem kann ich
meine IP aendern.
W3C Geo API > IP!
Firefox/(Mobile) Safari/Chrome
W3C API = Ort, und
Ortsaenderungen.
Vorsicht Falle:
Handy Batterie!
Soziale Netzwerke.
Plazes, FireEagle,
Twitter, Yahoo,
Flickr, Foursquare,
Gowalla, Brightkite,
Google Buzz/
Latitude, Dopplr,
Facebook...
Wichtig:
Zeit und Update
Frequenz.
Latitude, Longitude
   34.0017, -84.4710
Marietta, Georgia, USA
Reverse Geocoding
http://www.flickr.com/services/api/
  flickr.places.findByLatLon.html
Mittels YQL:

select * from flickr.places where
lat=51.5142271 and lon=-0.1289602
Mehr Information
mittels YQL und
Yahoo GeoPlanet:
select * from geo.places where woeid in (
  select place.woeid from flickr.places
  where lat=51.5142271 and lon=-0.1289602
)
http://isithackday.com/hacks/geo/placefinder/
WOEID = Definition
Wo kommst denn
du her?
Geographische
Hierarchien.




    h=p://developer.yahoo.com/geo/
GeoPlanet hat
Hierarchien:

Parent, Ancestors, Children,
Siblings, Neigbours,
BelongTos.
http://isithackday.com/geoplanet-explorer/?
                woeid=615702
http://isithackday.com/geoplanet-explorer/
              geodrilldown.php
Mit diesem Beispiel
bekommen wir eine
Menge Inhalte.



 http://isithackday.com/hacks/geo/geotest.php
Worte zu Orte?


 Marietta, Georgia, USA
Uebersetzung
gesucht.
h=p://developer.yahoo.com/geo/placemaker/
Placemaker findet
Orte in Texten, Web
Adressen und RSS.
select * from
geo.placemaker
where
documentContent =
"Hey I am in Atlanta! I
came here from
London and will travel
onwards to Las Vegas
and Sao Paulo" and
documentType="text/
plain"
select * from geo.placemaker where 
documentURL =
"h=p://icant.co.uk" and documentType="text/
html" and appid=""

select * from geo.placemaker where 
documentURL =
"h=p://newsrss.bbc.co.uk/rss/
newsonline_uk_edi&on/front_page/rss.xml"
and documentType="text/rss" and appid=""
Placemaker
versteht
verschiedene
Sprachen.
Mainz

Mayence
Placemaker erkennt
auch Namen als
“falsche Orte”
Paris Hilton

Jack London
Orte und
Referenzen
kommen als
Ergebnisse zurueck.
Am einfachsten ist
es, GeoMaker
auszuprobieren.
http://github.com/codepo8/geomaker
http://icant.co.uk/geomaker/
Geonames ID
ISO
FIPS
INSEE
JGDC
IATA
ICAO
WOEID
Concordance
http://isithackday.com/hacks/geo/geosetta.php
Geo Daten anzeigen.
Statische Karten.
<img src=”http://maps.google.com/maps/
api/staticmap?
sensor=false
&size=200x200
&maptype=roadmap
&key=YOUR_MAP_KEY
&markers=color:blue|label:1|37.4447,-122.161
&markers=color:blue|label:2|
37.3385,-121.886
&markers=color:blue|label:3|
37.3716,-122.038
&markers=color:blue|label:4|
37.7792,-122.42” alt=””>
YQL + Yahoo Maps
Mehrere Karten
verwenden?
http://www.mapstraction.com/
All together now...




 http://isithackday.com/hacks/geo/yql-geo-library/
http://isithackday.com/hacks/geo/addmap.html
http://isithackday.com/hacks/geo/addmap.html
Christian Heilmann
http://wait-till-i.com        Thanks!
http://developer-evangelism.com
http://twitter.com/codepo8

More Related Content

More from Christian Heilmann

Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloChristian Heilmann
 
Artificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynoteArtificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynoteChristian Heilmann
 
Killing the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynoteKilling the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynoteChristian Heilmann
 
Progressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandProgressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandChristian Heilmann
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilegeChristian Heilmann
 
Five ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerFive ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerChristian Heilmann
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?Christian Heilmann
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Christian Heilmann
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachProgressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachChristian Heilmann
 
Progressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsProgressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsChristian Heilmann
 
Non-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansNon-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansChristian Heilmann
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Christian Heilmann
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlChristian Heilmann
 
Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Christian Heilmann
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)Christian Heilmann
 
Breaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfBreaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfChristian Heilmann
 
Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Christian Heilmann
 
Turning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftTurning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftChristian Heilmann
 

More from Christian Heilmann (20)

Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
 
Artificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynoteArtificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynote
 
Killing the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynoteKilling the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynote
 
Progressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandProgressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays Finland
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilege
 
Five ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerFive ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developer
 
Taking the P out of PWA
Taking the P out of PWATaking the P out of PWA
Taking the P out of PWA
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachProgressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReach
 
Progressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsProgressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worlds
 
Non-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansNon-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humans
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. Control
 
Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017
 
The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)
 
Breaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconfBreaking out of the Tetris mind set #btconf
Breaking out of the Tetris mind set #btconf
 
Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017
 
Turning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftTurning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and Microsoft
 

Wie, wo, wer, was- Geolocation im Web - webtechcon2010