On Sun, Aug 20, 2017 at 12:53 PM, Ralf Gommers <ralf.gommers@gmail.com> wrote:Hi all,
I propose that we as SciPy developers and community adopt a Code of Conduct.
As you probably know, Code of Conduct (CoC) documents are becoming more common every year for open source projects, and there are a number of good reasons to adopt a CoC:
1. It gives us the opportunity to explicitly express the values and behaviors we'd like to see in our community.
2. It is designed to make everyone feel welcome (and while I think we're a welcoming community anyway, not having a CoC may look explicitly unwelcoming to some potential contributors nowadays).
3. It gives us a tool to address a set of problems if and when they occur, as well as a way for anyone to report issues or behavior that is unacceptable to them (much better than having those people potentially leave the community).
4. SciPy is not yet a fiscally sponsored project of NumFOCUS, however I think we'd like to be in the near future. NumFOCUS has started to require having a CoC as a prerequisite for new projects joining it. The PSF has the same requirement for any sponsorship for events/projects that it gives.
Also note that GitHub has starting checking the presence of a CoC fairly prominently (https://github.com/scipy/scipy/community ), and has also produced a guide with things to think about when formulating a CoC: https://opensource.guide/code-of-conduct/ . I recommend reading that guide (as well as others guides on that site), it's really good.
To get to a CoC document, a good approach is to borrow text from a CoC that has been in use for a while and has proven to be valuable, and then modify where needed (similar to a software license - don't invent your own). I considered three existing CoC's:
- The Contributor Covenant (http://contributor-covenant.org/version/1/2/0/ ): simple, concise, the most widely used one. The NumFOCUS recommended one is based on it as well (https://www.numfocus.org/about/code-of-conduct/ ).
- The Python Community Code of Conduct (https://www.python.org/psf/codeofconduct/ ): also simple, addresses mostly the spirit in which the Python community is operating / should operate.
- The Jupyter Code of Conduct (https://github.com/jupyter/governance/tree/master/conduct ): much more detailed, in part derived from the Speak up! and Django ones, more appropriate for large communities.