On 2 April 2017 at 14:27, Steven D'Aprano firstname.lastname@example.org wrote:
But he didn't. He labelled Wes a CoC violator, both privately and in public, for something which is a violation of the CoC only by *really* stretching the definition. I mean, come on now, insufficiently respectful of people's time? How Orwellian can you get?
I think this is the point of disconnect, as is Raymond's description of CoC actions as "more of a nuclear option to be reserved for egregious cases of harassment and abuse."
I'll say it right here: I *have* violated the Python CoC, especially if you go back and look at discussions like those around the decision to move away from open source Mercurial hosting to a proprietary git hosting service. Many of the comments I made during those discussions were *far* from being respectful or kind, and it took a long time for me to become open to the idea that helping core developers spend less time on CPython infrastructure maintenance or fighting with inadequate ad hoc tooling might be a higher priority goal than helping to encourage the use of version control tools and service that happen to be written in Python.
When that kind of thing happens, it's usually because I was sufficiently annoyed that I didn't go through my usual routine of proofreading my emails and figuring out how to replace all the second person pronouns with first person ones and otherwise filtering out the unproductive noise that can get in the way of people understanding the point I'm attempting to communicate. That step takes deliberate effort on my part, but is paid back many times over by reducing the number of pointless side arguments I'd otherwise get myself into. Proofreading is also the point where I may decide not to send a particular message at all, or switch it from a public rebuke to a private reminder of more appropriate behaviour.
As far as I can tell, folks just tend not to remember those incidents for long because:
to communicate effectively and help other people achieve *their* goals (or at least help them gain a better understanding of why their goals may be unachievable)
sometimes explicitly apologise for the lack of restraint I exhibited
Whenever we anchor ourselves in an essentialist mindset of "basically good people with good intentions will never violate a CoC out of ignorance or as an emotional outburst", then it makes it *really* hard to apply gentle nudges early in the process where we point out borderline or outright unacceptable behaviour to people, and ask them to apply self-moderation techniques to help provide a more enjoyable environment for everyone else. It also makes it much harder for us as individuals to say "That was an error on my part, I apologise, and I will continue to strive to do better in the future".
And from the point of view of the impact on folks suspended and/or banned, "I got suspended/banned from <channel> due to my inability to follow explicit directions regarding my communications style" doesn't seem to me all that different from "I got suspended/banned from <channel> due to my inability to be respectful and kind towards my fellow participants".
That said, for the benefit of channel moderators, I do think it would be a good idea to define a shared set of explicit "Rules for Active Participation" that are distinct from the more general Code of Conduct, and are explicitly noted as being handled through moderator actions focused on providing a productive collaboration environment.
trackers, and code repositories, each exist for a particular purpose. While initial off-topic posts will be met with a gentle redirection to a more appropriate location, persistently posting off-topic items will be grounds for suspension at the discretion of the moderators of that particular communication channel 2. Messages are posted to be read by others, so it's important to be respectful of the time and energy of readers, and have a clear purpose in posting (e.g. asking a question, answering a question, clearly reporting a problem, proposing a solution to a problem, clarifying a point of confusion), rather than merely posting for the sake of posting. As with off-topic posts, persistently disrespecting the time and energy of readers will be grounds for suspension at the discretion of the moderators of that particular communication channel 3. Quietly observing the available public communication channels without actively participating is always an option 4. Keep in mind that neither the PSF nor any of the community channels it provides offer any form of commercial customer support. Rather, all communication channels are provided for the benefit of community contributors and potential future contributors 5. Also keep in mind that there's a lot more to the internet than just the PSF provided communication channels. Personal blogs, social media, code hosting services, etc, can all provide a way to collect and publish material that isn't considered suitable for any available PSF provided channel 6. When in doubt about the appropriateness of a message, some good ways to resolve that doubt can be to: * spend some more time observing the communications channel in question, perhaps by browsing the archives of past messages * for mailing lists, explicitly *ask* the question that is concerning you, as most mailing lists allow for at least some meta-discussion regarding appropriate use of the list * for issue trackers and code repositories, look for a suitable venue (such as a related mailing list) to ask the question * if you already know other participants in the channel, ask them for private feedback first
The "be open, respectful, and kind" guidance in the CoC would then mostly apply to the channel moderators responsible for enforcing those Rules for Active Participation, since CoC violations on the communication channels themselves would *also* break the suggested rules 1 & 2 above (by being both off-topic and disrespectful of readers time and energy).