Jump to content
  • entries
    10
  • comment
    1
  • views
    13,556

Banning People Who Disagree With You


scrottie

904 views

I'm all for curbing abuse, but is someone who disagrees with you abuse? What about persistent dissenting opinion? Is it your obligation to silence persistent dissent?

I'm not trying to actually accomplish anything with my Twitter feed, just vent, so there's no incentive to keep anyone around with a conflicting viewpoint. If someone likes something that I don't, that's plenty of reason for me to block their messages.

 

We don't like to be reminded that we make mistakes or even that our decisions and likes and wants might possibly be a mistake and we especially don't like it when our possible mistakes are consistently pointed out. It's easy to take that personally. But taking things personally is a defense mechanism.

 

We've all dealt with roommates who won't do their own dishes or coworkers who won't do their job. No matter how nicely you ask, they arbitrarily decide to take it as a personal challenge and then over-react to a simple request (likely one you wouldn't have had to make in the first place). They misrepresent the request to do dishes as an attack on them and lash out and use that as a rationalization to ignore you. So then you have an escalation.

 

I'm not active on p5p and can really only speak as an outsider, but I did follow it for a long time, almost entirely in silence. When you have persistent dissent, you're eventually going to move on anyway and do what you need to do move Perl forward. One of those debates in the past was pseudohashes. It had to be done, for reasons. It was going to be done. We've decided it's going to be done. Except that the one person doggedly pointing out problems with it was proven absolutely correct, and attempting to do this and then trying to back out of it created an enormous amount of work.

 

At what in the discussion about the idea of pseudohashes, the discussion of the idea, the implementation, fixing fall out, removing it, or dealing with fallout from removing it should MJD have just shut up and left it alone? Should he have made one comment and stopped? Should he have done his best to represent his insights throughout the whole process?

 

Please don't assume that just because one person is alone in their view that they are automatically wrong and therefore a liability to progress. There are no shortage of large pieces of software (the Netscape browser comes to mind, and probably everything written inside Microsoft after the 80's) where commonly held opinion was not the sane one.

 

Something happened in TBAG while I was out of town. One man, J, who had been doing a lot of work -- organizing rides and events, doing graphic design work, screen printing stuff -- had a guest behave badly and steal beer. This guest, M, was warned that he could leave with the beers he was trying to steal, but "you and I won't be cool" (you won't be welcome at future events I'm organizing). At a future event, sure enough, M turns up, and demands free entry. He is ejected.

... but there's a problem. M has friends. So (I'm not clear on the details here), he turns around and complains about how he is treated and gets J kicked out of the organization. Wham.

This makes me grieve for an organization I helped shape. Some strange reading of the code of conduct I wrote and worked hard to get ratified by the board was used to justify this. The CoC was twisted away from its intent and spirit to play favorites.

 

With skirmishes like this, it too often becomes a matter of who is better liked and who has more friends.

 

When I first drafted the TBAG CoC, I left room for dissent and conflict resolution, because I'm often the dissenting opinion. Everyone wants to do the normal, predictable, safe, expected thing. Being on the board of a bike advocacy organization is already wild and wooly enough for them, they're certainly not going to get on the board and then make any sort of waves. But I want to make waves and I want the organization to make waves. And doing some crazy ass shit worked. While I was on, we doubled our membership and radically altered the political landscape of Tempe.

 

I don't know if J was told about conflict resolution mechanisms and offered them. I'm guessing not.

 

J wasn't 86'ing M from the organization, only from events J coordinator, so M getting J axed was an escalation of the use of force. Doubtless J was offended by M's actions too. The difference is that M had power to retaliate from the offense while J was denied even reasonable, modest levels of power that an organizer should have.

 

Various Perl 5 Porters feel attacked and offended -- but exactly how justified is this?

 

"It's been an albatross round perl5's neck ever since" was said to Reini about a feature that his employer, cPanel, critically needs (the compiler toolchain). cPanel donated a ton of money for core development, and a feature they critically need, the compiler toolchain, has been under constant attack.

 

I feel some empathy there. I know everyone hates the Perl 5 compiler toolchain, but doing server-based game determination for the Las Vegas gaming market, the Nevada Gaming Commission absolutely 100% required that code be compiled. Even if the compiler isn't as good as other language's, we needed it, just like cPanel does. Reini isn't asking anyone to maintain it for him -- cPanel is paying him to maintain it. But he can't, because they're actively trying to deny access to the needed APIs.

 

Core maintainers feel compelled to make the needed internal APIs private to stop people from trying to use them. At least that's the story I've gotten (please correct me if you know otherwise). Never mind just declaring them "internal, use at your own risk" (see the famous Wallism, “Perl doesn't have an infatuation with enforced privacy. It would prefer that you stayed out of its living room because you weren't invited, not because it has a shotgun”). B modules needed for this are repeated and recklessly being broken by the auctions of core maintainers.

 

"If I could travel back in time and stop [person], I would in an instant." "failed experiment".

 

I feel that those could be considered personal attacks just as much as Reini complaining that someone's commits are "bad" because they're breaking things.

 

I'm sorry, but while I empathize with rjbs' annoyance, I think Reini is equally entitled to annoyance in this case, if not more so. And I think Reini has been conducting himself equally as well as the Perl 5 Porters on the list. The difference is power and who has the most friends.

 

Does it really make sense to expunge the porter paid by cPanel who is representing cPanel's interests because his dissent is causing offense?

 

Reading through other Perl 5 Porters posts, Reini has been helpful and approachable. I don't think it's possible to pull the March Lehmann argument here.

 

Reini is not assigning motives; he's only accusing people of breaking the compiler, which as far as I can tell, they are. Other people are accusing Reini of "trying to drive people away", which is an assigned motive. Not cool.

 

I'm reasonably certain that Reini's goal is simply to keep the compiler toolchain working for his employer, while volunteering to make Perl fast and sane and helping other people on the list. If someone is legitimately attacking other people, you don't need to assign motives and demonize them. Their bad behavior speaks for itself.

 

Should other people have to put up with Reini? Should the board have had to put up with me? Or people "put up" with J? Or M? Or MJD, when he was railing against pseudohashes?

 

In the case of Marc Lehmann, I was arguing for handling him a certain way to attempt to avoid triggering bad behaviors, but I don't argue (and I don't think Marc would either) that there were anti-social behaviors.
Yes, Reini could have conducted himself better. I think there's some German/Austrian directness there that dictates that things be said plainly and words not minced. If the CoC (I haven't read it in this case) states "no personal attacks", I find it ambiguous whether "this is bad for the same reasons as other things he did [that I've pointed out before]" (paraphrased) is a personal attack. It references a person, but talking about an ongoing perceived problem with their code. I'd like to have seen Reini do as rjbs suggested and remain unfailingly technical and specific even though R considers the larger problem to be someone else's approach to code.

 

Another resolution would be for rjbs, and other people offended that Reini is upset that their changes are breaking his stuff, to ignore Reini. Keeping breaking his code and simply ignore his protests. Unless this is conclusively a CoC violation, being annoyed at someone in retaliation for them being upset at you is not legit banhammer material. There's no moral imperative to kill dissenters merely for dissenting. TBAG's CoC considers it the case to be the opposite -- to create a process for dissent.

 

Another resolution would be to be explicit that drastic steps to control discussion are the purview of the current pumpkin. Let the pumpkin say "I've decided, we're moving ahead [even if this proves to be a pseudohash situation and you were right], so we're stopping conversation and booting you if you persist". Don't twist motives and create hyprocrtical double standards about what's an attack to turn it into a CoC violation if it isn't one. Just be honest about exactly what you're doing. Part of that honesty needs to be that this person isn't being ejected from the community, only from discussion in a release cycle.

 

Finally, some conclusion:

 

Without safety and justice for everyone involved, organizations turn into closed little clans. It should go without saying that this is bad. Non-trivial efforts need to be larger than a few friends who like each other. This was an explicitly stated goal for mine for TBAG and apparently one I've failed in realizing. Will TBAG get another ride coordinator who actually puts on big hyped events with professionally produced promo videos, merch, PR, venues, ride leaders, and the whole wall of wax? Maybe, but based on past experience, someone like this comes along maybe once every three years, so we've likely got two years that we've fucked ourselves unless people can see each others points of views, appreciate some over arching sense of justice than personal annoyance, and reconcile shit. It is unhealthy to twist technical disagreement into personal disagreement and then twist that into CoC violation and I think both organizations I'm talking about could have done a better job on that front.

0 Comments


Recommended Comments

There are no comments to display.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...