153 comments

[ 3.0 ms ] story [ 217 ms ] thread
I invite people to read about the Chinese Cultural Revolution and the so-called Red Guards.

We are getting there. Be very careful what you say and what exact terms you use.

God forbid making concessions for the sake of empathy with people.
I've not met someone upset about the technical term. It's possible, but it doesn't minimize slavery (more than any technical term minimizes something by making it technical), slaves only follow the master.
I think this is a new version of “think of the children” cliché, used to justify lots of questionable things for ages.
Each individual concession seems small but the end result is that one must live life in fear of saying the littlest wrong thing, lest the angry mob come down on you. We're at the point where we can't even talk about any of these issues, only obey the barked orders of angry activists.
(comment deleted)
Replying to an exaggeration by another one is not helping.
Because it’s easier to do a PR removing “slave” than to stop buying cheap things made in slave workshops.
>slave workshops.

It's "unpaid labour" now.

Your boycott won't change anything. Is the only avenue of political change that you can see through the lens of individual consumption?

I genuinely don't see boycotts as powerful as others, so maybe I'm missing something here. However, shouldn't all avenues be taken if you're attempting to change something?

>maybe I'm missing something here

https://en.wikipedia.org/wiki/Boycott#Notable_boycotts

You're right that boycotts without leverage experience little success, but wrong if you think they are never successful.

They only work if there is a power differential in-line with a block of consumers. I don't see ZFS developers as being a large enough block to affect anything, so their suggestion largely seems to be saying, "just do nothing instead."
This is such a hyperbolic response that it’s hard to actually engage with it; I’m not sure that this is helping the conversation at all.
This is not hyperbolic. That is what is extremely sad, and why I picked the topic I did as suggested reading: One important thing is to understand how these things start and get out of hand.

Let's not bury our heads in the sand and refuse to see what is happening.

The reference to the Red Guards is indeed hyperbolic and extremely loaded. You are comparing someone making a technical change to a government sponsored paramilitary organization that murdered thousands of people.

It’s extremely hard to engage with the conversation when your position is that one side, if not stopped, will result in mass scale murder. If I make a good faith argument for this naming change, are you going to accuse me of supporting a proto red band?

I'll let you read about the topic then we can discuss, but do not think that what is happening is as innocuous as a "someone making a technical change". This has already gone far beyond that and we are really already quite close to "public denunciations" or the attacks on statues/the deads, etc. as it happened then.
(comment deleted)
He's right. No fucking engineer is being thrown inside a camp starving to death so yes the comparison is hyperbolic.
Flagging the guy's comments to make then disappear would tend to support the comparison he made, though.
I disagree; I see this as HN responding poorly to the form of the argument, not the substance.

If I were to go around and make comparisons between right wing policies and nazism, I would also expect a rapid downvote into oblivion. Would that downvote prove my point, or would it just show that HN disapproves of my invocation of Godwin?

That's not what I did either in form and in substance.

There is a worrying trend of trying to force changes of vocabulary (not only this one) and to purge history for ideological purposes and we're also seeing people suffering for not embracing that trend or, worse, criticising it (as I wrote this is getting close to "public denunciations").

These are dynamics very similar, albeit not as extreme, to what happened during the Cultural Revolution and other campaigns in the USSR/Eastern Europe during the 20th century.

Fighting racism is a good cause, of course. But arguably so what fighting against feodalism and the exploitation of the working class, and see what happened...

I did not call anyone a "Red Guard", I wrote that the current situation was "getting there", and I think it could, indeed.

If you guys want to censor that comment as well, go ahead, but then please acknowledge where this is going.

It's incredibly convenient we have a Boogeyman de jour to compare everything to. I don't quite know how the most reactionary elements of our crumbling society would vent otherwise. If history teaches us anything, it would be: violently.

How else could we possibly look at the current cultural moment? Self-critically? No, never, not when we can engage in orientalism and rebuild a red scare.

I wonder if the British were this terrified of being bumped out of the #1 slot. Maybe the Dutch would be a more apt comparison.

More importantly, these recent events are being likened to the Chinese cultural revolution _by Chinese people who lived through it._ That should give you enough of a signal to understand that this is not necessarily benign and in anybody’s best interest.

I think the reason we use master and slave is simply that the words are short, equal length in both letters and syllables, and get the message across — cf leader/follower or primary/replica. I guess the last one is ok too.

Racism and inequality should be fought where possible. Variable naming is simply not such a place. Blacks will not be less repressed, women will not be less mistreated.

Slave is one syllable, master is two.
That’s true, slave is one. I guess my lazy counting vowel-consonant transitions is a bit of a bad heuristic in English. I personally blame the French.
(comment deleted)
Same thing with eastern european communism.
It really feels like we're entering a new dark age. One without context, nuance, or wisdom.

I can only hope we find a way to resolve our differences before our cultural cold war becomes a hot one.

Here's what I understand about the Cultural Revolution and the Red Guards:

- The Cultural Revolution was organized by Chairman Mao, the leader of a single-party state. The Red Guards were personally supported by him. Both were official government policy and could not be opposed.

- The goal was to attack people in power who were perceived as reactionary / "revisionist" and remove them from power, by violence if necessary.

- The Cultural Revolution had, as a goal, the destruction of remnants of pre-communist history. The Red Guards attacked historical artifacts and cultural sites so that there was no memory of them.

- Hundreds of thousands if not millions of people were killed.

Here's my understanding of this pull request:

- It was not ordered by any government. The current leader and current ruling party of the government under which the people involved in this pull request live are not aware of it or even the larger movement of similar pull requests / discussions, and if they were made aware of it, they'd almost certainly object.

- It was done by the ZFS contributors themselves, not by outsiders. Nobody tried to remove existing people in power from that power, certainly not violently.

- No attempt is made to erase history. History is right there in "git log." The pull request accurately points out that a change is being made, what the change is, and why. Older versions of ZFS remain published with the old terminology.

- Nobody is dying. Nobody involved has a weapon more dangerous than "git reset --hard," and they'll only hurt themselves with that one anyway.

I agree with you that we should be wary of government-imposed revolutionary fervor that seeks to destroy political opposition. I think, however, that if people involved a project have made up their minds freely about some topic and want to make some change, the way we should to guard against the dangers of things like the Cultural Revolution would be to encourage people to take actions they've decided upon in the places where they already have power, to encourage them to think for themselves, and to not try to portray folks with some very meager but nonzero power (like village mayors or ZFS maintainers) as dangerous threats to all that is good in the world who must be stopped by outsiders.

This view is also common in Chinese social media:

"One notable article, written by an immigrant in direct response to Huang’s letter, went further, accusing elite American educational institutions of 'brainwashing' the country’s youth and turning them into 'extreme leftists' who only care about identity politics. This view is common on Chinese social media, where users compare protestors and leftist young people with Cultural Revolution-era Red Guards."

Is Linux going to be next?

Let's ask Mr Torvalds nicely to remove all master / slave references in the Linux kernel because it is 'offensive'. /s

I don't think such a request is practical given the kLOCs of those references which will break other software.

My general take has been that we should probably avoid these terms moving forward, but that the technical cost of going through nearly a century’s worth of technical stack and fixing every last reference is probably a pretty technically risky operation.
Technically risky yes but worth it. Inconsistencies in naming make code horrible to work with.
Perfect reason to leave the terminology as it is.
Well, the use of "master"/"slave" in the PTY layer is technically inaccurate - they are two ends of a connection to a single object, over which the "master" and "slave" both have control - and there are certain operations that the "slave" can do that the "master" can't. The whole system would be less confusing if these entities had clearer names, and there's also no binary interface that uses the terms.
Because anything using the word master must exclusively imply a slave. What about master/apprentice? Maybe the naming of stuff isn't the problem but the lenses that people view things through that distort reality into some stereotype? The glass doesn't have to be half empty. There are infinite colours between black and white. Racism is a behaviour of people and people's behaviour is governed by how they view the world around them.

I've been using git for a long time and this is the first time I have ever considered any sort of racial connection to the naming of the master branch. Last I checked master has more than one definition in the dictionary - which by the way might actually be something worth reading instead of pointlessly causing drama for the sake of marketing. Because let's face it - Microsoft didn't just pull this stunt because they decided to be noble.

Meanwhile searching for the term "kill" returns 75 code results in openzfs/zfs.
Well, there's nothing discriminatory about killing. We kill everyone eventually!
Slavery is not exclusive to black people either.
Your right, it's insensitive to every people group that's been enslaved for any period of time. Yet somehow that doesn't encompass all people groups in the same way that kill does. Maybe we should be considerate of all peoples/individuals who have experienced slavery directly or in their ancestry.

My Swiftian Proposal: lets just remain all uses of the word "slave" to "forcedChildLaborer". It's more accurate anyway, since in software a "slave" is usually "born" into the role and often times doesn't live very long. We are striving for accuracy after all, right?

And for my two cents that will inflame this even more: We should considering deprecating the use of "kill" to signify terminate. I haven't used it in my 15+ years of writing software professionally and no one has impugned my code quality for not using "kill" enough.

In the terminal it isn't all that rare to talk about killing children, sometimes even immediately after spawning. It might be a cultural warning on how an uncontrolled child, separated from its parent, could easily become a zombie. Not sure.
discrimination: bad; killing: not a problem?

Edit: I'm not being snarky. I truly don't understand this distinction.

We're witnessing mass insanity on levels never thought possible.
Some people just have too much time on their hands. And it doesn't help that media is spreading this, as it generates clicks which in turn generates money. As such, total non-issues will be made an issue.

The thing is, it's not even "mass" insanity. Working people who are busy with a family and such don't really post on social media, as they simply have no time. This creates a pretty large divide between the internet and real life. Though, I say this as someone not being part of the tech world which is more closely connected with social media.

Invest in entry level jobs for poor communities and education resources? Nah.

Fuck up software by changing names uses for decades? Perfect!

These people are literally children.

Unsurprising that HN can't manage better than the level of pearl-clutching by people invested in maintaining "master/slave terminology" as its discourse.
1984 is slowly becoming a reality. Great work comrades!
What part of it specifically?
(comment deleted)
Newspeak removes terms from language so that certain ideas cannot be expressed.

This pull request does concern language, yes. But it retains the use of the term "slave" in existing APIs, while updating a script that is named "slaves" to use the term "deps," a term that is already used elsewhere in the API. At the end of the pull request, both terms remain meaningful. Furthermore, no attempt is made to hide previous use of the term - or to prevent using the term "slave" to refer to human slavery.

So I'm not sure I see the comparison.

The title right now: 'ZFS Removes References to Slavery'. Probably 95% of the commenters have not read TFA in sufficient detail to argue minutiae details. They see 'language changed in support of the dominant political current' and link it to Newspeak because that's the only frame of reference most people are aware of. It's not like it's an isolated incident, there is plenty of language redefinition, history rewriting and statues toppling as we speak.
> Probably 95% of the commenters have not read TFA in sufficient detail to argue minutiae details. They see 'language changed in support of the dominant political current' and link it to Newspeak

That might be the first Orwellian thing in this thread - people see a thing they've been told is bad and done by bad people and they need to get their Two Minutes Hate out, and they don't have the intellectual curiosity to spend those two minutes figuring out what's actually happening. (Actually, maybe there's a bit of Brave New World in there too.)

> there is plenty of language redefinition, history rewriting and statues toppling as we speak.

Give me specific examples, and we can talk about whether this is 1984 or not.

(I'm aware of some statues being toppled over the last couple of weeks that were originally put in place by people who wanted to rewrite history - and the act of toppling those statues has caused much more public discussion about the subjects of their statues and their true history than the statues themselves ever did. That hardly seems like 1984 to me. I'm not sure what you mean by language redefinition and history rewriting, otherwise.)

(comment deleted)
Not to mention the compelled speech in Canada, in regards to gender pronouns.
This is a legal hypothetical advocated by Jordan Peterson and not actually ever demonstrated in reality / tested in court / etc., right? (That is, neither Peterson nor anyone else has said that they were compelled to speak in a certain way and there are no legal proceedings against anyone who has refused to speak in a certain way, right?)
It's not even a hypothetical. Peterson just completely misrepresented the law and actual lawyers have said that all of his claims were nonsense.
It's not the "dominant political current'. This is a ripple cause by loudmouths. The dominant current is moving in the direction of actually getting work done.
The comparison is apt IMO, as per Wikipedia pages linked to:

"To meet the ideological requirements of English Socialism (Ingsoc) in Oceania, the ruling Party created Newspeak,[1] a controlled language of simplified grammar and restricted vocabulary, meant to limit the freedom of thought—personal identity, self-expression, free will—that threatens the ideology of the régime of Big Brother and the Party, who have criminalised such concepts into thoughtcrime as contradictions of Ingsoc orthodoxy."

In what way does this pull request "limit the freedom of thought—personal identity, self-expression, free will"?
Feels like you've never really read that book.
According to some people, the term "binary" should be banned too...
I created an automated tool to deploy and provision Hadoop YARN cluster at work. I’m so glad that I named the non-master hosts “core” nodes instead of slave node :) or I would have to change the naming convention now. I still have the “master” node though.
In this sense master and slave is the correct term.

You have a master with unidirectional control over the slaves.

Just like in IDE drivers of old.

I think this is a good thing. I'm not a fan of removing the master name, because master has more meanings than in the slavery context and its other meanings fit well the metaphor of master in IT. But they have not removed the master term. Only the slave term, which can go away. I will not miss it, it always felt weird to use this metaphor.
Why should we ban the word "slave"; aren't there more people living in slavery now, than ever before in history? Seems like if anything we should be raising awareness about that, not hiding it literally.
This is exactly the problem with "censorship". It merely hides reality. Why is transparency not better in most situations?
It's not about banning the word slave, we need this word, but the term slave in IT that is not necessary.
Then why are IT professionals so eager to hide that word from themselves, when there are more people living in slavery now than ever before?
I find the name “main” or “develop” to be much more clear branch names than “master”.
Can these project changing words at least agree on a single word to use? We're going to have 10s of different words representing the same thing that for decades of evolving technology was known as slave. It will make it confusing and difficult to move between technologies.
We already do to some degree: follower, replica, secondary, etc
All of these seem quite a bit worse than slave to be honest. Why not use server/client instead?

Edit: another post in this thread suggested master and puppet, I think that this is a cute yet clear variant.

I wasn't saying they were worse. I was replying to a concern that we will end up with multiple names that mean the same thing. I mean, this is modern technology...it seems like only the hardware guys can manage consistent naming, and even that is slipping. On the software side? I can only think of rare things which don't have a half dozen synonyms.
> I wasn't saying they were worse

I.. know? I would not say that they are worse if you had said it yourself after all.

That's the funny thing - in almost all contexts I've seen the "master/slave" terminology, it's not actually technically clear.

In some contexts (e.g. Jenkins), a "master" tells the "slave" what to do and the "slave" does it. This at least is plausibly connected to the real-world meanings of the term, although given that the "slave" can start and stop work at any time and the "master" needs to accommodate that, the analogy isn't great. "Coordinator/worker" works well here.

In some contexts (e.g., MySQL), a "master" sends a copy of all its work to the "slave," and both of them execute it. The "slave" stands ready to replace the "master" if the "master" becomes unavailable, and usually at that point the "master" becomes the new "slave" once it catches up. This makes no sense. "Primary/replica" works well here.

In some contexts (e.g., network device bonding, and, I think, ZFS), a "master" is a logical construct, consisting of multiple physical "slaves". All interactions with the "master" are actually algorithmically sent to one or more "slaves," and if all the "slaves" are offline, there's no "master" left. This, also, makes no sense. Terms that would make sense include things like "bond device/bonded member" (the members being bonded to each other), "logical volume/physical volume", etc. In this pull request they seem to use "dependency."

In some contexts (e.g. disk drives), the "master" and "slave" are both devices that provide the same type of service to the host, but the "slave" connects to the "master" instead of directly to the host, and while the "master" is communicating, the "slave" can't. This, also, makes no sense. "Primary/secondary" works well here.

In pseudoterminals, the "master" is a limited API to the PTY object, held by the terminal emulator, which copies text to the screen, interpreters rendering commands, and sends input. The "slave" is a more featureful API to the same PTY object, held by the shell / the command under execution, which does what it wants. This, also, makes no sense. I don't know of a standard term here, but I'd sort of suggest "monitor" and "application" (or perhaps "monitor" and "session" if you want to keep the initials).

All of these are different uses, and you can't generally map one to another. For instance, if you're used to a database where "master/slave" is used in the primary/replica sense, and you see a database where the "master" just coordinates requests for work and all actual data is sent to/from some "slave," your knowledge of primary/replica architecture is misleading here.

> [Jenkins] "Coordinator/worker" works well here.

Agreed, although my mind immediately went to "manager" and how that is one of the most useless names. See e.g. https://stackoverflow.com/questions/1866794. Need to be careful with this type of naming.

> [MySQL] "Primary/replica" works well here.

Agreed.

> [ZFS] Terms that would make sense include things like "bond device/bonded member" (the members being bonded to each other), "logical volume/physical volume", etc. In this pull request they seem to use "dependency."

These names more than double number of syllables/characters, which will severely hamper adoption. I find "dependency" to be a bad descriptor for individual components fully making up a whole, but I expect that the ZFS people deliberated over that name and that my extremely limited familiarity with the topic(s) is the reason why I find "dependency" weird.

> [disk drives] "Primary/secondary" works well here.

Agreed.

> [pseudoterminals] I don't know of a standard term here, but I'd sort of suggest "monitor" and "application" (or perhaps "monitor" and "session" if you want to keep the initials).

I would strongly discourage overloading the meaning of "monitor" in the context of terminals. Otherwise, you all but guarantee confusion.

For bonding devices I usually say "bond" and "member" at work, or things like "I added eth4 to bond0," which seems at least as clear as "I enslaved eth4 to bond0". For disks I usually write and say "LV" and "PV" for LVM and "LD" and "PD" for MegaRAID, which matches what the respective CLIs use.

Re terminals, it's the end that's connected to the monitor (or terminal emulator), just like the other end is connected to the application/session. There aren't two actual pseudoterminals in any sense, just two views of the same thing, so the idea of "the pty master"/"the pty slave" doesn't quite make sense unless you're very careful to realize you're talking about the open FD and not the actual thing. I'd probably say something like "the monitor end" and "the session end" (and continue to abbreviate them as "ptm"/"pts").

Thank you for the most substantive post in the thread.
Nothing to see here except devs covering their asses from accusations. As a PoC, I recognize that actions like this do nothing to change the system and they are really just diversions from actually putting in effort to make a real impact.
(non-rhetorically) I wonder if actions like this are more harmful or beneficial. On one hand, they raise awareness, but on the other, they're just token gestures, and they might cause debate that'd be better spent on something for meaningful.
It's the kind of token gesture that actually just makes people more skeptical or angry at PoC who most of the time had nothing to do with the gesture.
I doubt that’s specific to these kinds of efforts; it seems that any advance for PoC in America draws a significant backlash, whether or not the advance was substantive or symbolic.
(comment deleted)
So ridiculous and over the top. Shut up.
I don't know if deps is the best replacement. Ignoring the politics for a moment, iff this is going to be done across the board I think a naming convention needs to be well thought out and developed to replace these terms. We will no doubt be left with the resulting terms for a very long time. Intuitive and descriptive names go a long way to lowering the mental overhead of working with code.
This I think is the key issue, replacing a clear label with half a dozen almost synonyms is the dangerous part of this precedent.
The fact that you think so is incredibly telling.
Ok NOW I’m ready to string you up lol
I’m taking down names for after the revolution. You’re on it :)
Let's rewrite complete CS papers and replace master/slave with master/"dependent (underlying)". In distributed systems, slaves can be independent in some cases, what then?

Let's rewrite complete UNIX history and remove kill, cut, wc, finger, touch, mount, umount, git, nano, pico... because someone can find the context offending.

Even better, let's dump words and use APL or hex/binary for communication. But, what if 1 or 0 offend someone?

/s

The Julia community also does not use slave and actively encourages the use of that term in community chat. I am not sure how i feel about that. I am not made uncomfortable by that term but i can't judge whether others might be. So i can only ask, what does that term do for me? Nothing but i guess i can convince my brain to think "worker" instead "slave".
Why are there so few black ppl in tech? Bc they won’t commit to master
Yeah, get rid of “slave”. The “master” thing I think is easy to remove too, so might as well, but I don’t think it’s nearly as bad. Think of all the things that are way more closely associated with “master”: MasterClass, masterpiece, Jedi Master, master craftsman, mastery, etc. I don’t think it’s necessary to get rid of all those terms.
Is removing references to slavery actually being PC or preventing from being reminded of dark time in American history in any way?
I will try to avoid controversy here and word this carefully: I can't help but think that something is wrong in the minds of people who take offense at something like this. If in the context of programming and system administration, the term master/slave is 'offensive' and makes you think of racism, and one group of people being oppressed by another, your mind seems to make some completely different connections from mine.

Maybe I am not fine-tuned into 'spotting' such things, which is the argument I would expect; but maybe some just have developed a sensitivity far beyond any reasonable amount in taking offense, which is my suspicion. How about we talk about meaningful ways to stop racism, which we can all agree is bad and unwarranted, jumping into action blindly might feel like you are doing something, but what exactly is this doing?

I am very annoyed by such blindly executed and in my opinion unwarranted activism, and as soon as one speaks out against, one has to hide from the incoming attacks. So I guess HR departments have to check naming conventions in programs now for misogyny / politically non-correct / possibly racist terminology before release?

By the way: I actually always thought of master / slave as completely racially independent terminology in general? If in a book a white man were enslaved by some Asian tribe, how would master/slave terminology be non-correct in describing the participants?

It's not 'activism', not even 'slacktivism', it's all about control and bullying, even over the most minute of 'spotting' such things.
This pull request is being sent in by one of the people who originally developed ZFS at Sun. Who is being bullied here?
This is such a terrible take!

> So I guess HR departments have to check naming conventions in programs now for misogyny / politically non-correct / possibly racist terminology before release?

Of course. Why is that a question?

>If in a book a white man were enslaved by some Asian tribe, how would master/slave terminology be non-correct in describing the participants?

Edit:

xxxYes absolutelyxxx

The terminology would be correct. But that's fiction. This is real life with real consequences. The reason it's being removed here is because it's ignorant and disrespectful.

> > If in a book a white man were enslaved by some Asian tribe, how would master/slave terminology be non-correct in describing the participants?

> Yes absolutely

Ehh what?

This seems to me to miss the point.

I genuinely doubt that many people are offended at master/slave terminology. I personally am not offended, yet I would prefer if we did not use such terms.

Why? Because words matter, and I recognize that where we decide to move terms into every day parlance has an impact on how people think. This after all is the basis of some groups trying to “reclaim” a word by trivializing it’s usage.

As a thought experiment imagine if we got into the habit of naming services or concepts after the Holocaust. How do you think that the casual, daily reference to that event in a different context would affect our perceptions of the 20th century genocide? Would it make us treat the Holocaust more casually? Now imagine how you’d feel if German companies started using that term casually. Kind of icky, right?

That being said, I don’t think that anyone who doesn’t want to go to the trouble to replace every instance of these words going forward is a racist, nor should we tolerate such abuse from a crowd that’s nominally supposed to be doing the right thing. We can advocate for well-meaning changes without being jerks, I hope.

Personally I plan on just using new terms going forward, but I won’t go back and rename every single thing I’ve ever written.

Also, master/slave really isn’t racially independent in America. Slavery is an institution that has cropped up in many places at many times; but here in America slavery refers specifically to the form of chattel slavery that occurred here, and therefore does carry more than a hint of racial overtones.

Thank you for this well written non-inflammatory response, I really appreciate it. I can see your point, but I guess we just have a different idea 'how high' sensitivity should be.

Obviously you don't name something in programming 'pimp' / 'bitch', or even more extreme I suppose: 'white_guard' / 'n_____', that's obviously childish, unwarranted, and just for the sake of provocation. Like I've said though I think of 'master/slave' as perfectly fine descriptions regarding their function and I have always thought of them as racially neutral terms, and if you want to change long-standing naming convention there should be a case for it. And I just think it isn't there.

By the way: For the very first time in my life, a few days ago, have I ever thought of 'whitelist'/'blacklist' in terms of skin color.

white vs black, bright vs dark, , "shining bright light" vs "tempted by darkness", etc, it was almost a Eureka moment: "How can people think of skin color there?"

That makes me think that people are spurted into activism, blindly 'looking for problems', and once you start looking it's easy to see it everywhere. We are pattern seeking animals - if I believe in conspiracy theories, I will over evaluate whatever confirms my beliefs - and I honestly think the same happens in cases of people who take social justice too far (thinking of 'master/slave' as inappropriate naming conventions in programming after decades of use) ; (and I hope it's unnecessary to add: I am not denying the reality of racism ; just trying to doubt the usefulness and legitimacy of taking the sensitivity into far off areas and to a degree that is unwarranted)

I guess I am just emotionally detached from this as can be, as someone who doesn't follow daily news, and is not an American. It's weird for me to accept:

'why can't I use master/slave anymore?'

'because a black man was murdered by police in a country across the Atlantic, and now they are looking to prune any mention of slavery from everywhere they can find it'

'what?'

You can't clean up the language to a point of where 'no one' is offended. Master/Slave seems like such a low level of 'potential for controversy' to me, that I am really worried about 'if that one isn't acceptable after decades of use anymore, what next'

So what’s interesting to me here is that you note that some names are inappropriate to use, because of the cultural context surrounding them:

> Obviously you don't name something in programming 'pimp' / 'bitch', or even more extreme I suppose: 'white_guard' / 'n_____', that's obviously childish, unwarranted, and just for the sake of provocation.

These are all words with literal meanings that could theoretically apply to some aspect of some system. But you admit that these words are inappropriate to use, presumably because of the additional connotation and cultural context that comes along with them.

Is it so difficult to imagine that other words, words that you do not personally have the cultural context to find offensive, could feel the same way to other people who have lived through different experiences?

I am glad that you realized that it’s theoretically possible that the bias in our language of associating blackness with evil or badness might be something that affects people. I think it’s easy to say something like, “oh it’s never been about skin color, don’t be so touchy” when you’ve never had that language constantly around you while society is also actively telling you that you are worth less because you are black. But if you’re a black child being bullied in school for your skin color, that language might take on shades of meaning that seem much more sinister.

It's not at all difficult to assume that something is offensive to someone, but not to me. It's extremely easy that for any different person, different phrases are considered offensive. But the solution of 'let's create a world where nothing is offensive anymore' seems ludicrous.

I don't think there is a racial bias in associating blackness w/ evil or 'whiteness' with good, I rather think it has to do with night/darkness vs day/light. Do you think 'red' as a widely used 'warning light' somehow relates to 'native Americans'?

Like I've said, I never thought of it in terms of race ; once you start actively believing that biases are EVERYWHERE, you will see them everywhere, automatically. And I think for one, that this is an extremely obsessive way to live, and also a battle one can never ever win, and the question 'where does your quest for justice stop', is warranted.

I always thought there was a 'common sense' approach, pruning any mention of 'slave' as terminology in programming / system administration after decades of use for me seems to be extremely far away from it.

Whatever happens w/ naming conventions here, I will eventually adapt. But I seriously fear that this quest for justice, especially in 'language' goes far beyond common sense and is about actively looking for problems, that are none until identified.

> I don't think there is a racial bias in associating blackness w/ evil or 'whiteness' with good, I rather think it has to do with night/darkness vs day/light. Do you think 'red' as a widely used 'warning light' somehow relates to 'native Americans'?

I think maybe I didn’t make my point clear here. I don’t think that in these particular examples there exists racial bias in the language. The language (most languages) is biased (but not racially) towards associating darkness with evil and light with good. If you personally are experiencing racial bias due to having darker skin, I think language like this can feel very different than it would otherwise, even if the language itself is not explicitly racially biased. I’m not saying we should abandon the whole light/dark evil/good dichotomy, but just pointing out that things built in to the culture that aren’t technically related to race in any way may feel very different if you’re on the “good” side than if you’re on the “bad” side.

> It's not at all difficult to assume that something is offensive to someone, but not to me. It's extremely easy that for any different person, different phrases are considered offensive. But the solution of 'let's create a world where nothing is offensive anymore' seems ludicrous.

I agree that it seems impossible to avoid offending every individual. But, when it’s so easy to avoid using language that has negative connotations for a significant portion of the population, why shouldn’t we? Why cling so tightly to not being kind, out of some kind of slippery-slope assumption that if we give ground and have empathy this once, the word will end?

It’s really odd to me how offended people get by the suggestion that there might be something offensive about the language they use. I have no ties to the words I use. If I want to be friends with someone or to include them in what I’m doing, and they have a problem with some word I use because of some context that I haven’t experienced, it does me no harm to use a different word.

> I always thought there was a 'common sense' approach, pruning any mention of 'slave' as terminology in programming / system administration after decades of use for me seems to be extremely far away from it.

Here I think you’re taking offense at a situation that doesn’t exist. What I’ve seen is people trying to avoid perpetuating the problem by not adding new instances of the world slave to new code/systems, or making updates to use different language when it’s convenient and someone’s already touching the code. These actions hardly seem to me to be pruning any mention of the term from decades’ worth of software.

Language, it’s important to remember, is descriptive, not prescriptive. It is always changing along with society and culture. It’s therefore natural that what is considered acceptable or not is going to change over time, and we’ve always had to deal with this as a society. Look at people wanting to ban books for using words that have become offensive, as an example. The interesting thing about software, as opposed to books or words engraved in stone on monuments, is that it’s often very easy to change the words that are used, because software isn’t a historical artifact but a living thing. And as a living thing, people are going to want it to reflect their own current societal norms. So changes like this seem an inevitable part of a long-lived industry that creates such mutable products.

Regardless, it hardly seems worth getting so worked up over someone else choosing to make this decision in the codebase that they maintain. It is their right as maintainers to do so, and if you disagree so strongly with them making this small token of empathy, you can of course choose to use another filesystem.

I am too tired to de-construct this in full, just a few short points:

- It's about where the goal post is. Let's not forget what the original discussion is about. You invoke a lot of 'emotional imagery' ('why not be kind'), we are talking about long standing naming conventions that can be thought of as being non-racial and no one had a problem with 2 months or 2 years ago, now becoming a problem because people think they are doing something positive here, while it's not addressing ANY problem regarding racism at all ...

- software is both, living and artifact - we are not talking about a new program written in 2020 using some weirdly offensive and arcane naming conventions, we are talking about retroactively updating naming conventions in programs. Regarding societal norms we always play catch up, should I vet my code once a week to check if it is still conforming to PC-culture?

- software is a technical thing, we programmers like to think of it as non-political ; like I've said multiple times I think already: when I read source code thinking about racism is so far off my radar, that it's insane to see 'master' and 'slave' and think of it (for me, at least). Which also ties in with the point I tried to make, that some people are so ingrained in their social justice war, that I think they just see 'racism' and 'bias' EVERYWHERE.

- a lot of people feel 'pressured' into complying with what they regard to be ridiculous changes (when it comes to technical merit) because there is a certain amount of people who view non-compliance with whatever their current crusade is about as 'unkind' - if you think me using master/slave terminology has something to do with the topic of racism in the United States, I refuse to make that connection I guess.

- ultimately: it's probably more about people patting themselves on the back, for having done something, and for having changed nothing - and I deeply resent that. In other words: blind activism at its best.

good to see i'm not the only one, i had the exact same epiphany about the whitelist/blacklist thing a few weeks ago.
Honestly, I think that a lot of the confusion is going to come down to the fact that you're not an American who is getting dragged into socio political issues that are largely centered on America and American society. That is going to be extremely confusing for you, but understand that most of this discussion is by Americans to other Americans.

> Like I've said though I think of 'master/slave' as perfectly fine descriptions regarding their function

I disagree with this. Master/Slave is in fact a pretty terrible description of most of these systems, and appears to have been shoe horned in.

In most master/slave systems the master does all of the work, and the slave nodes exist either for duplicate read capacity, or as a hot standby in case the master fails. This is not the way that historical masters and slaves interacted, to say the least. I believe that "primary/secondary" or "primary/standby" is actually a much better description of the actual function of these systems.

> white vs black, bright vs dark, , "shining bright light" vs "tempted by darkness", etc, it was almost a Eureka moment: "How can people think of skin color there?"

Some of those are tricky, because lightness and darkness is also a good faith description of how human vision works.

But who would see black and white as a description of skin color? Pretty much every American. There is some nuance to terms like whitelist and blacklist (that I have not yet made up my mind on, btw), but when it comes to naked terms like "black" and "white", that is exactly how Americans refer to each other's skin color.

Maybe it's different in your culture. Again, a lot of the people discussing these things are Americans talking to other Americans.

> 'because a black man was murdered by police in a country across the Atlantic, and now they are looking to prune any mention of slavery from everywhere they can find it'

That is a pretty poor explanation of the phenomena at hand. A better description would be "a murder of a black man triggered massive social upheaval and a society wide moment of soul searching about the nation's history both of slavery and poor post-slavery treatment of black Americans. This change has included everything from significant reversals in opinions on policing, the Black Lives Matter movement, the naming of military bases, public display of confederate monuments and flags, all the way down to an investigation of the use of language in software engineering."

The discussion around the use of terms in software isn't because "a black man was murdered", it is because America is experiencing massive social shifts around how we treat race in America. A discussion of how we name pieces of software is probably the absolutely smallest portion of a massive change.

"a lot of the confusion is going to come down to the fact that you're not an American who is getting dragged into socio political issues"

That's partly my point though. That if you are bombarded with 'racism' as a topic daily, and want to do something about it, you are tempted to do something, at least something, and once you are actively looking for problems, you will find them. Once you are convinced that it's everywhere and has to go, there is next to no limit where your quest might lead you. It having lead to this right here is the perfect example.

'Master/Slave is in fact a pretty terrible description'

'primary/secondary' is nice, master/slave is just extremely ingrained, let's agree on that, so you know what is meant by it. I deeply hope we won't have 500 various naming conventions for what used to be called master/slave.

"But who would see black and white as a description of skin color? Pretty much every American."

Then let's discuss THE CAUSE FOR THIS. Because it's wrong, it's wrong to invoke race everywhere those two colors are mentioned in some specific context. Is renaming everything maybe just putting a shade over something that Americans should confront themselves with more honestly, more deeply, because I know via my upbringing, that I never would have thought about whitelist/blacklist as skin color, it would have been so far away from my radar... maybe you think renaming master/slave here will somehow have a ripple effect, or is part of something bigger and a warranted change. I think it will do exactly nothing, and is just blind activism that breaks decades of convention.

'That is a pretty poor explanation of the phenomena at hand.'

I was over simplifying on purpose, because what I wanted to portray was 'someone outside of it' I guess.

'software is probably the absolutely smallest portion of a massive change.'

I think it's just something to make people feel better, 'we've done something about it now', it's the 'smallest portion' of massive change, it's also the most non-impactful, which is why I find the case for it to be weak.

(comment deleted)
(comment deleted)
Obviously, all of you bitching and moaning about your precious master / slave terminology are the most triggered. If you can't handle a name change, then software is absolutely not the career for you.
Look, I think if you propose a change to a long-standing naming convention it's you who should make the case, and I find the case to be weak. I don't think calling it 'bitching and moaning' is warranted. And if all code ends up not using that terminology I will adapt and move on, not sure what else you think I would be doing.
wtf? You people created a problem that didn't exist before, and now you're attacking people for not caring about a non-problem? The origin of the work "master" is not "oppression" and "slavery", it's simply "control" or "authority". If you don't understand this, and if you think that others should care because you are offended by a non-existent problem that you have created, then software is absolutely not the career for you. What comes next after "master"? Binary? Admin? Terminal? Kill? Server? Abort?
(comment deleted)
Why haven't the prehistoric computer people choose something else. I like 'master' and 'puppet'. Totally non-offensive and very close to the metal
I think a better is master-follower if they really must.

But this is silly, I totally understand for PostgreSQL change from master-slave to master-standby. Standby is actually much better word to describe node's function.

The change for the sake of word being offensive is just plain stupid. The use of it did not really encourage slavery based on race. So it feels less about offending then being reminded about horrible American's history.

If they want to go all PC, what about use of word "kill"[1]?

[1] https://github.com/openzfs/zfs/search?q=kill&unscoped_q=kill

I knew there would be these petty comments in here. For people who in general work in such an intellectual and ephemeral pursuit there is so much pathetic clinging to meaningless terms. The computer does not care. It's only the human beings in the community that do.

And it's our choice whether to be neutral and inclusive or miserly trolls clinging to meaningless out of date terms coined in times when these weren't considerations. Rise above it. Embrace other people's experiences that maybe you have not had and have no idea about. Just appreciate that it may have happened to someone and not you and you do not have to reject them by posting a petty comment. Call it Big Cantaloupe / Little Cantaloupe. It doesn't matter. At least then nobody would be reminded of a murdered ancestor or the nature of the person who named it when all they wanted to do was use a stupid file system.

Don't be a dick. Be nice. x

> Don't be a dick. Be nice. x

The irony here is that the discourse of people from your camp is usually non-inclusive.

I think that maybe this falls under the paradox of tolerance (https://en.wikipedia.org/wiki/Paradox_of_tolerance)
I think that you are right. It seems that a tolerant society attracts intolerant (both far left and far right) elements that want to restrict the freedom of speech. It is similar to the reason that GPL is prefered by some - by restricting some freedoms you defend the others. Similarly I think that it would make sense to restrict the freedom of speech of these that want to eliminate it.
A lot of language has unsavoury roots. We should recognise it and learn from it, fighting with the language feels like putting so much effort into minor things.

I’d much rather people spent the time and energy teaching underprivileged kids some coding, for instance.

Sure, let's completely modify our environment so that the first-world sensitive twats that can't deal with words don't feel threatened, better yet, let's outright ban words that describe anything that is remotely related with dominance, because that is unsensitive and "non-inclusive" with those whom their ancestors were oppresed at any point in the past 5000 years
"meaningless terms" - It's also our choice to avoid working with those who exhibit theatrical intolerance and objection to such "meaningless terms". "Embrace other people's experiences" such as what? How many in the IT field have experience as a master or slave (other than kinks)? None.

Pointless changing of words because of "feelings" is why the majority is laughing at you behind your back. If there is something you want to change, go for something with meaning. Stupid things like this illustrate that there is no issue and you need to make up problems because there are none.

(comment deleted)