Hacker News new | ask | show | jobs
by blendergeek 1961 days ago
> Have to remember that a maps app is way more than just data.

Agreed.

> Its efficient routing,

This is a hard one especially for long routes when calculated on a phone rather than on a server.

> its good text to speach,

Ummmm. Text-to-speech is almost always provided by the OS rather than the app.

> its pulling in data from multiple sources like the gps location of the bus I'm waiting for

There are surprisingly good apps for bus navigation using OSM in some parts of the world. Unfortunately, where I live, bus companies seem to "license" that data only to Google.

> or the roads closed for construction currently.

This is literally part of the OSM dataset.

> You would also need a whole bunch of heuristics for the OSM dataset that the current apps don't have. OsmAnd would not be able to tell the difference between the turning lane on an intersection and an entire road that just has no name because the way the data is entered is there is just an unamed path joining the roads so the text to speach would say "bear slightly left" instead of "turn right on to foo street".

Rather than "heuristics for the OSM dataset", we generally need a more complete dataset. A "turning lane on an intersection" and an "entire road that just has no name" should be mapped differently. The turning lane will probably be mapped as a "link" type road with a "destination:street" of the road that it is going to (if it is mapped as a separate road at all). The generic no-name street will be mapped as a road with "noname" (yes, there is a special tag for this). Further, in many cases, a "turning lane" will be mapped with the "turn:lanes" tag on a road leaving no room for confusion with generic unnamed roads.

I will admit that in current mapping in many places you will often get "bear slightly left" rather than "turn right on to foo street". However, this is almost always caused by a (current) lack of completeness in the data rather than a need to create some sort of set of heuristics to figure out what is "actually" going on.

I think the hardest part for a good maps app that you did not mention is search. Searching in OsmAnd (offline) is abysmal. In fact it is worse than that. It is so bad that I will switch to a web browser, search on DDG, open a link in GMaps, find the coordinates and copy them to OsmAnd for routing because I know Osmand search does not have a snowball's chance in h** of remotely finding what I want in any sane manner.

1 comments

> "entire road that just has no name" should be mapped differently

https://wiki.openstreetmap.org/wiki/Key:noname (used for example by StreetComplete that I really recommend if someone has Android, wants to contribute and is not interesting in learning to use a complicated editor).