openzfs / zfs

OpenZFS on Linux and FreeBSD
https://openzfs.github.io/openzfs-docs
Other
10.38k stars 1.72k forks source link

request: to not continue on this virtue signalling path #10458

Closed bghira closed 2 years ago

bghira commented 4 years ago

hello, as a man of non-white background (a mix of brown, black, and white), the removal of "slave" and "blacklist" from the source code itself feels racist.

i'm pretty aware of these terms and their context is obvious, i don't think anyone thinks of racial supremacy when writing source code. but we talk about orphans and other concepts. metaphors are useful for discussion.

if you want to clean the source code and make it more readable, that's cool. but acting like myself and other PoC (people of colour) can not understand the subtleties of language and that these are not being used as racist terms actually makes us feel rather cast out and viewed as inferior.

that being said, i understand the context of these changes comes from white developers who would rather not be associated with the concepts. it is a murky thing, but be honest when making decisions. because acting like you are saving me is feeling rather patronising.

ahrens commented 4 years ago

Thanks for sharing your perspective. I'd like to discuss this with you more - would you be willing to do that over email? If so, send me a message (mahrens@delphix.com). I'll have some time later today or tomorrow.

ahrens commented 4 years ago

if you want to clean the source code and make it more readable, that's cool.

Thanks. That is certainly part of my motivation.

but acting like myself and other PoC (people of colour) can not understand the subtleties of language and that these are not being used as racist terms actually makes us feel rather cast out and viewed as inferior.

I apologize for making you, and any others, feel cast out and inferior. I'd like to figure out how to prevent that in the future.

I assume that the people who used the terms "slave" and "whitelist/blacklist" in ZFS were not thinking about human slavery or race, and I know that not everyone sees these as related to race. I also assume that these terms were not used with racist intent.

Some people (myself included) feel that there is a connection, however unintended, between "whitelist/blacklist" and implicit bias / systemic racism. Regardless of race, the term "slave" is an analogy to human slavery, and in my opinion, it is too serious and painful of a topic to be used in this way.

that being said, i understand the context of these changes comes from white developers who would rather not be associated with the concepts. it is a murky thing, but be honest when making decisions.

It's true that I don't want OpenZFS to be associated with slavery, even if the association is unintended. In your view, how was I being dishonest about my motivations?

because acting like you are saving me is feeling rather patronising.

I know that I'm not saving you or anyone else, and my intent wasn't to patronize. How can I make that more clear in the future?

I understand that changing the language in OpenZFS has only a tiny effect on the huge problems of minority representation in our industry, and systemic racism in society - but I believe it's a positive effect. How can I improve the language in OpenZFS while also making clear my respect for everyone - people of all races including mixed-race?

ahrens commented 4 years ago

@misterbigstuff, I didn't hear from you directly, so I've unlocked this issue so that we can discuss the issues you raised here.

To anyone who is considering posting on this topic, please keep in mind the OpenZFS Code of Conduct. Consider re-reading it before posting.

Please be constructive, considerate, and respectful. Avoid personal attacks. Posts that do not follow the code of conduct will be hidden or deleted.

bghira commented 4 years ago

firstly, we cannot comment on our own issue if the org has locked it.

secondly, i've had your question of "would you care to discuss this (with me) over email" circling my head for several hours and i've had a few internal reactions to this.

a) that I should respond as other people of colour might and tell you "it's not My job to help (white, cis) people understand their role". however, i've always felt that this is a disservice, however valid. it's a lot of energy to spend to continually explain our position to people who have and never will experience the same. and this can feel like yet another (white, cis) person trying to butt-in and make an issue about them and their personal involvement/struggle with this.

b) that I should take the time to formulate some responses after the initial emotional reaction has subsided because you are no typical person, but, someone who has many eyes on them. helping you helps all of us.

mostly, I, and others who I've spoken with, just wish that this problem would stop coming up, here - at all.

I don't know about you, but a lot of us got into computers to escape whatever issues we had at school or home. logging into work email and seeing this (for lack of a better term at the moment) crap in my inbox where I otherwise expect to see ZFS related discussion.. well, it actually put me in an incredibly bad mood. in curating a safe space for people of colour, this action has rekindled some things that (presumably, tbf) more than a handful of us just try to avoid focusing on a daily basis because we have experienced it firsthand.

it's not because I don't want my own cause to advance, it's because there's a time and a place. you even said OpenZFS has a tiny effect on this huge problem - in my opinion, let sleeping dogs lie.

there has to be some kind of balance where you're risking literally triggering PTSD by bringing up issues of slavery in an otherwise safe space. it's a tiny benefit to remove the word from the source code, but a big mess - even a rift, created in the community.

the rift isn't between racists and gentiles, it's about just wanting to keep that stuff out of here altogether.

bghira commented 4 years ago

i might be missing something altogether about this.

as an example of what i might be missing, the show Silicon Valley has an episode in a later season where the big bad corporation Hooli CEO comes up with a "Tethics" pledge for companies to sign on to, claiming they will behave ethically from here on in. signing the pledge is a big deal, because not signing the pledge automatically means you are not for ethics.

in other words, Github and other organisations make some big decision and you all sign on because not doing so makes you look bad? but it seems like a very Silicon Valley-esque thing to do. and I mean that by the real life place name (and how people behave there) and the show..

signing the "Tethics" pledge was widely understood in the show to be a meaningless act. non-binding.. much like a tiny effort of changing a word - that did nothing to further anti-racism, it (in my and others' opinion) makes documentation obsolete and discussions more confusing, and it unnecessarily riles up community members.

ahrens commented 4 years ago

@misterbigstuff Thanks for sharing your thoughts. I'll try to process this and respond tomorrow.

lundman commented 4 years ago

Not sure I should comment, but I got the first wave of comments over in the OsX repo. Personally (speaking only for me) there has been a long running cleanup since the CoC was agreed upon, and PRs have been made: 294fcb543e4bf8d8d36832e9071ef0f6b1c9423e 8d9f616511cbb1775e0225b3315f4713135da7f6 6bdefad311a87452b557febd5be33b627775a006 9e2c3bb4b977bb6c5091b63bf6a736466ba25d1a so slowly the repo is being cleaned up to be more inclusive to all. Sure I can no longer say things like "By Odin's beard" but that is ok if more developers feel welcome. (and we got a few thanks for removing religion related words).

Also, I'm supposed to sign a Tethics pledge somewhere?

bghira commented 4 years ago

did you read my comments at all about how your (white male, honestly) actions are NOT making a more inclusive environment for the people you claim to be? "a few" new developers have come onboard. how many have asked for this whole charade to stop?

bghira commented 4 years ago

those comments being cleaned up are, as you could say - reasonable things. they're poorly worded or simply unprofessional comments.

this is fairly different from the term "blacklist" or "whitelist". all I'm asking for is for these changes, when implemented, to be done purely to make code more readable or make comments more accurate.

inter-mixing terms like "deps" and "slaves" because the Linux kernel interfaces are still using "racist" terminology is just confusion. you should use the standard terms.

ahrens commented 4 years ago

mostly, I, and others who I've spoken with, just wish that this problem would stop coming up, here - at all.

Thanks for sharing your perspective, I really appreciate the opportunity to learn.  I recognize that it's part of my privilege to be able to discuss these issues with a minimum of emotional energy, and I appreciate that you've put in the effort to educate me.

 I don't know about you, but a lot of us got into computers to escape whatever issues we had at school or home.

I was privileged to not have that experience, but I do appreciate that others have shared similar experiences to yours.

logging into work email and seeing this (for lack of a better term at the moment) crap in my inbox where I otherwise expect to see ZFS related discussion.. well, it actually put me in an incredibly bad mood. in curating a safe space for people of colour, this action has rekindled some things that (presumably, tbf) more than a handful of us just try to avoid focusing on a daily basis because we have experienced it firsthand.

it's not because I don't want my own cause to advance, it's because there's a time and a place.

I'm open to suggestions if you, or others, want to share your thoughts on a better time and place to make similar changes in the future.

you even said OpenZFS has a tiny effect on this huge problem - in my opinion, let sleeping dogs lie.

there has to be some kind of balance where you're risking literally triggering PTSD by bringing up issues of slavery in an otherwise safe space.

It hadn't occurred to me that bringing up the existence of slavery could trigger PTSD.  I'm very sorry for that, and thank you again for educating me. 

it's a tiny benefit to remove the word from the source code, but a big mess - even a rift, created in the community.the rift isn't between racists and gentiles,

I also assume that nobody involved is racist. 

it's about just wanting to keep that stuff out of here altogether.

Unfortunately, that stuff (e.g. the term "slave") was already in the code and documentation.  I am truly sorry that my attempts to remove it have caused further pain.  In the future, I'll attempt to balance the harm caused by having this language in the project, against the harm caused by removing it.

bghira commented 4 years ago

Unfortunately, that stuff (e.g. the term "slave") was already in the code and documentation

yes, this is what i meant by "let sleeping dogs lie".

words are contextual, really. the existence of master/slave were quite "shocking" to learn when I was 8 years old and setting up systems with IDE storage.. but it's fine, given context.. 22 years later, it became an issue? it looks like trying to find and create problems where there are none. it's really a distraction from a lot of good civil rights work that can and is being done.

the "stuff" i meant to keep out of here is the approach to the implementation of these changes.

in other words.. the PR was proposed "to remove racist terminology". though, when pressed for further justification, behlendorf was able to come up with a technical reason - that the word "dependency" is more in line with upstream documentation and makes the text clearer. it wasn't hard to come up with a technical reason, even if it were done after the fact. but throwing words like "racist" around on a bloody source code issue tracker helps none of us.

the time and place are, right now - somewhere else. where there is actual racism to be fought.

if you want to make change here, ensure you are not creating a rift between people who are already all on your side. i don't see that happening. i see you guys using provocative language in your PRs and closing things down to discussion - because you knew it would be provocative, forcing it along in the name of inclusivity.

then my issue comments was even closed and reopened - we haven't seen some inrush of racists or hateful bigots here, all we've got is a person of colour trying to relate their experience to others of privilege.

and thank you for listening, matt. i know it's hard - a lot of people don't.

ahrens commented 4 years ago

Thank you for sharing.

the PR was proposed "to remove racist terminology"

but throwing words like "racist" around on a bloody source code issue tracker helps none of us.

I'm a confused, because I don't see any of the quoted phrases in my PR's (https://github.com/openzfs/zfs/pull/10435 and https://github.com/openzfs/zfs/pull/10457). Maybe you're referring to PR's opened by other people (https://github.com/openzfs/zfs/pull/10455 or https://github.com/openzfs/zfs/pull/10454), which we closed?

bghira commented 4 years ago

i didn't specify whose PR said what - yours said "slavery" in the title, which is what I meant to reference. instead of "remove references to slavery" which is a bit of a stretch, "renaming variables to be in-line with upstream" does the job just fine with less controversy.

ahrens commented 4 years ago

Thanks for the specific suggestion. I’ll use similar wording for any future PR’s on this subject.

bghira commented 4 years ago

and removing blacklist/whitelist is what I mentioned originally in this PR that makes it seem like POC are thought to be "stupid", that we can't tolerate words like that, and will refuse to become involved as a result.

because that's what all of this is about, right? creating an inclusive and welcoming environment for people of all types? I'm trying to explain here how sometimes letting things remain as they are is better for the project. blacklist and whitelist are commonly understood terms, changing them at this point is just self-gratification, for no real benefits - other than that you get to jump onto the trendy thing that Github and others are pushing this week.

the study that all of this recent blacklist/whitelist hate is based on, from 2018, even reads like it's a parody article: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6148600/

the end of this journal article:

Evidence suggests the use of racially charged terminology such as “blacklist” includes librarians [19, 20, 27, 50]. It is imperative that such vocabulary ceases to be deemed acceptable. Examination of the history of terms such as “blacklist,” combined with the context of a growth in racist discourse, means that this is a real issue and not just a matter for idle academic debate.

oh no, it includes librarians? those crazy book dealers aren't the ones causing unnecessary deaths in the streets with their "blacklists", though.

like George Carlin said a while ago, politically correct speech is clunky - it's a set of linguistic obstacles placed to try and coerce others into following your way of thinking. but as he also said, limiting the words people use has little effect on a problem that goes much deeper.

so the original request remains, to please stop with the unnecessary virtue signalling and grandstanding in the issue tracker.

i encourage you to stand up for whatever cause you want to - where it's appropriate.

bghira commented 4 years ago

image

the irony is that this mentioned slavery so many times since this is brought up.

here it even calls it openzfs:master and your branch has the word slave in it.

bghira commented 4 years ago

there's also this comment: https://www.reddit.com/r/zfs/comments/h0kqij/controversial_zfs_patch_for_removing_references/ftqie56/

I've just had a chat with Matt... We both concluded looking at the code involved, that it wasn't even a true "master/slave" relation to begin with codewise and hence it was more of a dependency all along. This taken into consideration it was a good change, that should've been changed regardless of the master/slave terminology debate.

kinda outlining my point a little bit that the truly unnecessary thing here was all the drama created by provocative "we're taking a stance" PRs.

GregorKopka commented 4 years ago

The following comment on slashdot.org nicely describes my view on the situation:

I strongly suspect the people who are pushing for these things fall into two camps. The first camp are people who genuinely want to control the language, and by proxy, thought. These are very dangerous people and should be resisted at all times. The second camp are people who genuinely want to do something so they can be a part of this current trend and feel like they are participating in a meaningful way. These are ordinary decent people, but are certainly influenced by the bluster and actions of the first camp.

Here's the thing, though. If you're in the second camp, your actions will not save you from the first camp. The authoritarians in the first camp are fundamentally about control, and if you stand in their way, your past actions will mean nothing. Anything less than complete subservience to whatever ideology is currently in vogue in the first camp, is treated as a viral attack and is stamped out with extreme prejudice. Your past capitulation will not serve you in the future.

Nobody--at least nobody with a lick of sense or proportion--actually thinks that changing "master/slave" to something else will accomplish anything of substance or real value. It's nothing more than a publicity stunt to demonstrate that you are not like those people over there, the racists. It's a signal of your adherence to the new narrative, nothing more. The authoritarians in the first camp will acknowledge your signal, and they now know that later you will be more likely to accept the next click on the ratchet. Make no mistake, however; when they ratchet it too far for you, nothing you did in the past will save you.

It's the behavior of cults, and used to great effect at controlling behavior. What's surprising is how many tech people are susceptible to it.

I ask we put this to rest and instead deal with the important matters. Like figuring out how not to piss off existing contributors hard enough for them to make github delete everything they ever did, removing a fair part of the usability of the issue tracker in the process (which as far as I understood it is what has happened to @kpande). Or how to move to (preferably self-hosted) platforms that make such destructive things impossible (or at least able to recover from, would the boxes backing this issue tracker run ZFS and be under control of OpenZFS then what's lost could be recovered from snapshots - it's IMHO a sad joke that this isn't the case) while not taking the data belonging to the OpenZFS project (or contributors to it) hostage out of greed (slack).

Please no more virtue signaling in the hopes of maybe attracting new contributors. Contributors which might very well not exist in the first place as the amount of humans interested and able in the intersection of C, Kernel and Filesystem programming (plus living in a situation that allows for free time to actually spend on that) is somewhat limited. Contributors which, from being able to wield logic (which enables them to program in the first place), will likely have no mental problems at all with the distinction between master/slave describing relations between parts of machinery vs. the same words describing humans committing crimes against humanity.

TL;DR: Please stop destroying the meaning of language, in case you need a further argument about this please consult the late Mr. Carlin, for no good reason but concentrate on what is actually important instead.

stale[bot] commented 3 years ago

This issue has been automatically marked as "stale" because it has not had any activity for a while. It will be closed in 90 days if no further activity occurs. Thank you for your contributions.