OpenStreetMap

Kevin Kofler's Diary Comments

Diary Comments added by Kevin Kofler

Post When Comment
Guidelines for how I'm mapping sidewalks

(Sorry, one more addendum:)

What would be more realistic than the 3 steps above would be for routers to treat sidewalk:right/left=separate as foot=yes (overruling any foot=no specification) and completely ignore any footway=sidewalk ways, but that:

  1. also only works if sidewalk:right/left=separate is actually specified,
  2. still requires the router to interpret a meaning-changing troll tag (since foot=no + sidewalk:right/left=separate would actually mean foot=yes to the router), and
  3. completely defeats the purpose of tagging the sidewalks separately (so why bother doing it to begin with?).

So I think that is also not a very reasonable expectation for routers, even though it is more practical to implement than the more “correct” heuristics actually making use of the separate sidewalks.

Guidelines for how I'm mapping sidewalks

Not to mention that not all mappers of separate sidewalks even bother putting sidewalk:right/left=separate on the road’s way(s) to begin with.

Guidelines for how I'm mapping sidewalks

I disagree that it makes sense to expect routers to compensate broken data with error-prone magic.

The router sees a vehicle road and two footways. They are not related in any way, as we do not even use relations for this. Why should the router:

  1. interpret sidewalk:right/left=separate tags on a completely unrelated way (a vehicle-only road, given that the sidewalks are mapped separately, when it is trying to route pedestrians and hence should not even have to look at foot=no ways), then
  2. try and guess which footway(s) is/are geographically close enough to fit that vague sidewalk:right/left=separate specification, and then
  3. magically synthesize an infinite number of crossing opportunities orthogonally to the vehicle road from one footway to the other?

That is a completely unreasonable expectation. (Especially since this kind of magic behavior is not only hard to implement, but also error-prone and hard to debug.) If the road is one properly abstracted way with sidewalk:right/left=yes (and implicit or explicit foot=yes), the router can do a much better job much more easily.

And another important point is that sidewalk:right/left=yes can, but does not have to, be interpreted for more precise routing. The router can just tell you “walk along Foo Street”, or it can tell you something like “walk along Foo Street on the left side, cross Foo Street, walk along Foo Street on the right side” if you really need such detailed instructions. (Hint: You typically do not.) Whereas sidewalk:right/left=separate (along with separate “footway” sidewalks) is more of a meaning-changing “troll tag” that has to be interpreted to process the data accurately.

Guidelines for how I'm mapping sidewalks

(I have seen pedestrian routing come up with huge, completely unnecessary detours due to separately mapped sidewalks, asking to walk hundreds of meters up and down to the next zebra crossing instead of just crossing right there, which is perfectly legal around here. The fix is always the same: delete the bogus footways.)

Guidelines for how I'm mapping sidewalks

Mapping sidewalks as paths is inherently broken in countries such as Austria where it is legal to cross a street at any place other than immediately next to (and not on) a marked (zebra) crossing. (The exact distance that qualifies as “immediately next to” is codified in the law.) This means that there are infinitely many crossing opportunities, which is inherently incompatible with the practice of connecting the two sidewalks only at a finite number of crossings (usually only marked crossings) and leads to very broken pedestrian routing.

A sidewalk is not a footway, but an inherent part of the street, and must be tagged as such.

GDPR changes coming to OSMCha

How does putting things behind an OSM login protect anybody’s privacy? Anybody can get an OSM account and use that to access the “hidden” information. You are just handling more personal data, the one of the users who are logging in.

Market shares of editors

Why on earth did you include Merkaator in the graphs?

Why not? It had over 5% market share in 2010, it has been maintained again for a couple years now, it has been ported to Qt 5, and it is still a great option as you can see from the productivity stats.

For all those who dropped Merkaartor during the time where it was unmaintained and stuck on Qt 4, you may want to give it another chance.

http://merkaartor.be/

African Roads and a Western Bias in Mapping

Many roads are residential in town; they turn into a track as they go out into the countryside; and eventually become walking paths. In short, they defy a simple classification.

In that case, you should split the segment, and tag the relevant parts as highway=residential, highway=track and highway=path. This issue is not specific to Africa, and splitting the segment is the right answer world-wide.

Additionally, some explicit transport mode restrictions can also be helpful especially if using certain vehicles beyond a certain point is explicitly banned or strongly recommended against by signage. The surface= key has already been mentioned by other posters.