Collaborative tool for welcoming new mappers

From OpenStreetMap Wiki
Jump to navigation Jump to search

We want to build a tool that lists new contributors in a specific region and provides an more streamlined way to send them welcome messages. By reaching out to new contributors, we want to build up community.

It is not meant to automatically send the messages, but to provide a means for community members to coordinate efforts. This also includes checking new edits for vandalism and generally just 'bad' edits (that don't connect ways or that break relations for instance).

Roadmap

  • First focus on Belgium, as a pilot.
  • Later make a system to divide the world in areas that local community members may self-assign

Desired functionality

Primary goals

  • Automatically detect all new contributors in a geographic region and make a list of them
  • Create a file for each one
    • Note functionality: welcomers can add notes to new mappers' files
    • Language: automatically detect the language of iD users (stored in changeset metadata), manually add language of others
    • Correspondence log: add changeset comments, log messages sent and whether we received an answer (not the actual received message, that's private information)
  • Message generation (not automatically sent; require interaction from community member)
    • Welcome messages
      • In language of contributor if known, otherwise in a selection of most likely languages based on geographic region
      • Detect primary editor and give information tailored to it
      • Provide a hyperlink to the platform so that the mapper can change his own language in our file
    • Potential vandalism messages
      • While staying positive, inform the mapper that their edits are not productive
  • Notify when a mapper makes new changesets that have not been checked

Secondary goals

  • Divide the world in areas that community members may self-assign

Other ideas

  • Statistics
  • Data export (idea of Joost Schouppe)
  • Mapper categories (idea of Joost Schouppe)
    • Allow welcomers to add mappers to categories based on what they have done, to easily make statistics
    • Self-indicated categories: provide a means for the mapper to sign up for communication about their area of interest

Code

  • The web platform will be implemented using Python 3.x and Django 1.8 (quite possibly using functions of GeoDjango, which is a framework that is available by default on a Django installation).
    • If you are unfamiliar with Django, you should follow this tutorial. When you have completed it, or if are already familiar with Django but not with GeoDjango, you should follow this tutorial.
  • We use the repo M1dgard/OsmNewContributors at GitHub. Information on how to install can be found there, in the INSTALL.md file.
  • The project will of course be open source. License to be determined.

Proof of concept

A proof of concept has been made that fetched the RSS feed of new contributors in Belgium from resultmaps.neis-one.org.

Implementation

Detecting new contributors

We could follow the minutely changesets replication files. Store the userids we encounter in it. If we detect a new contributor, determine whether the edit is in Belgium.

There is an IRC chatbot plugin in Python that sends a new message to the relevant IRC channel for each new contributor. Probably code from there could be reused. It doesn't have license information in its git repository though.

Interested?

There are now live instances for Belgium and Spain, with the code living on Github.

Add your name to the list below if you might be interested in helping us.