SlideShare a Scribd company logo
1 of 53
How I built a location-based
     social app using
   OpenStreetMap data
         John McKerrell
What is MapMe.At
Social Location
Experimentation Platform
History

Started in 2007
Allowed you to label
favourite places
Few interesting methods
built in for tracking your
location including DNS
Third party services


GeoRSS
One user’s perspective
User experimentation
Developer experimentation
Mersey Ferries in Liverpool
Looks up location on
shipais.com and inserts it
into mapme.at
http://mapme.at/where/snowdrop
http://mapme.at/where/royaliris
http://mapme.at/where/royaldaffodil
.. can lead to interesting apps ..
.. and interesting ideas inspire



http://www.flickr.com/photos/mcknut/3585011720/
Social Location
Experimentation Platform
Why OpenStreetMap?
Why OpenStreetMap?
Why OpenStreetMap?

I’m a fan
Why OpenStreetMap?

I’m a fan
Huge existing dataset
Why OpenStreetMap?

I’m a fan
Huge existing dataset
Constantly evolving
Why OpenStreetMap?

I’m a fan
Huge existing dataset
Constantly evolving
Read/Write API
Why OpenStreetMap?

I’m a fan
Huge existing dataset
Constantly evolving
Read/Write API
Good license
How is OSM data used?

Maps - screenshot ideally pre-cloudmade
(Couldn’t find one)
(Demonstrates that OSM has always been a feature on OSM
even when we had a commercial mapping provider’s API)
How is OSM data used?


Maps - new screenshot showing cloudmade
Foursquare (Gowalla, Brightkite)
Foursquare (Gowalla, Brightkite)

Allows you to “check in” to places.
Foursquare (Gowalla, Brightkite)

Allows you to “check in” to places.
Have a existing database of places visible to everyone
Foursquare (Gowalla, Brightkite)

Allows you to “check in” to places.
Have a existing database of places visible to everyone
If a place doesn’t exist, you can create it
Foursquare (Gowalla, Brightkite)

Allows you to “check in” to places.
Have a existing database of places visible to everyone
If a place doesn’t exist, you can create it
Foursquare gives “Mayorship” to the person who visits a
place most often, also “Badges” to encourage activity
mapme.at places
mapme.at places
Launched in January
mapme.at places
Launched in January
Existing places show on a
map on your homepage
mapme.at places
Launched in January
Existing places show on a
map on your homepage
“map yourself” at a place
mapme.at places
Launched in January
Existing places show on a
map on your homepage
“map yourself” at a place
Also available from mobile:
http://mapme.at/me/mobile
How does it work?
How does it work?
Cloudmade reverse
geocoder returns POIs
How does it work?
Cloudmade reverse
geocoder returns POIs
Store entries in mapme.at
DB with the OSM ID
How does it work?
Cloudmade reverse
geocoder returns POIs
Store entries in mapme.at
DB with the OSM ID
Users can mark places as
favourites with optional
short label
How does it work?
How does it work?
Non-existent place? User
can still create an entry
How does it work?
Non-existent place? User
can still create an entry
Places can be private or can
be shared with others
How does it work?
Non-existent place? User
can still create an entry
Places can be private or can
be shared with others
If user shares a place with
everyone, they give us
permission to add it to OSM
Third party services
Third party services
Lots of sites have their own database with their own IDs
Third party services
Lots of sites have their own database with their own IDs
mapme.at currently tries to match Foursquare venues onto
OSM IDs using the venue name
Third party services
Lots of sites have their own database with their own IDs
mapme.at currently tries to match Foursquare venues onto
OSM IDs using the venue name
Releasing a tool soon to allow manual matching
Third party services
Lots of sites have their own database with their own IDs
mapme.at currently tries to match Foursquare venues onto
OSM IDs using the venue name
Releasing a tool soon to allow manual matching
Resulting Foursquare to OSM ID mapping will be released
Third party services
Lots of sites have their own database with their own IDs
mapme.at currently tries to match Foursquare venues onto
OSM IDs using the venue name
Releasing a tool soon to allow manual matching
Resulting Foursquare to OSM ID mapping will be released
More services coming soon too
How does this help OSM?
How does this help OSM?

New data from user submissions to fill gaps
How does this help OSM?

New data from user submissions to fill gaps
New mapping data linking OpenStreetMap
to external services
How does this help OSM?

New data from user submissions to fill gaps
New mapping data linking OpenStreetMap
to external services
More users coming to OpenStreetMap from mapme.at
Why bother mapping
     yourself?
http://vimeo.com/10636282
http://vimeo.com/10636333
Thankyou
   http://mapme.at/
http://blog.mapme.at/

More Related Content

Similar to How I built a location-based social app

Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)Chuck Greb
 
Mobile Social Location (Web 2.0 NYC edition)
Mobile Social Location (Web 2.0 NYC edition)Mobile Social Location (Web 2.0 NYC edition)
Mobile Social Location (Web 2.0 NYC edition)Matt Biddulph
 
Build with live location data
Build with live location dataBuild with live location data
Build with live location dataZahra Sdg
 
My GIS Timeline
My GIS TimelineMy GIS Timeline
My GIS Timelinejeffhobbs
 
Towards Geospatial Architectures of Participation
Towards Geospatial Architectures of ParticipationTowards Geospatial Architectures of Participation
Towards Geospatial Architectures of Participationcholmes
 
Traffic navigation application
Traffic navigation applicationTraffic navigation application
Traffic navigation applicationIbrahim Khleifat
 
Openstreetmap presentation of Mapping Party at FSMK camp
Openstreetmap presentation of Mapping Party at FSMK campOpenstreetmap presentation of Mapping Party at FSMK camp
Openstreetmap presentation of Mapping Party at FSMK campYogesh Ks
 
The Future of Indoor Mapping - Nokia / Here
The Future of Indoor Mapping - Nokia / HereThe Future of Indoor Mapping - Nokia / Here
The Future of Indoor Mapping - Nokia / HereLocal Social Summit
 
Presentationsfk2010
Presentationsfk2010Presentationsfk2010
Presentationsfk2010James DuPont
 
Using FME to Find Out What We Already Know
Using FME to Find Out What We Already KnowUsing FME to Find Out What We Already Know
Using FME to Find Out What We Already KnowSafe Software
 
LSxCafe Swtich2OSM.org talk
LSxCafe Swtich2OSM.org talkLSxCafe Swtich2OSM.org talk
LSxCafe Swtich2OSM.org talkchippy
 
Bluemapia Mobile
Bluemapia MobileBluemapia Mobile
Bluemapia MobileMark Wilcox
 
Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)
Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)
Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)Chuck Greb
 
Open street map final ppt
Open street map final pptOpen street map final ppt
Open street map final pptPrashant Menon
 

Similar to How I built a location-based social app (20)

Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
 
CityTimes
CityTimesCityTimes
CityTimes
 
Mobile Social Location (Web 2.0 NYC edition)
Mobile Social Location (Web 2.0 NYC edition)Mobile Social Location (Web 2.0 NYC edition)
Mobile Social Location (Web 2.0 NYC edition)
 
Presentation
PresentationPresentation
Presentation
 
Build with live location data
Build with live location dataBuild with live location data
Build with live location data
 
Layar @ SDForum 28 Feb 2011
Layar @ SDForum 28 Feb 2011Layar @ SDForum 28 Feb 2011
Layar @ SDForum 28 Feb 2011
 
My GIS Timeline
My GIS TimelineMy GIS Timeline
My GIS Timeline
 
Scrlc geo ppt
Scrlc geo pptScrlc geo ppt
Scrlc geo ppt
 
Towards Geospatial Architectures of Participation
Towards Geospatial Architectures of ParticipationTowards Geospatial Architectures of Participation
Towards Geospatial Architectures of Participation
 
Traffic navigation application
Traffic navigation applicationTraffic navigation application
Traffic navigation application
 
Openstreetmap presentation of Mapping Party at FSMK camp
Openstreetmap presentation of Mapping Party at FSMK campOpenstreetmap presentation of Mapping Party at FSMK camp
Openstreetmap presentation of Mapping Party at FSMK camp
 
The Future of Indoor Mapping - Nokia / Here
The Future of Indoor Mapping - Nokia / HereThe Future of Indoor Mapping - Nokia / Here
The Future of Indoor Mapping - Nokia / Here
 
Presentationsfk2010
Presentationsfk2010Presentationsfk2010
Presentationsfk2010
 
Using FME to Find Out What We Already Know
Using FME to Find Out What We Already KnowUsing FME to Find Out What We Already Know
Using FME to Find Out What We Already Know
 
LSxCafe Swtich2OSM.org talk
LSxCafe Swtich2OSM.org talkLSxCafe Swtich2OSM.org talk
LSxCafe Swtich2OSM.org talk
 
Bluemapia Mobile
Bluemapia MobileBluemapia Mobile
Bluemapia Mobile
 
Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)
Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)
Building Location-Aware Apps with Open Source & Open Data (SXSW 2015)
 
Bu
BuBu
Bu
 
Final Demo
Final DemoFinal Demo
Final Demo
 
Open street map final ppt
Open street map final pptOpen street map final ppt
Open street map final ppt
 

More from John McKerrell

Birth of DoES Liverpool - Ignite Liverpool
Birth of DoES Liverpool - Ignite Liverpool Birth of DoES Liverpool - Ignite Liverpool
Birth of DoES Liverpool - Ignite Liverpool John McKerrell
 
Introducing DoES Liverpool
Introducing DoES LiverpoolIntroducing DoES Liverpool
Introducing DoES LiverpoolJohn McKerrell
 
Managing Phone Dev Projects
Managing Phone Dev ProjectsManaging Phone Dev Projects
Managing Phone Dev ProjectsJohn McKerrell
 
Life Cycle of an iPhone App
Life Cycle of an iPhone AppLife Cycle of an iPhone App
Life Cycle of an iPhone AppJohn McKerrell
 
Open Source Software Projects I Have Known
Open Source Software Projects I Have KnownOpen Source Software Projects I Have Known
Open Source Software Projects I Have KnownJohn McKerrell
 
Maps, GPS, Location, Tracking
Maps, GPS, Location, TrackingMaps, GPS, Location, Tracking
Maps, GPS, Location, TrackingJohn McKerrell
 
Why I Track My Location and You Should Too
Why I Track My Location and You Should TooWhy I Track My Location and You Should Too
Why I Track My Location and You Should TooJohn McKerrell
 
OpenStreetView AGI 2009
OpenStreetView AGI 2009OpenStreetView AGI 2009
OpenStreetView AGI 2009John McKerrell
 
John McKerrell's slides for Amazing iPhone event 2008
John McKerrell's slides for Amazing iPhone event 2008John McKerrell's slides for Amazing iPhone event 2008
John McKerrell's slides for Amazing iPhone event 2008John McKerrell
 
State of the Map 2008 Review
State of the Map 2008 ReviewState of the Map 2008 Review
State of the Map 2008 ReviewJohn McKerrell
 
Using Crowd Sourced Data in a Commercial Mapping API
Using Crowd Sourced Data in a Commercial Mapping APIUsing Crowd Sourced Data in a Commercial Mapping API
Using Crowd Sourced Data in a Commercial Mapping APIJohn McKerrell
 

More from John McKerrell (11)

Birth of DoES Liverpool - Ignite Liverpool
Birth of DoES Liverpool - Ignite Liverpool Birth of DoES Liverpool - Ignite Liverpool
Birth of DoES Liverpool - Ignite Liverpool
 
Introducing DoES Liverpool
Introducing DoES LiverpoolIntroducing DoES Liverpool
Introducing DoES Liverpool
 
Managing Phone Dev Projects
Managing Phone Dev ProjectsManaging Phone Dev Projects
Managing Phone Dev Projects
 
Life Cycle of an iPhone App
Life Cycle of an iPhone AppLife Cycle of an iPhone App
Life Cycle of an iPhone App
 
Open Source Software Projects I Have Known
Open Source Software Projects I Have KnownOpen Source Software Projects I Have Known
Open Source Software Projects I Have Known
 
Maps, GPS, Location, Tracking
Maps, GPS, Location, TrackingMaps, GPS, Location, Tracking
Maps, GPS, Location, Tracking
 
Why I Track My Location and You Should Too
Why I Track My Location and You Should TooWhy I Track My Location and You Should Too
Why I Track My Location and You Should Too
 
OpenStreetView AGI 2009
OpenStreetView AGI 2009OpenStreetView AGI 2009
OpenStreetView AGI 2009
 
John McKerrell's slides for Amazing iPhone event 2008
John McKerrell's slides for Amazing iPhone event 2008John McKerrell's slides for Amazing iPhone event 2008
John McKerrell's slides for Amazing iPhone event 2008
 
State of the Map 2008 Review
State of the Map 2008 ReviewState of the Map 2008 Review
State of the Map 2008 Review
 
Using Crowd Sourced Data in a Commercial Mapping API
Using Crowd Sourced Data in a Commercial Mapping APIUsing Crowd Sourced Data in a Commercial Mapping API
Using Crowd Sourced Data in a Commercial Mapping API
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

How I built a location-based social app

Editor's Notes

  1. mapme.at works with various other location sources, including the new Twitter geo features, and basically any service that works with Fireeagle or can output GeoRSS.
  2. Have always had OSM maps available on the site, from the beginning they’ve often been the best maps of the places I’ve go to.
  3. Switched to cloudmade maps API partly because they were offering a great product including the Style Editor but also because we liked the idea that by forcing the user to use OSM on the site any location added to the map could be added to OSM later. We’ll come back to this soon.