openstreetmap / iD

🆔 The easy-to-use OpenStreetMap editor in JavaScript.
https://www.openstreetmap.org/edit?editor=id
ISC License
3.36k stars 1.21k forks source link

Tighter integration with task managers like HOT TM and MapRoulette #5856

Open bhousel opened 5 years ago

bhousel commented 5 years ago

iD is often used as the editor for a task manager, such as HOT Task Manager and MapRoulette. To streamline the workflow for users, it would be great to do task manager things from within iD:

Just wanted to start a ticket to discuss ways we can make this better!

We'll probably want to create a pane for users to manage the task they are working on, as well as url parameters to control what iD shows there.

cc @quincylvania @mvexel @smit1678

mvexel commented 5 years ago

On the MapRoulette side we're working on what we call 'suggested fixes'. This means the challenge author would not only identify tasks but also the suggested resolution in OSMChange terms.

Initially the support would be only for tag changes but down the line we also want to delve into geometry changes.

Related MapRoulette ticket and discussion:

tordans commented 5 years ago

I will list a few pain points that I feel when working on hotosm tasks. Also some other suggestions. (In no particular order.)

Maybe they are helpful, once a tighter integration starts taking shape.

a. Choosing the right areal image layer. a.1. Maybe a default config to show the date of the image when using tasking-manager-iD a.2 Maybe a default image layer, reduced set or "use those" set of image layers when using tasking-manager-iD a.3 Maybe a way to display multiple areal image layers in something like the mini-map-window, so I don't need to toggle between all the layers all the time to find the one for the given area, that is best a.4 Maybe add the ability, to freeze a zoom-level for an image layer. So I can zoom in to map in details, but (a.4.1) the layer does not switch to black, 'cause there are no images in this high zoom level or (a.4.2) the layer does not use the next image zoom-layer which sometimes is older than the zoom layer above.

b. Choosing the right presets, eg based on wiki/Highway_Tag_Africa b.1 Maybe a reduced or "use those" set of presets when using tasking-manager-iD b.2 Maybe different descriptions / preview images on the presets, based on picture of streets from the africa-highway-wiki (or a subset in Wikidata?) when using tasking-manager-iD Update 2019-05-19: Thinking about this, the Wiki data items might be a way to manage this via the OSM Wiki community: A Data item could have multiple images each with an attribute for their region. iD could then pull the most likely image for the description. Further reading

c. Squaring buildings. c.1 The core in iD is already being worked on ATM, that is great! c.2 Maybe a "circular building" preset next to the "square", "any shape" and then "circular"? c.3 Maybe give an option to be rougher with squaring. "Make this shape a square no matter the current angels.". Maybe gradually, each time I square it gets rougher?

d. Save settings between session. ATM each tasking-manager-task/square resets the iD editor which means I need to re-configure details like areal setting, recently used presents and so on.

e. Re-write my commit message. in the Changelog and again in the tasking-manager comment. e.1 Maybe both apps could connect via Webhooks to sync the message? e.2 As a first step cleanup the hashtags and comment params in TaskingManager, see https://github.com/hotosm/tasking-manager/issues/1482 (ADDED 2019-04-12)

f. Know who is working in the square next to you even in iD. Right now, I can check in the tasking manager if someone is editing next to me. A nice touch where, if iD could update automatically (polling from tasking manager) if someone is working in the square to the right and show her editing-box in iD. This way I know to be extra careful on the edges. But more importantly it feels like a community effort.

g. Handling huge forests. I ran into issues in some regions where people create very rough, huge areas for a forest (eg). I could not edit this in iD, since once I zoomed out, the area was hidden from editing.

h. Activate the notes layer. Maybe the nodes layer should be active by default for the tasking-manager-iD, so users can use geo-located notes to discuss issues, instead of just changesets and tasking-manager-comments.

i. Hide "please review this changeset" checkbox. Someone did an analysis on this and found that this checkbox is used in tasking manager task-commits quite often but those are not reviewed via this process. IMO it could just be hidden, since it is not relevant in this szenario.

j. Give help based on the user account and his edits With information like the "Recently utilized presets" from https://www.hdyc.neis-one.org/?tordans the tasking-manager-iD could provide better help for users based on their knowledge. Eg a user that never edited a building, probably needs to learn it first. Or a user that never edited in Africa, might not know how the street-tagging is done there, even though she edited streets in the US before.

(I might update this list in the future.)

tordans commented 5 years ago

Btw, is anyone from the iD Team part of the https://www.hotosm.org/updates/bringing-machine-learning-and-open-data-to-the-tasking-manager/ efforts? It reads like this project will have a lot in common with planned data import-feature in iD and also this ticket.

himanshuc3 commented 5 years ago

Is this idea available for GSOC 2019? I would love to contribute to it. Should I send a proposal for the same?

quincylvania commented 5 years ago

@himanshuc3 Thanks, but @thomas-hervey is already applying to work on this. Maybe we can find something else for you to work on!

PedaB commented 5 years ago

@himanshuc3 please apply if you're interested in this project. We encourage everyone to submit proposals, the best application will win! And we're happy to support you in any question or feedback you need in order to apply.

@quincylvania please refrain from comments that suggest there is a preselection of participants and talk with Bryan (GSoC mentor) or me/us (GSoC org admins) first next time. Thanks.

Please not that I'm not involved in iD-development.

pantierra commented 5 years ago

We have been doing some redesign work on the Tasking Manager and this is how we can imagine an integration of iD with the TM could look like.

abalosc1 commented 5 years ago

Would be nice if we could incorporate the iD validation issues in the Mark as Invalid Comments or maybe a separate Features to Review section https://projects.invisionapp.com/share/VCQTFR6YSJR#/screens/359635861

mvexel commented 5 years ago

An update from the MapRoulette side, the Suggested Fixes (now called Quick Fixes) have been implemented. The Challenges that offer Quick Fixes suggest a tagging change that can be confirmed or denied with one click. Everything needed to interact with these tasks is exposed in the MapRoulette API.

I think it would be great to figure out what kind of MapRoulette integration may make sense. Simply adding an available layer of MapRoulette tasks at high zoom should be a good way to start and the API already has support for this:

sfkeller commented 5 years ago

3645 really is meant as a tighter integration - not only with task managers!

ghost commented 4 years ago

Hi. I have a question about integration. IMO to make integration work, the pane (let's assume there is a pane for integrated service) needs to send API calls, receive related data and change itself content accordingly.

This approach looks like adding plugins to iD. Is this way to go? Or is there another approach for integration?