On Sat, 27 Feb 2016 at 18:33 Steven D'Aprano <steve@pearwood.info> wrote:
On Sat, Feb 27, 2016 at 05:17:50PM +0000, Brett Cannon wrote:

> After a rather rude email on python-dev

I haven't noticed this email. Care to link to it? We should be allowed
to see what sort of behaviour is likely to treated as officially
unacceptable in the future.

https://mail.python.org/pipermail/python-dev/2016-February/143417.html is the key email (there were two before it where tensions started to rise; you can see my public response later in that thread.

I think this is actually a very important point. I've seen forums and
discussion groups where the enforcement of faux-politeness and "being
friendly and positive" and "no jerks allowed" makes the place extremely
hostile to anyone who doesn't follow the majority opinion.

I have never seen this happen in the Python community.
Where even
polite disagreement is seen as "being a jerk".

That would go against the very first part of the PSF CoC about being open.
Since rudeness is so
subjective, formal prohibitions on being "rude" is a potent weapon for
groups to hijack a community by labelling anything and anyone they don't
like as "rude". So I think it is important for us to know what you
consider is rude enough to require a CoC.

> When people know they are expected to behave in a
> civil manner and others know they are allowed to call someone out for being
> uncivil it typically is enough to make people behave.

You don't need a CoC for that. Social expectations apply even without a
formal set of rules.

That is not the experience I've had on python-ideas. Since I implemented the CoC over there I think the discourse has cleaned up a good amount.

> So there is no issue of people "being overburdened by regulations". The CoC
> only comes up when someone is being so rude that they need to be talked to
> about their attitude  problem,

Who judges that point?

Just like any other point discussed here; either we reach consensus as a group or Guido makes a final call.
Can *anyone* take it upon themselves to (let's
say) say "Brett, you unilaterally changed the policy with no discussion
or consultation and just four minutes notice. That is unspeakably rude
and total jerk behaviour, so under your own rules you're out of here"?

I'm not just making a rhetorical point. I wouldn't accept that sort of
unilateral behaviour from my work colleagues.

It wasn't a unilateral decision. If it was then I would have just done it without  opening an issue or bringing it up here. I mentioned it here just in case someone might get upset by it (which obviously happened).
It is pushy and obnoxious
and breeds resentment and is exactly the sort of reason why some people
are deeply suspicious of CoCs. And when it happens on a Friday night,
when people are likely to be away from their computers...


It happened Friday night because that's when I read the email on python-dev that triggered me to go through all the mailing lists I manage and make sure they mention the PSF CoC applies there.  There was no purposeful trick to try and sneak this through (if I was trying to sneak it in then I did a bad job by bringing this up here and/or not just committing the update immediately). I'm not sure how you manage your Python contribution time, but for me I don't have as much as I like and so I seize on it when I can and I don't pay attention to what day of the week it is.

My employer learned the hard lesson that even "self-evidently and
obviously correct" policy changes need a consultation period before
making official. No single manager can be allowed to make unilateral
policy changes for the entire group without giving the other relevant
managers time to respond. Python is over 20 years old and the core devs
have managed without a CoC for all that time.

I'm quite aware of that having been a core dev for 13 of those years. But that doesn't mean we can't improve the situation. And this is more about giving people outside of the core dev group piece of mind than it is about explicitly worrying about a core dev violating the CoC. I do not want people thinking we are above reproach, and so I thought it would be good to publicly state that we are not and we hold ourselves to the same standards we expect everyone to follow at every major Python conference, on mailing lists, etc. when it involves us representing Python and the other core devs on this list.
You could have, should
have, waited a few days before seemingly ramming this policy change in
behind people's backs.

Steven, I didn't try to sneak this past anyone. I honestly didn't expect it to be that controversial at this point which is why the email is almost nonchalant in saying that I viewed posting here as a technicality. I seriously thought we as a community were passed CoCs being controversial based on the resounding acceptance at Python conferences and my positive experience on various mailing lists like python-ideas.

> so as long as we try and keep people from
> being rude  it won't come up. Quite frankly, the CoC is really just meant
> as a way for people to feel comfortable in knowing they don't have to
> tolerate jerks.

Nobody *has* to tolerate jerks, especially on an email forum. Just
filter their emails into the trash.

Nick already addressed this comment the exact way I would have.

Or maybe people could be a bit more flexible in what behaviour they
accept from others and a bit less quick to label others as jerks?

Nick replied to this the way I would have as well.

This is an international group, and I'm an Australian, and the language
I use with my wife, friends and co-workers is far more forthright and
strong than the language I use here. But if I slip occasionally, and
call a spade a bloody shovel as they say, I don't want those with more
restrictive, less enlightened or even merely different standards to be
able to formally rebuke me. Why should I have to change my behaviour
more than I already do? Why can't they be a bit more flexible and
accepting of differences and less judgmental?

There is a massive difference between using a word that someone might consider a swear word and regularly being mean or disrespectful.

> And I would hope none of us are jerks to people in the community,

If I knew what you considered "a jerk", then I might be able to say
whether I agreed or disagreed. For all I know, you might consider this
email to be nothing but me being a jerk.

I think the tone was a bit much here and there, but I know it's not to be mean and it stems from a passion on this topic (although I have to admit the accusations that I tried to sneak this passed everyone through some devious scheme did hurt a bit).

I swear that I did not mean to pull a fast one or somehow exert some influence to make this happen on the sly and I'm sorry if you thought that; I seriously thought it wasn't going to be an issue. But since it is for  some I promise I won't make any change to the devguide unless clear consensus can be reached or Guido tells me to flat-out (just like any other change that affects Python).