Well, you know, it’s been a while since I wrote an OSM editor and I found myself missing the experience.[1]

We’ve pretty much reached the apotheosis of the traditional OSM editor workflow. There isn’t any point building another iD, because iD is terrific and does everything that needs to be done. There might be some merit in building a new native power editor for macOS, say, but even that would be a marginal gain and the sort of project best attempted by a company which employs dozens of mappers.

But we certainly haven’t reached the limit of OSM editing. The traditional workflow was never designed for integrating third-party datasets, for working with street-level imagery, for surveying on a smartphone, for QA. These activities were unheard of in 2006 when JOSM and Potlatch 1 were first conceived, but are big parts of today’s OSM data landscape.

So we should be experimenting with different editor experiences, to see if we can attract wider contributions through presenting an alternative workflow/UI.

Deriviste is a POC for a big-screen street-level editor. POC may equally stand for “proof of concept” or “piece of crap” given that it’s really just 300 lines of Javascript I knocked up over a day.

The idea is that the Mapillary street-view takes centre stage, and you can add POIs by just double-clicking on the imagery. My initial use case was small towns in the rural US that are less likely to get an editing community any time soon, but which might get drive-by street-cammers recording imagery that can be used to map POIs.

It isn’t really an editor, in that you can’t read and modify anything, only write. There’s no dupe detection, the presets are a very simple hack on the iD .json file, and it suffers a little from Mapillary JS’s capriciousness (sometimes it’ll find a lat/lon from clicking on the imagery, sometimes it… won’t). It’s a POC. I don’t have any great ambitions for developing it into something world-beating, but you’re welcome to have a play, and if you like, send patches!

Source code: https://github.com/systemed/deriviste

[1] this may not be true