On a recent run I had an idea of how to resolve the street double-counting problem. I am not a database expert, so maybe there is something obviously wrong with this approach that makes it unworkable. If this idea is bad, hopefully better ones will emerge through Cunningham’s Law . Aside from the synching stuff, I think the lack of comparability of strider stats due to double counting is one of the main issues on the site, so I’m curious to hear everyone’s thoughts!
The idea is to add a level to the current Country->Region->City->Street->Node structure, turning it into Country->Region->City-> SubCity ->Street->Node.
In the new hierarchy, the City level would be similar to the current Region level, in the sense that it would contain a number of SubCities. The way to implement this would be to turn all existing Cities into SubCities of themselves, such that for each City SubCity0 is essentially the city itself. Additional SubCities can then be added as required, like it is possible to add Cities to Regions currently. Importantly, the City would take street completion data from SubCity0 only, and City level data would continue to be used for any reporting on a macro level.
For example, Manhattan and Manhattan Community Board 1 are currently causing double counting.
The structure is:
USA->NewYork->Manhattan Community Board 1
This would turn into:
- Manhattan Community Board 1
- The processing of streets would stay unchanged
- Double counting is eliminated, since only streets completed in SubCity0 (ie. the city itself) are counted toward runner totals. All street count figures become comparable; as do leader boards
- Each SubCity can have its own completion stats and leader boards, since processing etc. is the same as it is for cities currently
- As long as suitable objects exist in OSM it is easy to create smaller projects for those daunted by big cities
- SubCities are not constrained geographically or in number. Basically, it would be possible to add in any number of SubCities without breaking the structure. This opens a number of possibilities, like custom areas (maybe with a citystrides tag in OSM), or challenges like “run this random selection of 100 streets”.
- Current overlapping areas would have to be manually assigned to their “proper” city as Subs and deleted. Since it’s a finite list this it should be fixable
- All accounts would need to be reprocessed (a good reason to implement this before map updates, imo)
- The layout of the site would need to be adjusted to reflect the new structure