-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Add a code of conduct link to github #18535
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
I don't think there is much point in backporting, since by default GitHub shows master. |
Thanks @dstansby |
So I'm really frustrated with this PR going in, 'cause the Numpy equivalent is NumPY specific and more importantly has reporting and enforcement mechanisms. I don't know what people do w/ the information that we follow the PSF code of conduct if we don't give them a way to report privately-like when I've needed to use a code of conduct there was no way in hell I'd post publicly about it-so at least to me I don't want to highlight that we have a half-baked CoC and I think it's half baked 'cause like we did't even do the work of figuring one out for our community and more importantly there's no reporting or enforcement (PSF enforcement is not quite applicable to Matplotlib.) |
The PR just states the current situation. I don't think it precludes the current situation from being changed. |
This mirrors what it says on our main docs page into a place where GH can find the meta-data, I stand by merging this PR as is. As @jklymak says, the discussion of customizing a CoC and adding reporting / enforcement is an orthogonal discussion. |
Except this highlights it even more by making it a standout tab, which to me like reinforces all the problems w/ it. If I needed the CoC and saw that tab, like I'd be more frustrated than if it didn't exist. |
Also I very very much don't think reporting and enforcement are orthogonal, I think you don't have a real CoC without them. If you don't give people a way to tell you that they were harmed, then the CoC is only enforced when it affects the core team or folks who know who/how to back channel (and that they can) & then you're reinforcing some of the negative dynamics that the CoC is supposed to help alleviate. |
@story645 - do you think the Numpy one is OK, then, for Matplotlib (once names have been changed)? I do agree that the code of conduct should provide mechanisms for reporting, and stated procedures for when things go wrong. |
Sorry, it was my intention that this would be a stopgap and that we urgently needed to write our own, or at the very least copy the text of the python one and make custom changes and explicitly review and accept it as our CoC. I should have opened an issue for that at the same time. In the meantime, given the above comments I agree with @story645 that it is not an enforceable CoC and therefore saying that we follow it is at best meaningless, and potentially misleading. I would be in favor of reverting this PR, removing mention of the python CoC from our docs, and urgently creating a matplotlib specific version. I am happy to take the lead on creating a MPL version - would it be best for that to be in a PR to this repository, or is there another governance-esque repo where it would be better served initially? |
@dstansby so we discussed this on this weeks call & it's great that you want to take lead on constructing a CoC. As a stopgap, we decided on [email protected] (checked by me & @tacaswell) and Numfocus as the reporting mechanism and @jklymak agreed to open an issue or PR adding that info. The current CoC work has been happening in https://github.com/matplotlib/governance & I've sort of cobbled some ad-hoc mpl specific stuff in the communications guide & some outcomes for violating coc/comms guide in matplotlib/governance#11 @matthew-brett I think some of the Numpy stuff is applicable & should maybe be factored into @dstansby 's draft. |
@dstansby I committed to make sure this gets done, but if you want to carry the torch, I'd prefer you do so. As a stopgap - adding a reporting email for general issues, and a higher-up email to numfocus if there is felt to be a problem at the senior Matplotlib level was thought to be an easy first step. Developing our own text was deemed a bit overkill in preference to a numfocus umbrella. We are really too small to be doing all this sort of legalese ourselves, and we don't really have wildly different needs than the rest of the ecosystem. |
Only to say that, for the Scipy code of conduct (later adopted by Numpy) we struggled with the problem that codes of conduct are often very badly written, in an unpleasant imitation of legal documents, and disheartening, as well as being light on specifics of procedure for reporting adjudication and enforcement. So we did our collective best to be specific, and to make the text as readable and positive as possible. |
I do not understand the perfect is the enemy of the good approach to CoC. The bottom rung of any escalation ladder is always going to be saying something in the context where the issue happened and having text to point to, no matter how generic, is valuable in that context. This text has been with us from at least 1.3.1 (https://matplotlib.org/1.3.1/) so I think removing the language would be a mistake or reverting this PR would be a mistake, but pushing forward a more complete CoC should be done. |
It's not a perfect is the enemy of the good, it's that a CoC w/o reporting and enforcement mechanisms can reinforce the power dynamics it's supposed to help mitigate by saying everyone needs to follow these rules, but if you're not on the team (or know the team) than we're not gonna give you a safe way to tell us when folks don't...which means you're at the mercy of the team to recognize a violation. And to me, the lack of reporting & enforcement mechanisms indicate we don't take this seriously enough to make it clear that there are consequences for bad behavior...and like yeah if you hang out on the mailing list or github you'd know we do but then you're involved and that's part of the implicit/word of mouth/culture knowledge we're trying to make explicit with the CoC. Realizing that's a retread of what I said above, basically a CoC w/o enforcement is a values statement and not a code of conduct. They have very different meanings in common usage, and a code of conduct is supposed to be the thing w/ teeth that you appeal to if somebody is out of bounds. That's not what this document is. |
numpy cites scipy, and scipy cites a number of other numfocus projects. Skimming, it seems the two docs are almost identical. It seems relatively straight forward to propose these as a PR and make any edits we perceive as necessary and adopt that. We'd need a complaints committee, which I'd suggest the steering council should nominate. |
Most of my suggestions are a mix of image specific guidelines & Astropy's CoC
I'm on geopandas's CoC committee and I think we definitely should have someone from another project on ours (and yes I have suggestions of who). |
I mean astropy's CoC has not enforcement mechanisms? Or can I just not find them? Anyhow, I can't see anyone objecting to adopting numpy's CoC and agree about adding notes about appropriate images. |
This isn't my fave reporting and enforcement but:
|
This is in a similar vein to the numpy equivalent: https://github.com/numpy/numpy/blob/master/.github/CODE_OF_CONDUCT.md
Fixes #18534