On Wed, Dec 26, 2012 at 7:37 PM, R. David Murray <rdmurray@bitdance.com>wrote:
On Wed, Dec 26, 2012 at 5:07 PM, Łukasz Langa <lukasz@langa.pl> wrote:
I don't want to spell out names but I've had more than one discussion at conferences this year with people _afraid_ to get involved with core development on the base of having to deal with behaviour like this. In one case the comment was simply "I don't have time to deal with [people]
On Wed, 26 Dec 2012 18:20:06 +0200, Ezio Melotti <ezio.melotti@gmail.com> wrote: like
him."
This is somewhat surprising to me. Why would they have to deal with him? If the "people like him" were the core developers I could understand the problem, but he is just one of the many contributors.
Because, to put it in new age-y terms, his bad vibrations are poisoning the environment.
I considered this but probably underestimated it -- after all there are many other contributors that produce enough "good vibrations". My skewed perception might be due to the fact that I don't contribute actively to the python-dev/ideas MLs.
That is perhaps a graphic way to put it, but it is a matter of community tone and nurturing a joyful and creative environment in which all are welcome and feel encouraged to contribute.
Anatoly works against that, almost constantly. Encouraging him to support the community would be *much* better than banning him...but we've tried that.
The other case was sadder though: "Looks like you core devs have trouble dealing with criticism, as shown by Anatoly."
I'm not sure I understand this. ISTM that the problem here is with core devs, that are unable to deal with criticism (and have to resort to bans ;) rather than with him.
By "not understand", I presume you mean the "sadder" comment.
It is not that we are *unable* to deal with criticism. We have dealt reasonably with every criticism he has leveled, I think. But his comments create the *perception* that we are not dealing well with criticism, because he is not but casts the aspersion onto us, while we do that much less frequently to him, but do occasionally lapse into returning tit for tat. Since we are perceived as the ones in the position of power, we get castigated for our actions and reactions much more than Anatoly, the one perceived to be powerless in the situation, ever will be.
Let me repeat that bit, it is important. We are perceived as being the ones in the position of power, and he the powerless. That perception (and the reality behind it) will color every conversation that the wider community has about this issue. That is why I stress that our position and our actions have to come from well articulated principles, otherwise they will be perceived as caprice.
Which, I think, is more or less why you are arguing we should not take action.
Good point, and that's indeed one of the reasons why I'm against taking actions. If we do people might get scared away because they don't want to be banned or because they think we are not open to criticism or new ideas.
However, dealing reasonably with him gets harder and harder over time. It is a failing in me as a person, but every time I see a message from Anatoly, my gut clenches up and I go into a defensive mode, and want to prove him wrong.
Knowing this, I actually try to see if there's something good in his suggestions so that they don't get overlooked by devs that are ignoring him (that depends on the issues though).
So I have to master myself and try to speak reasonably, and try to not give back to him what he gives to us. I hope I'm getting better at that, but...
That's laudable, and I wish everyone else would do that.
Take issue 16781 as a recent example. I wanted to prove him wrong, both because of his past actions and because of my perception (probably colored by those past actions) of his choice of title for the issue ("execfile/exec messes up...") But there is a real (documentation) issue there.
We discussed about that, but unfortunately I missed the original title. My criticism (albeit mild) was about the use of the word "magical(ly)" that seems to imply that the behavior of Python is magical and obscure. He said that from his point of view the behavior looked magical, and I don't think he meant it as a non-constructive criticism against Python.
I managed to moderate my tone...almost. I still failed: I said "the fact that the print works should be a clue", implying that he should have seen it himself, But if I were dealing with anyone else, I would have said, "The fact that the print works is a clue..."
This difference is *subtle*. But those subtleties are *important* in determining the tone of a community, the supportiveness of a community, the openness of a community, the inclusiveness of a community. Someone reading my comment on that bug without knowing Anatoly's history would think that the Python community is very stuck up. It is so easy to forget that our words to Anatoly are not read just by him, but by many many other people.
This also work in the opposite directions. We might give more weight to some word or expressions than he actually meant to convey (see the "magical" example).
Anatoly spreads negativity almost (but not every!) time he opens his mouth, negativity which is then compounded by our natural human reactions to his tone. Yes it would be great if we could all master ourselves and always speak to him reasonably no matter the provocation, and yes we absolutely should strive very hard for that goal. It should be one of our guiding principles as a community.
But is that enough?
Remember, the issue isn't just *us*, the issue is also the effect on people with whom we never interact directly, people who may flee the community, or not join it, because of the negativity produced by both sides.
That's why we shouldn't produce it from our side, especially because we are in many. If he's fighting alone, the negativity will be isolated and ignored, but if we fight back it will broadcasted throughout the community.
Personally I'm very patient, and it's almost impossible to offend me or get me angry, but I understand other people have problems controlling their feelings in some circumstances.
Full disclosure: despite arguing here for *doing something* about Anatoly, I am in fact somewhat ambivalent about what. I have no problem with banning him for specific actions (such as a ban from the tracker for repeatedly reopening an issue). But what, if any, other actions should be taken I am not clear on.
We strive to be a welcoming bunch and I'm convinced that a part of this is to call out anti-social behaviour and stop it. Otherwise our playground stops looking like a fun and safe place to contribute.
And a side effect of being welcoming is that you get every kind of people. Different people have different behaviors and skills. I don't think his lack of social skills is worse than e.g. the lack of English skills of some of the contributors. In both cases the intentions are not bad, but the message might be difficult to understand and thus can be misunderstood. These people shouldn't be marginalized just because of their lack of skills. As an example, I recently found out that one contributor on the tracker that sounded somewhat annoying actually was a ~10 years old kid. From that point of view his contributions went from somewhat annoying to quite impressive (and I think some of his patches have been committed too). Of course if people have an intentionally destructive behavior they can be stopped.
As Nick pointed out, the problem isn't who he was coming in to the Python community. The problem is that he hasn't learned to support the community instead of tear it down, after *years* of effort on the community's part.
That might be because the problem came up explicitly only recently. He got some signs before, but either he missed them, he didn't think the problem was so serious, or he was unable to solve it. Now that he has been warned explicitly and the problem has been made clear, I hope he'll manage to find a solution (and he seems to be willing to do it).
Best Regards, Ezio Melotti