Hacker News new | past | comments | ask | show | jobs | submit login
[flagged] No Code Of Conduct (2018) (github.com/domgetter)
91 points by nudpiedo on March 26, 2020 | hide | past | favorite | 99 comments

The easiest solution is in the name — simply don't have a code of conduct. As the owner of a number of open source project, nothing baffles me more than the argument that civil discussion can't happen without an official document outlining the terms and conditions of participating. You don't need one when you you interact with people offline, why would this be any different? Surely, there are people out there who won't appreciate you, no matter what you're like or where you're from, but you're always very free to simply walk away when that's the case.

The linked article is an actual fully fledged code of conduct along with promiss to lock and ban those who dont follow it.

> Surely, there are people out there who won't appreciate you, no matter what you're like or where you're from, but you're always very free to simply walk away when that's the case.

One problem with this as strategy is that it makes moderate, constructive or polite people to leave first. It also makes me easy to use passive aggression or hidden-not-so-hidden bullying to make people leave when I disagree with them.

Moderate, constructive and polite people can leave also because there is a CoC. Reasonable people don't like when a community is lawyer-ing over rules, when rules get enforced ambiguously or nontransparent. All which are very common with code of conducts.

As someone who ran a medium sized community for almost a decade, I saw such reasonable people leave for both a lack of rules (X should be forbidden, I am leaving) and also when we had a fully fledged code of conduct (I am tired of all the drama over X, I am leaving), and ambiguous/transparency issue (I am leaving because of the cabal who try to enforce their own interpretation of the rules). When the first happen followed with the second and third what you are left with was only members who either completely did not care or where inactive. At that point we removed the code of conduct and replaced it with a more common sense guideline of "just treat people with respect, and if you don't you get a friendly warning/reminder" and we slowly regained stability.

Code of conduct has an inherently risk of becoming a weapon for those who want to use passive aggression or hidden-not-so-hidden bullying against an out group. The more strict the rules the more you need to have a transparent community process for enforcement, but sadly those tend to be mutually exclusive.

None of that has anything to do with what I said about "you're always very free to simply walk away when that's the case" means in practical terms. People use to sound smart and mature and it is easy to use to make people stop talking about problems they see. Whether the complainers are right or wrong, "those who dont like how treats them should leave" as universal strategy is neither mature nor smart.

I picked on that, because it is common cheap talking point that I was forced to re-evaluate few months ago (not just because of online issues).

The linked article is in fact code of conduct and even specifies what will get you banned.

Based on my own experience I don't disagree with the article statement you quoted above, but I would describe it using other words to be more clear. I would say that community conflicts resolving should prioritize deescalation and dispute resolution over norm enforcement and punitive punishment.

This article say things like "Email that person, and try to work it out. Email the owners of the community, and alert them. Whatever you do, do not make a scene, as that will burden the entire community with your issue. If it's truly a problem and you're truly an asset to the community then you will probably get an email back. Sometimes, you have to be the bigger person. Say your piece privately, and don't dwell on it".

The community I ran in the past even had a similar statement, but using other words. Instead of saying "do not make a scene" we said "don't create drama". We were frankly tired of peoples personal disputes escalating and dividing the community, and so was the community. Sadly at that point a lot of reasonable people had already left.

At which point does it becomes the repo owners job to help you assert your own personal space?

Why can't you ignore the douchebag?

Some communities like to grow and attract more people. Many people don’t like to have to spend time avoiding, deleting, or ignoring communications from douchebags, which is reasonable.

Widening the range of participatory reach requires specific effort to further optimize for welcomingness.

> Many people don’t like to have to spend time avoiding, deleting, or ignoring communications from douchebags

Could the platform the community uses make it easier to hide posts and discussion threads that people don't want to see? That would minimize the time spent trying to deal with it.

It's called the ban button, most platforms have one. Despite the lack of formal rules and myriad edge cases, for the general case only, there is broad consensus (in society, not necessarily within small groups) on what constitutes "threads that most people don't want to see [or be subjected to]".

A really good example would be Linus calling people fucking stupid, or screaming at them to shut the fuck up.

(Note: I know there are people reading this who want to read 100% of what Linus has to say regardless of how mean he is in saying it. That is not a refutation of my claim above, as it does not negate the fact that the vast majority of people in society never want to be spoken to in this manner by anyone, for any reason, least of all for making a small judgement error in software that isn't even "prerelease" yet.)

> It's called the ban button, most platforms have one.

Do they? I can flag a post here on HN, or I can report one on reddit or facebook, but that still requires a moderator or forum administrator to handle the issue. In my newsclient, the effect is immediate and only affects my own view of the forum.

Why do you think this is about "personal space"? Why do you think the "moderate and constructive people left, assholes are majority" is not having consequences for repo owner?

> Why can't you ignore the douchebag?

Why the "No Code Of Conduct" author could not just ignored those discussions and want to threaten bans?

Also, back to strategy, it depends on what kind of douchebag we are talking about. When douchebags are the only one who talk and are unopposed, it is douchebags who sets what the culture will be.

Why is HN so heavily moderated? Have you looked at what unmoderated communities devolve into?

Back when I used to read and post to Usenet, my killfile handled almost all of the bad content so that I never saw it. The nice thing was that I was in sole control of that file and no one else had any say in what I did or didn't want to see.

Great, why not stick to Usenet now? Why did it become less popular?

My best guess is the fact that most ISPs discontinued their usenet feeds around the time that Andrew Cuomo (back when he was the Attorney General of New York) came to an agreement with a number of ISPs to block access to child porn in certain newsgroups[1].

[1] https://www.cnet.com/news/n-y-attorney-general-forces-isps-t...

> but you're always very free to simply walk away when that's the case.

I think the whole point is: if somebody has no incentive not to insult or harass you, that kind of behaviour can be used to bypass technical discussion.

Would you be happy if, after many years you're involved in a community and you do good work, some people start insulting you, and your answer is just to leave?

Yes, sometimes CoCs are too complex and deal with idiotic details. Yes, I don't think that changing "master-slave" into "leader-follower" really has an impact or whatsoever. But some basic rules about what's acceptable and what not are a good thing, IMHO. No two adults share the same vision of the world. Just state the obvious, if needed; is that SO hard?

> Would you be happy if, after many years you're involved in a community and you do good work, some people start insulting you, and your answer is just to leave?

Would you be happy if, after many years you're involved in a community and you do good work, some people start a smear campaign against you and invoke CoC to push you out of the community?

> if somebody has no incentive not to insult or harass you, that kind of behaviour can be used to bypass technical discussion.

Sensible people can tell when insults or harassment are being used in this way, and ignore the noise. And if an overly 'welcoming' project is being overrun by less-than-sensible people, no CoC is going to save it - it needs a clean fork to start a new community from scratch around it.

Except, in a lot of circumstances you do need it offline. Rules of order for Parliaments, town hall meetings, and everything in-between. Constitutions for local groups and clubs. Bye-laws for local areas.

Codes of Conducts are a lightweight way of expressing how interactions are goverened and disputes resolved.

The idea that adults don't need rules and guides to fix things is disproven by politics and conflict. Good politics is based on rules. Bad conflict happens when there are none.

I participate in a lot of communities that have CoCs. Never read any of them. It shouldn't take a document to show respect to other people in the community, save a few heated moments (it's human nature). In my opinion, public participants don't need to check the CoC before calling out behavior A as inappropriate. I'll call out what I consider inappropriate behavior without checking with the CoC, and try to bring the other person to my point of view.

And this is totally fine! CoCs are there for the end-of-the-line decisions where the "being reasonable" options have been exhausted. They are also useful sometimes for setting the tone for meetings / events.

The various uses and normal behaviour are not mutually exclusive!

so you substitute your own private, undocumented, ever-shifting, tone-driven value system for any given discourse context's set of actually codified rules.

that's still a CoC. you've just added entitlement.

Got it. I didn't know we renamed it from morals to CoC. TIL.

By being all in the nose about other Codes of Conduct and effectively codifying the expected behavior in your community, you're having a Code of Conduct yourself. I do agree that CoCs are little more than a distraction, but you just need one line to state you don't have one for your project- or perhaps even none at all.

I saw a recent comment on lobsters on how CoCs are an americanised way of solving issues, and it deeply resonated with me. Lot's of other things I see in american companies and even american media started to making more sense to me.


I don't think this was an attempt in good faith to participate in the discussion about the utility or futility of codes of conducts. This seems to be, depending on your inclination to give the authors the benefit of the doubt, either a joke in bad taste or simply a troll.

The straw-man "Frequently Asked Question" about the project name sounding like cock makes me lean to the latter option. In any case, this isn't really worth discussing much, as it's primary use seems to be to poison that discussion right from the beginning.

Or else what? "Asshole" according to whom? How are disagreements about assholery resolved?

This (and the original NCoC) is naive wishful thinking that won't survive first contact with an actual community issue.

Isn't the answer to all those questions whatever the owners of the repo want? I mean, its still a privately owned repository and communities.

If we're talking about small personal OSS projects, then yeah sure it doesn't really matter, because they're won't be a community to speak of.

Once you have a few other maintainers and contributors, there will inevitably be disagreements, and you have to have a realistic framework for resolving them respectfully and equitably.

You're probably right, and larger projects need a more formalized framework for CoCs.

> How are disagreements about assholery resolved?

You know, most git hosting platforms have nice "clone this project" and "fork" functions.

I think we're talking about different goals. I thought the goal was to foster a productive community working together on a project. Forking is a solution, but it doesn't exactly grow a community.

What's a "community"? The dictionary definition of "community" is people out there in the real world, who are exposed to some very real risks and need moral codes, etc. to protect from such. How much of this does actually translate online, where many contributors might even choose to remain anonymous and be 'identified' by some unpersonal login name?

Well, if you go to dictionary.com, you'll find this nice one:

> a social, religious, occupational, or other group sharing common characteristics or interests and perceived or perceiving itself as distinct in some respect from the larger society within which it exists (usually preceded by the)

Which dictionary did you get yours from? What other definitions did it have?

Reminds me of my favorite software license:


And that's the license I use!

I'm more of the opinion that NCoC is better than CoC. All that matters is code. If you bother the admin you get banned, if you bother a user, you get ignored. Is this really a problem so pervasive that I'm just blind to?

I can cite examples of a CoC being abused, where the alternative is impossible to prove, right? Look our CoC is holding back the flood gates of douche.

I'm not saying there's no discrimination, humans heuristics are deeply flawed, I'm only arguing that this problem was solved with block/ban/ignore.


I'm no fan of CoCs, but I already know the arguments used by (many of) their proponents, and that this FAQ does not fully address them.

This feels too dismissive, with an hand-wavey "let's be adults"; Clearly, the problem is people either don't act like adults, or the idea of how an adult should act differs.


"or possibly, you are wrong?" will be called "victim-blaming", "gas-lighting" or "lamp-shading",

"Email that person, and try to work it out" will put the onus of resolution on the victim, etc.

For these culture wars we need to directly address the two viewpoints; This naively assumes best intentions, the traditional CoC crowd falsely assumes the worst. We need to discuss distinctions of behaviour - separate the "micro-aggression" from the outright crime and make it very clear they are to be treated entirely differently, that "scorched earth" policies rarely work, but neither do "lets all get along" policies.

<tangent> TBH, I see a similarity to arguments over programming methodologies; trying to promote a handful of catch-all methods when the best solution is one tailored to the situation </tangent>

edit: Ok, so someone flagged the article. seriously? Can we all review what flagging is supposed to be for: To flag abusive or inappropriate material, not a special super-downvote option.

“NCoC” is how we got codes of conduct. There’s a decent fraction of people who just can’t stop being assholes, but you can somewhat hold them at bay (imperfectly) with a list of rules.

> “NCoC” is how we got codes of conduct.

No, we got codes of conduct because "post-meritocracy" activists (not invective, actually what they call themselves: https://postmeritocracy.org ) had enough political leverage in the software industry to force these overtly political documents on various projects.

Unfortunately it is often those people who end up writing the codes of conduct.

Wow, after reading the title I liked the idea of keeping it sane without needing written rules (rules which IMO sometimes go too far), but reading further down that document seems whoever wrote this is motivated by "butthurt" about "mobs" (presumably the so-termed "SJW mobs").

In any case, I expect there will be flame wars, and meta-flame-wars in here soon.

> It is not this community's place to care about individual feelings. We leave that to the individuals. The internet is a big place, you should prepare yourself to deal with it.

Leaders who don’t take their responsibility for leadership seriously are very bad leaders, as we have had demonstrated for us quite recently.

I hope that groups replace their leaders who think this way.

It's absurd to claim that we need "leaders" on random single-purpose software projects. It's a git repo, not a commune. I think that's part of what makes these CoCs so ridiculous; they generally don't have any consequence except insofar as the presence of the CoC itself is a kind of social-political signal.

If the scale of a project is such that leadership is actually important, it's 1000x more useful to e.g. form a nonprofit than to slap a list of behavioral proscriptions on contributors.

What good is a leader if they allow the workers to be run off in favor of layabouts?

I think that the dichotomy you propose is a false one. There are many options besides “let noncontributing SJWs flameshame everyone away” and “be inconsiderate jerks who don’t care at all about the effects our communications have on others”.

A “reasonable person” test can be applied to judge these things. It’s not very popular because it isn’t a strict, objectively-applied code, which is what hackers generally prefer, but that doesn’t mean that it isn’t a good and workable solution.

As hackerdom gets more mainstream and the mean moves closer to neurotypical, these sorts of non-objective “if they are being mean, kick them out” ideas are gaining popularity without meanness having to be strictly, objectively defined.

These people are trying to make a political statement with this CoC; they are solving a problem that doesn’t exist (or is solved by simply not having one without proclaiming loudly how not-having-one you are). It strikes me as YAGNI.

Unless you like being an asshole, just don’t have a public, defined CoC (just an unwritten informal “no assholes”) and quietly kick out any assholes who show up.

I don't understand, how will that happen? Any examples?

Is that agreement or disagreement with the parent poster?

I mean, it’s only human to want the benefit of a huge audience without the implications of having a diverse one.

My toddler also wants pancakes for every meal. As adults we grow past such a narrow and self-serving view.

Most of us, anyway.

So what do you do if someone on your project doesn’t behave like an adult? Just make it up as you go along? How do you decide how to do that in a fair way?

According to the article:

> Q: As a community manager or leader, what happens when the mob arrives, or when someone starts to engage in discussion that could lead to more endless discussion? > Lock, and ban your way to freedom.

So, we are "We are all adults. Capable of having adult discussions."

Our problem is "debating how members should behave in their communities, only to be found to never be fully resolved to anyone's liking".

And the problem is solved by "lock, and ban your way to freedom".

I thought it first suggests sending an email, speaking and dialoguing with education. The ban thing is against the mob or the endless discussions etc.

"We accept anyone's contributions."

Probably not a true statement. Accept them based on its own merits is probably more in line with how most projects work.

I recall some project on Github that really did accept all contributions. Very funny. For a short time.

I think the "anyone" here is speaking to the non-merit measures of a contribution. Anecdotally, I mostly see GitLab/GitHub usernames, not email addresses with names in them (or in the field). I think that prejudices of the sort CoCs ostensibly seek to abate are largely impractical to hold, unless you go and track down the person tied to the patch every time you get one.

I think probably a lot of this is people trying to claim that because the outcomes are unequal, the procedure is unequal; when the simpler answer is that some subsets of people just tend to be composed of those who choose not to contribute to open source software projects or gain the professional competence often required to do so. Free people are not spherical cows, they have their own sets of incentives, even ones you don't understand as a career hawk businesslady or an ordinary schlub grinding at the keyboard.

Oh good. This again.

The very first line is the problem here: 'We are all adults. Capable of having adult discussions.'

We're not. Some people are less capable of behaving themselves in online communities than others. Also, the definition of "behaving" is subjective.

Easy. If someone cannot behave like an adult, block him. But don't allow snowflakes to dominate the discussion, to demand blocks. In usenet days it was the endpoint who had to block or filter, not the central point. Blocking the central point is not a democratic solution.

Not to mention that some people who want to get involved in OSS are literally not adults.

If that's the problem you're trying to solve, make a "CoC for folk under 18" and let that be the end of it.

Great, then you're enforcing rules on one group and not the rest. They're not necessarily even the problem group. Bullies and snowflakes are often the adults. And why 18? Why not 16? or 21? Are you going to make people prove their ages in order to take part? If not, you're going to just get people lying so they can either be protected by the CoC, or lying so they can go around being an asshat. Are you allowed to be an asshat to the people under 18? If not, then you've just created a CoC.

There are just too many issues with having a CoC for kids and not everyone else. It doesn't solve anything and makes it even harder to figure out interactions. You're better off with a simple CoC for everyone, or none at all, but don't pretend that you're community is adults only so you can justify allowing people to be crap to each other.

Well if they do not conduct themselves in a manner befitting of an adult and professional then just sanction them eg. warnings, kicks, bans,....

No need for a CoC.

If one person thinks something is fine and someone else thinks it isn't you get disagreements and arguments based on misunderstandings and assumptions.

IMO outlining what is "professional" and what isn't in a CoC solves that issue.

> you get disagreements and arguments

You get those anyway. Also empirically speaking, having a CoC to try and spell out "professional" behavior seems to make things worse. It's not a solution at all.

That sounds like a code of conduct...


The lack of self-awareness in this comment is truly staggering.

To behave is defined by the Oxford dictionary as "[to] conduct oneself in accordance with the accepted norms of a society or group."

Which society? Which group?

What if your only interested in working with adults who are able to stand up for themselves? When I do code review, I need contributors who both believe and can argue their implementation is good/correct. I assume the intersection of people willing to write and defend their code can also tell the random asshat to shove off.

> Some people are less capable of behaving themselves in online communities than others

Especially, for example, the kind of people who insist on foisting overbearing codes of conduct on every project. From a practical standpoint, those people seem to cause vastly more trouble than whatever marginal improvements their codes of conduct might nominally capture.

> From a practical standpoint, those people seem to cause vastly more trouble than whatever marginal improvements their codes of conduct might nominally capture.

Do you have the ratio of the number of CoC implementers who dont add to open source vs the number of CoC implementers who do add to open source? I'm aware that there have been a couple high profile incidents where project outsiders have created drama by insisting on a CoC. But your statement could be very untrue if there is a larger number of CoCs created without incident by members of the project (I think this is likely).

I think the actual metric we care about is

(counterfactual number of problems without CoC - factual number of problems with CoC) / (factual number of problems caused by CoC)

The denominator is very large (I have personally seen this come up dozens of times, including this thread), and I suspect the numerator is very small (but obviously I cannot prove it, since there's a counterfactual in there).

I think the first term is by far the largest term in your equation. Source: the entirety of human history demonstrates that large groups of people need laws in order to function justly. In small groups, people are fine. But as you scale up, the likelyhood of bad actors reaches 1. Human societies need codified methods of dealing with bad actors, which is what a CoC does.

Additionally I'd argue that you think the denominator is largest because dramatic incidents are the most visible. The vast majority of big github projects have a CoC, if they really caused so many issues you'd have way more than "dozens" of examples.

Not having a CoC doesn't mean you don't address bad actors, resolve disputes, etc. It just means that these things are entrusted to the project leader's best judgment. And anyone can fork the project if they think the project leader isn't doing a good job of keeping things orderly.

It's a matter of scale. Humans have thousands of years of history codifying rules for communities. From Hammurabi to your HOA, people have found its easiest to enforce rules when you write them down.

I'll need some evidence to back up that wild conjecture please.

What on earth about being nice to each other is overbearing? Which bit of the contributor covenant do you find particularly overbearing?

> What on earth about being nice to each other is overbearing?

Well, are people nice to each other because they want it or because it's in the CoC? I'd rather deal with somebody that doesn't like me upfront rather than mask the quarrel with policies.

The idea that the imposition of, for example, the Contributor Covenant, is just about "being nice to eachother" is exactly the sort of thing that precedes long periods of abuse and bullying predicated on it.

If you don't pay attention to the erosion of community occurring under such projects, then that's your own ignorance, not the basis of an argument. You can reframe the discussion in terms of "being nice to eachother", and your opposition as "in favour of not being nice to eachother" in turn, but that doesn't mean that's the actual dichotomy.

This is exactly the kind of language used by the unbearable sort of person who insists on a CoC.

"Be nice to each other."

Unless you're CoC is targeted toward a hypersensitive kindergarten, that language has no place. You need to realise that it's extremely unprofessional, infantilising, and patronising. You're going to alienate a lot of talented people who have no patience for that rubbish. You're going to be on the fast track to a mess where blue-haired amateurs are feverishly reminding everyone of their pronouns rather than having a group of grounded, professional adults getting things done.

"Be nice to each other" is just another way of saying be polite, which is part of being professional.

People "feverishly reminding everyone of their pronouns" are not being polite, professional, or nice.

Getting worked up over occasional polite requests about pronouns is not polite, professional or nice either.


> How on Earth could my colleagues ever carry on the same if I turned up in lipstick and heels and demanded they call me Sally?

Because they are professionals, and your new look or whatever else has nothing to do with the job that needs to be done.

I'd say the same about your behavior. If you keep doing the job and politely point out that you'd like to be called Sally, that's fine. If it interferes with you doing your job, then that's a problem.

Welcome to HN. I'm glad you felt the need to create an account to say this.

> I'll need some evidence to back up that wild conjecture please.

Oh, let me just pull up all the peer-reviewed studies that people have done comparing the impact of CoCs versus... oh wait, that obviously doesn't exist. Do you have "some evidence" you'd like to share? I'm not really sure what you are looking for here.

> What on earth about being nice to each other is overbearing

This is such an absurd motte-and-bailey. Are you really trying to sell us on the idea that the 5000+ word "contributor covenant" is nothing more than "be nice to each other"?

People need to take a seat-back from online interactions. Someone insulted you on the internet? Fine, that won't change anything on your life unless you allow it to change anything. If this person is angry it's in most case because he is powerless in respect to the current situation and wants to be listened to.

The problem really lies in this mentality of being offendable 24/7 by anything read or heard anywhere, which ironically enough is way more prevalent in adults than kids. Breath, this whole thing doesn't matters as much you think it does.

On the other side, there is a tiny portion of the population who specializes in being offended to impose their rules. It's a power game. Again, the only effective solution is to not listen.

And the point about not caring about a person’s identity is missing the point. A CoC is intended to empower people who would otherwise be given the choice of leaving or silently putting up with assholes who create an environment that makes people uncomfortable. And yeah that tends to involve people’s identities but it doesn’t have to. Like using gay or retarded to mean bad. Or just openly disrespecting trans women and calling them men “bEcAuSe bIoLOgY”.

All the anti-CoC people seem to assume that there are no assholes on the internet and that “why don’t you just leave” is what’s supposed to happen.

> All the anti-CoC people seem to assume

some, not all. It's a strawman that being anti-CoC means you are that naive.



1. This is a CoC

2. Read #1

3. "We are all adults..." Then why are we having this discussion?

4. I'll continue to try an format text because I'm crazy

> Email that person, and try to work it out. Email the owners of the community, and alert them. Whatever you do, do not make a scene, as that will burden the entire community with your issue.

Wow. I mean, I was expecting “we don’t care that you’re being abused” to be the subtext here, but they just came out and said it.

I'd suggest that you try those suggestions (direct contact, then escalate privately) before rejecting them.

Basically any project that uses this as it’s CoC of any size will quickly be overrun by bullies.

People who cares very deeply about CoCs are usually bullies.

I have seen this as well. It's as if they're trying to determine the boundaries of (un)acceptable behavior, and once clearly define begin to put the community to the test and a never ending CoC revision sessions in order to bring in (never remove) new behaviors considered harmful. That and also keeping the CoC committee members relevant.

Citation needed

When has this happened?

This isn't the same, and your bad-faith interpretation is exactly the kind of issue with traditional CoCs.

"making a scene" isn't the same as any and all complains, nor does the wording imply any kind of complains is "making a scene". But there are plenty of example where people purposefully make a complaint as public as possible to shame the accused before any formal complaint is made in order to influence the outcome - it's the community equivalent of "trial by media".


What is this? Why this is a thing?

In the last 5-7 years we have seen a cultural phenomenon where somehow people have become unbearably sensitive to confrontation on the internet. The extent to which these people are able to disrupt social media, workplaces, and even software projects is staggering.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact