Recently I was at a talk where the speaker, who was confident and funny, made a tiny little aside, just a few words long, that suggested, well let's say it was members of a particular profession or people who used a particular programming language or people who lived in a particular place, were somehow less than "us". It was nothing big, nothing to object to, the talk went on.
Then a few sentences later, the same comment, but this time a little bigger, a little more detailed, embroidered, harder to miss. A recurring joke, but now with more sting. Someone DMed me "those kinds of jokes are not ok." While I was agreeing with the DM, an even stronger version of the joke, really obvious and cringey now. And finally a fourth time before the talk was over. Complaints were made.
I've talked with a lot of people since about why I didn't do something at the first joke. Put up my hand and say "I don't think we need that, do we?" But you see, the first joke was really mild. If you correct someone when they've done something really mild, you're a snowflake who is just looking for offense and can't you just assume people mean well? If you let it go, for some people that is all they were going to say and that's an end to it. But for some people, they are emboldened - they hear the laughter, everything is going well, so they turn it up a little. And if you step in now you're still going to have people tell you that you're too sensitive. If you leave it until they say something that is clearly outrageous and upsetting, well now people are fine with you taking action but the people who would be hurt by it have been hurt. You didn't protect them.
Which brings me to this whole assume or presume good faith thing. It is one strategy a community can use when setting up codes of conduct and similar rules. It's important in an international community like ours to understand that some people may be working in their second (or 5th) language, may live in a place with different attitudes to gender and to inclusiveness, may be operating under constraints we don't know about. That's true. It doesn't mean it's ok for them to do things against the CoC though. It just means they should be corrected rather than punished. For example, a post that misgenders someone should be edited -- whether it did so knowingly or not. You can't leave it uncorrected just because the poster didn't mean to offend, didn't know any better, doesn't have pronouns like that in their first language, or even doesn't believe that someone's gender is what they say it is. (And note, comments are only editable by moderators, or the OP for 5 minutes, and typically it is comments that mention one user to another: "Did you try Kate's suggestion? He's usually right" sort of thing.) When a CoC violation can just be edited out, that's what should happen. Any issue of intent is irrelevant.
But of course not all CoC violations are honest mistakes. The Internet is full of people wringing their hands about decent, honest, hard working folk who accidentally offend a snowflake and suffer terrible retribution. I care far more about decent, honest, hardworking folks who wanted to understand their error message, but they instead got a dose of exclusion, othering, or unwanted religious advice. We're so busy pretending that it's fine to be cruel to people as long as you didn't do it on purpose or didn't know any better, that we forget what happens to people who read this stuff. Where is the good intent for them? We're having giant debates all over meta where apparently it's now cool to explain how your religion says you can't recognize trans people as who they are because that would mean God made a mistake. Why are we doing that? How is that making the internet better?
And then there are the trolls. Trolls love places that tell us all to assume or presume good faith and intent. They love riding the very edge of appearing polite while actually being cruel as can be. They're "just asking". They imply that people's pain is nonexistent or unimportant or both. They demand proof over and over. They keep saying things like "don't you want to learn from people who disagree with you?" and "surely we're all here to grow and learn" and "but you have to respect my beliefs if you want me to respect your beliefs" and all kinds of polite and reasonable sounding things. Sandwiched in with "but we all know women just don't like programming the way men do" or "you can't force me to say God is wrong" or "marriage should only be between a man and a woman" or just misgendering someone on purpose to be mean.
It sounds great, let’s assume the best of people and not be quick to take offense. Let's give people a break and look past their words to what they said and all work together to understand this error message. It sounds great. But in practice it means that people who feel hurt and excluded, who feel that every day someone tells them they don't belong in their profession, are told to "suck it up" and "look past that" because surely the person didn't mean to offend you. Well, who cares? They did. Do something about it. Edit the "mistake" or the deliberate cruelty away, show the person "you do belong here and we won't let people talk to you like that." Stand up for people who are being hurt instead of for people who are hurting, whether accidentally or on purpose. (You don't have to punish those who are hurting people; just stop leaving their stuff there because they didn't know any better.) Quit defending offensive material because it was probably done in good faith.
Here's an article that goes into more detail on why assuming good intent can actually work against inclusion. Some quotes I found relevant:
people telling you to ‘assume good intent’ sounds like they’re really telling you to shut up. That your feelings about getting stomped on all the time don’t matter. That no matter how sore your foot is, how much money you’ve spent replacing ruined shoes, how many times you’ve limped on broken toes, you still have a responsibility to worry about the feelings of the people who are hurting you.
...
Addressing incidents as if they’re simple conflicts between the parties involved sets up a false equivalence between dealing with discrimination and dealing with the momentary discomfort of being told you hurt someone.
...
Telling people to ‘assume good intent’ is telling them that no matter how badly they hurt, they still need to smile and be nice so the person who hurt them won’t feel blamed.
This creates a double standard. Alicia must assume good intent from Fred, even if he stepped on her foot because he was helping himself to her personal space in a way he would never do to another man. But when Alicia reacts out of shock, anger, and pain, the ‘assume good intent’ rule allows Fred to cast that as something Alicia has done at him, rather than seeing it as a very normal human response to being hurt.
It is a good article and if you haven't been actively working on inclusion issues recently, it's possible you will learn a great deal from reading it. It is very difficult for people who are not constantly being poked, prodded, corrected, neglected, and pushed aside to understand what life is like for those who are. Like all kinds of privilege, setting it aside to empathize with those who have had specific hardships is difficult. I think it's worth doing. As long as we keep saying "he didn't mean it" and wringing our hands about poor innocent people who didn't mean to offend, and hypothetically what if someone got banned for an honest mistake, we are ignoring the people who really got hurt (again) and who left and who also were innocent, but apparently should just suck it up and not complain (or be super super polite and gentle when complaining, making sure to protect and care for the poor innocent user who has just hurt them, on purpose or not) then we are continuing to enable people to be poked, prodded, corrected, neglected, and pushed aside and what's more, we're saying we don't really mind as long as it's not deliberate, malicious, and repeated. I don't want to say that.