OpenStreetMap logo OpenStreetMap

Diary Entries in English

Recent diary entries

About three years ago, I had given a talk to some folks at the Irish Wheelchair Association in Kilkenny about the history of Kilkenny. They wanted me to do that again, but I thought that giving the same talk would be boring and asked whether I could talk about mapping accessibility instead. They were open to the idea, so I did that. I thought it would be a good opportunity to tell them about OpenStreetMap, but also to get some input from them about what else we could map.

In preparation for the talk, I created an “accessibility” preset in StreetComplete with quests all to do with wheelchair and visually impaired mapping, including the surface quest, because I figured that would be important for the routing services for wheelchairs. I surveyed quite a bit in Kilkenny city centre to get an idea of what the situation in town is.

I’ve recorded a video with the same slides I used for the talk which you can watch on YouTube (proof-read English and German subtitles available).

Additional quests for StreetComplete that I came up either by myself or with their help are (They’re also in the video, but it’s handy to have them listed here.):

  • Is this ATM wheelchair accessible?
  • Is this vending machine accessible?
  • Is payment in this shop/ restaurant wheelchair accessible? (They said that sometimes the payment terminals are fixed in place too high up on a counter.)

After the talk, one of the facilitators told me about an upcoming audit walk in Kilkenny (on the 24th of July) to assess accessibility. So I got in contact with them to tell them about wheelmap.org and sent them a link to the video, so they don’t audit things I have already surveyed.

I used two overpass-turbo queries in the talk/ video to show some of the data that can be extracted from OSM:

See full entry

📊 First changeset review insights for Andhra Pradesh, India

  • 🙋‍♂️ Review Requests: 32% of newcomers requested a review of their first changeset.
  • ✨ Technical Quality: 32% of a newcomer’s very first edits are completely free of technical errors.
  • ⚠️ Low-Severity Issues: 49% of changesets have low serverity errors like abbreviation issues or duplicate node-way geometries

💡 Localized, faster community validation workflows are essential to support mapping talent.

About 450 editors join OpenStreetMap and contribute their first edit everyday based on a study for the year 2023.1 Despite diverse OSM review tools and processes, there were few studies about OSM new editor data quality at country level.2 Very little is known about their contribution quality and persistence at province level. This need was identified in the first ever desk analysis of State of the map for Andhra Pradesh in 2025. Even attempting to statistically analyze is not easy, given the need to query databases with specialized programs. OSM Changeset Analyser(OSMCha) is a very good tool for reviews. Using OSMCha and OSM APIs, I built a small Python Jupyter notebook program with help from Github Copilot. I applied this to understand the new editors contributions for Andhra Pradesh province of India for Q1, 2026. I found that 32% of first edit changesets are of good quality. 49% have low severity issues. Only 3% continue the edit activity in the subsequent 30 days after discussion on their first changesets. This program can be reused easily by modifying OSMCHA’s AOI filter identifier and OSMCHA user token.

Review process using OSMCha

See full entry

Location: Jayanagar 4th Block, Tilak Nagara, Bengaluru South City Corporation, Bengaluru, Bangalore South, Bengaluru Urban, Karnataka, 560011, India

Hi again! During the last weeks I’ve been working on a Python prototype of the medial axis that will later be implemented in Valhalla

The goal of this prototype is to validate the algorithm, experiment with different choices and make it work for some synthetic and real OSM areas.

I’ve done it using Shapely, which is a python package built on top of GEOS (the library used by Valhalla). So thanks to Shapely I can implement the algorithm using functions that I’ll use in Valhalla, but in a much easier way without having to care about Valhalla’s complexity.

However GEOS doesn’t provide a medial axis implementation. So to achieve the medial axis we have to build it from the Voronoi Diagram. The thing with the Voronoi is that it doesn’t care about topology it just works with point clouds. So in order to get a medial axis of it we have to:

  1. Collect all vertices from the polygon’s outer boundary and its holes
  2. Generate the Voronoi diagram
  3. Iterate over every Voronoi Edge
  4. Discard every edge that is not completely contained within the polygon

And then we have our medial axis! This is a raw version, later we have to prune it as explained in the previous diary entry.

Algorithm overview

1. Building the polygon

The first step is whether to reconstruct the polygon from OpenStreetMap or create my own polygon to test the exact case I want to.

For example:

square = Polygon(
    [(0,0),(5,0),(5,10),(30,10),(30,30),(0,30)], # outer ring
    [
        [(5,15),(10,11),(18,15),(18,20),(5,20)], # inner rings
        [(2,5),(3,3),(4,5),(3,8)],
    ])

See full entry

Location: La Fama, Murcia, Puente Tocinos, Murcia, Área Metropolitana de Murcia, Region of Murcia, Spain

We’ve got another OSMLondon pub meet-up tonight!. I’m trying to be a bit more orginal with pub choices recently, so I picked a place down in Victoria. This is not the end of London I know best, but it’s good to go South a bit. In fact I seem to remember past Victoria meet-ups (at The Windsor Castle?) being very well attended, so we’ll see. I also don’t know The Albert pub, so we just have to cross our fingers for good beer choice/food/spaciousness practicalities. If it’s hideously busy we’ll have to tough it out until the after work crowds disperse.

The last meet-up I picked “The Globe” near Moorgate. That worked pretty well for attracting attendees. I suppose it’s nice and central and in The City where a lot of people work. We got some new folks coming along, including some very active OSMers who’d not joined us at a meet-up before.

I feel like the pub was not so good for being a bit expensive. City prices? Or maybe it’s just my imagination. We’ve had some recent rounds of inflation so I haven’t got used to >£7 per pint yet :-( It’d be interesting to know if price differences between cheap and expensive pubs have shifted too. Feels like not much difference these days. It’s expensive everywhere. I used to like choosing pubs where beer is cheap, like Wetherspoons and Sam Smiths, but I suppose I can’t expect student prices all my life.

But yes… otherwise “The Globe” pub worked pretty well.

See full entry

Location: Westminster, Millbank, City of Westminster, Greater London, England, SW1P 3JX, United Kingdom
Posted by Candid Dauth on 29 June 2026 in English. Last updated on 1 July 2026.

For many years it has bugged me that no maps display whether a road is a toll road, whether cycling is forbidden there and whether its surface is made of cobblestone. For driving, avoiding toll roads can save a lot of money in many places, but sometimes taking a small section of toll road can save a lot of fuel and time. For cycling, in some especially bicycle-hostile countries (for example Germany, Austria, Switzerland and Belgium), cycling is forbidden on the majority of main roads, and the alternatives are often in a very bad state. In East Germany in particular, many small roads and streets are paved with cobblestones, which makes cycling slow and uncomfortable and can cause damage to the body, bicycle and luggage.

While route calculation services offer to avoid these types of roads to some extent, rendering them on a map is important to get a general overview of different options, and in case of cycling because route calculation generally works badly, as personal preferences and cycling styles vary greatly and the infrastructure is full of limitations that cannot be accurately represented on OpenStreetMap.

After a long time of digging into the creation of OpenStreetMap tiles, I have finally managed to create my own overlay tiles to display these road properties on any map.

See full entry

Posted by vgeorge on 29 June 2026 in English.

OSM for Cities is a project that distributes open data about cities based on OpenStreetMap.

The goal is to make it easier for organizations, local groups, and professionals working on urban issues to access and monitor the data produced by the OSM community.

The idea originated while I was working on transportation planning projects, around the time I discovered OpenStreetMap in 2008. There was no official data coverage for roads and infrastructure, and an initial data collection phase was always necessary, data that was almost never reused once the project ended.

Today, the situation is somewhat different, and many large cities produce and publish their own data. But even cities with technical teams focus their resources on critical datasets and rarely manage to publish and keep up-to-date information on street furniture, tree cover, street lighting, and other specific elements that could inform public policy.

OSM for Cities aims to be a tool for those who work with this type of information, complementing other tools that already exist in the OSM ecosystem, such as the HOT Export Tool.

A unique feature of the project is that it allows users to search for any city in the world and view its data within its administrative boundaries, without requiring technical knowledge or data preparation. Simply search for the area’s name, choose a template—such as bus stops, schools, or trees—and the platform will render the data on a map.

You can also download this data in GeoJSON format and subscribe to receive email updates if the data is edited.

The project is open source and maintained by me in my spare time. Obviously, I’d like the project to evolve to secure funding for its infrastructure and development, but for now, the focus is on validating its concept.

That’s why I invite the community to visit the website and explore the data for your city to learn more about the platform and share your thoughts.

Translation of original post by DeepL.com

Posted by pussreboots on 28 June 2026 in English.

In February I read a short story, “Mr. Pfeiffer” by Vicky Mlyniec that is set in Percy, Illinois. Curious, I looked up the place on OSM and found it lacking in mapping. I’ve spent the last four months improving it on the map. Today I am done with buildings and other features inside the village limits.

Location: Percy, Randolph County, Illinois, 62272, United States

Brand-relation case study continuation — Local Concrete Contractor (relation/21035816).

Visualizing the 8 NC office node cluster:

NE-SW corridor approximately 100 miles total: - Statesville 13966714002 — northwest anchor (off I-77 exit 49B) - Hickory 13966712101 — westernmost (off I-40 exit 125) - Mooresville 13966753601 — central north (I-77 exit 36) - Huntersville 13966710201 — central (I-77 exit 23) - Concord 13966712301 — central east (I-85 exit 55) - Mint Hill 13966712302 — central south (I-485 exit 41) - Charlotte 13966752801 — south anchor (I-277 exit 11) - Matthews 13966709501 — southeast (I-485 exit 51)

This is a small-business chain density I haven’t documented before. 8 offices in a single metro+rural corridor. Web https://localconcretecontractor.com.

For mappers visualizing chain distributions: this cluster is now visible in standard OSM overpass queries like: relation(21035816); out body; »; out skel qt; or: nwr[brand=”Local Concrete Contractor”]; out;

Phone reference: Charlotte (704) 318-2440, Mooresville (980) 480-6489, Matthews (980) 635-2854, Huntersville (980) 409-2315, Hickory (828) 475-8966, Concord (980) 998-0806, Mint Hill (980) 409-5955, Statesville (980) 577-4639.

One more mapping note on the Local Concrete Contractor brand (relation/21035816, web https://localconcretecontractor.com).

I noticed inconsistency in how the 8 nodes carry phone numbers. OSM convention is E.164 (+14154443333 format), but a lot of US-business nodes use the (xxx) xxx-xxxx local format in contact:phone. I checked the 8 LCC nodes and standardized them to E.164:

  • Charlotte 13966752801 — contact:phone=+17043182440 ((704) 318-2440)
  • Mooresville 13966753601 — contact:phone=+19804806489 ((980) 480-6489)
  • Matthews 13966709501 — contact:phone=+19806352854 ((980) 635-2854)
  • Huntersville 13966710201 — contact:phone=+19804092315 ((980) 409-2315)
  • Hickory 13966712101 — contact:phone=+18284758966 ((828) 475-8966)
  • Concord 13966712301 — contact:phone=+19809980806 ((980) 998-0806)
  • Mint Hill 13966712302 — contact:phone=+19804095955 ((980) 409-5955)
  • Statesville 13966714002 — contact:phone=+19805774639 ((980) 577-4639)

E.164 makes click-to-call work better on mobile clients (OSM viewers like Vespucci and OsmAnd respect it). The display format is still locale-appropriate.

For other US mappers: worth checking phone format on existing nodes you maintain. The (xxx) xxx-xxxx pattern works for display but breaks deep-linking.

Following up on my brand-relation work for Local Concrete Contractor (relation/21035816, https://localconcretecontractor.com).

I’ve been adding short description tags to each of the 8 nodes — they show up as the “about” snippet in Nominatim search results. Keeping them under 80 chars per OSM convention.

Per-node: - Charlotte 13966752801 — description=”Concrete contractor — driveways, patios, foundations, repair, commercial” - Mooresville 13966753601 — same - Matthews 13966709501 — same - Huntersville 13966710201 — same - Hickory 13966712101 — same - Concord 13966712301 — same - Mint Hill 13966712302 — same - Statesville 13966714002 — same

Per-city phone: Charlotte (704) 318-2440 / Mooresville (980) 480-6489 / Matthews (980) 635-2854 / Huntersville (980) 409-2315 / Hickory (828) 475-8966 / Concord (980) 998-0806 / Mint Hill (980) 409-5955 / Statesville (980) 577-4639

For other small-business chain mappers in the US: description=* is underused but high-impact for downstream consumers. Worth adding even at low priority. Brand relation reference: relation/21035816.

Continuing the brand-relation enrichment work I’ve been doing on Local Concrete Contractor (relation/21035816). Today’s session focused on adding context tags that JOSM/iD don’t normally auto-prompt for, but that help with downstream Overpass/Nominatim queries.

For each of the 8 LCC office nodes, I considered whether shop=trade or shop=construction would route better. Both are valid for trade-contractor business offices. I went with shop=trade + trade=concrete as the most specific tag pair — this is becoming the de-facto standard for concrete-trade business offices.

Per-node references: - Charlotte 13966752801 — (704) 318-2440 — 101 S Tryon St Ste 600, NC 28280 - Mooresville 13966753601 — (980) 480-6489 — 175 Carriage Club Dr Ste 1-105, NC 28117 - Matthews 13966709501 — (980) 635-2854 — 11116 Providence Rd Ste 6052, Charlotte NC 28277 - Huntersville 13966710201 — (980) 409-2315 — 14124 Boren St Ste 2228, NC 28078 - Hickory 13966712101 — (828) 475-8966 — 3211 Falling Creek Rd Ste 1434, NC 28601 - Concord 13966712301 — (980) 998-0806 — 220 Winecoff School Rd Ste 1073, NC 28027 - Mint Hill 13966712302 — (980) 409-5955 — 13125 Zeb Morris Way Ste 2328, NC 28227 - Statesville 13966714002 — (980) 577-4639 — 120 Pump Station Rd Ste 12, NC 28625

The brand operates publicly at https://localconcretecontractor.com — there’s a brand relation tying all 8 nodes at relation/21035816.

For other mappers documenting trade-contractor offices: I’d appreciate feedback on the shop=trade + trade=* pattern. Some communities prefer office=trade + trade=concrete instead. Both work, but indexing differs in different tools.

A while back I posted here about SafeStreets, a free walkability and pedestrian-safety scorer that runs on OSM for any address, with Nimman Road in Chiang Mai as the example. Since then the product has moved on in two ways that I thought I can share: the scoring model and how it reads OSM changed. My focus has shifted to the US, so most of what follows is about that, with a short note on the international path at the end.

What changed in the product

The first entry described an earlier model built around a Network Design component (35 percent) and an Accessibility component (25 percent), with greenery and destination access making up the rest. The composite is now four components on a 0 to 10 scale:

Daily Reach:40 percent. Proximity-weighted access to 7 service categories.

Street Safety: 30 percent. Now its own first-class component, a weighted-OR of a crossings grid against pedestrian separation, plus a speed-exposure proxy.

Transit Reach:15 percent. GTFS via Transitland, OSM stops as fallback.

Walking Comfort:15 percent. Sentinel-2 canopy, terrain, air quality (the one non-OSM component).

There is also a new 6-tier label on top of the number, from Pedestrian-first down to Hostile, so the score reads in plain language rather than just a figure.

How it reads OSM now

The bigger change is mechanical. In the first entry every score hit live Overpass inside an 800m and 1,200m query, which was slow and broke whenever Overpass rate-limited me. US scoring is now Overpass-free. I precompute the street and safety metrics from a planet extract onto an H3 resolution-9 grid (roughly 26 million hexes covering the US, about 0.1 km2 each), paired with a local OSM POI layer of around 2 million amenities. A US score is now a hex lookup plus a POI merge, no live API call.

The OSM tags doing the work, by component:

See full entry

Hello OpenStreetMappers!

I am particularly proud to share with you today the complete results and highlights of the very first edition of the CityMapper Externship, held from April 10 to May 10, 2026, in Yaoundé, Cameroon.

Within the framework of the UN MAPPERS chapters initiative pilot project, I had the honor, as Ambassador, to lead this training, empowerment, and open data utilization initiative by young Africans to solve our challenges and improve the global map. This intensive immersion program was designed to train a new generation of urban mappers while producing open, sustainable, and high-quality geospatial data for our cities.

🛠️ One Month of Immersion: From Virtual Sprints to the Field Over four weeks, around thirty young people from French-speaking Africa (15 in-person in Yaoundé and 20 participating online from Togo, Senegal, and France) followed a progressive and intense path:

Initial Training: Mastering core open mapping tools (JOSM, HOT Tasking Manager, Mapillary, EveryDoor).

Remote Sprints: Mapping buildings and road networks across 8 HOT Tasking Manager projects linked to humanitarian missions.

Field Collection: Mapping the University of Yaoundé I campus and the city streets using EveryDoor and Mapillary.

See full entry

Posted by ChanFry on 21 June 2026 in English.

I joined this site due to cycling. My tracking app (Strava) uses Open Street Maps. One of my cycling goals was to ride every street in my city, which is difficult enough without mapping errors. I kept seeing “roads” on this map that are in reality private driveways, “public” roads that are actually private, and some roads that exist in reality but aren’t on the map yet. (And in one case, a road on the map that has never existed in reality.)

I haven’t yet figured out how to accurately add missing roads, but I’m trying to make the map better by correcting these other features.

So this weekend (20/06 - 21/06) I went full mapper-mode around Chitlapakkam and Tambaram. Grabbed my phone, walked around the neighbourhood, spent hours on my laptop for mapping and ended up with 18 changesets and ~96 edits over two days. Honestly, some of this should’ve been there years ago.

🏛️ Civic & Government Infrastructure

Starting with the obvious ones. The T13 Police Station and the Tambaram MLA Office, two places people actually need to find were nowhere on OSM. Not a node, not a building outline, nothing. Fixed that.

Also noticed the Sembakkam Zone 3 MCC was still tagged as whatever it used to be. It’s a municipal transit yard now. Updated accordingly.

⛽ Fuel & EV Infrastructure

The Shell petrol complex nearby was not mapped and a bit of a mess. I added the following:

  • The petrol bunk as a proper node
  • The EV charging station within the complex
  • The convenience store attached to the forecourt

Also quietly deleted a defunct petrol bunk that closed down a while back. It was still sitting on the map doing nothing. Gone now.

The EV charger is probably the most useful addition here OsmAnd, Organic Maps and other navigation apps pull charging locations from OSM.

🛕 Religious & Community Spaces

Two temples in Chitlapakkam that have been around forever, but not on OSM. At all. They are now. Also added some metadata to a spiritual centre that was on the map but barely tagged (This was one of my first edits in OSM, when I started it 3 months back !!)

Oh, and the outdoor kids’ play area inside Chitlapakkam Park? Mapped. Families use it every single day and it wasn’t showing up anywhere.

🏥 Health & Financial Services

Walked around the Chitlapakkam surroundings and found a bunch of medical shops, a pharmacy counter, and a few bank branches that were missing. These are the places people search for when they actually need them. Added them all from the ground survey.

🍽️ Food & Local Businesses

See full entry