
Linus Torvalds banishes masters, slaves and blacklists from the Linux kernel - Alupis
https://www.theregister.com/2020/07/13/linux_adopts_inclusive_language/
======
MindGods
See the lively discussion from about a day ago:

[https://news.ycombinator.com/item?id=23810780](https://news.ycombinator.com/item?id=23810780)

~~~
ThrowawayR2
Also discussed at
[https://news.ycombinator.com/item?id=23819763](https://news.ycombinator.com/item?id=23819763)

It's a pity there's no duplicate article button so that mods can be alerted to
mark articles as such or merge the discussion.

------
chillacy
> Blacklists are to become either “denylists” or “blocklists” and whitelists
> will become “allowlists” or “passlists”.

I'm glad they chose allow/denylist instead of another often proposed
redlist/greenlist. From a language learning point of view it's much more clear
than having to figure out the local customs on how colors map to concepts.
(e.g. a red market in asia = stocks went up, green = stocks went down)

~~~
robbrown451
I'm fine with his choices, but the meaning of red and green as stop and go has
become quite universal. Is there anywhere in the world that doesn't have
traffic lights? (ok, anywhere in the world that you'd be likely to see a linux
device)

I see it regularly extended to such things as "accept" vs "decline" on phone
screens when a call comes in.

Applying those colors to stock market charts is not a particularly natural
extension of the concept, though. Although I'd pick green as "up", still, it
isn't as direct as something like allow/pass or deny/block. Those fall well
into red light / green light territory to me.

~~~
chillacy
Maybe not directly related but some traffic lights in japan are more what we'd
call blue than green [https://www.mentalfloss.com/article/515205/why-does-
japan-ha...](https://www.mentalfloss.com/article/515205/why-does-japan-have-
blue-traffic-lights-instead-green)

At the end of the day why bother with another quirky cultural color-meaning-
pair when there's something so literal available? I want to avoid re-learning
terms when we meet aliens who happen to perceive colors in our visible
spectrum ;)

~~~
robbrown451
Of course, for a Japanese person coding in English that's the least of their
problems....

I'll admit the benefits of color-coding things are less if you are using words
as opposed to actual colors, but I still think an argument could be made for
using green and red, since deny/block and allow/pass seem a bit too closely
tied to a specific expected action. I could imagine uses of the terms in the
future (not necessarily in linux code) where those descriptors don't quite
work, but where the colors names communicate the concept in a more general
way.

It reminds me of the issue with the idea of calling black people "African
Americans." It wasn't all that well thought through, because it is overly
specific and doesn't work for, say, a black person who never lived in America.

~~~
chillacy
I'm a native english speaker but trying to learn other languages (and speaking
with english learners) has given me a new appreciation for simplicity for ease
of learning. For something which wants to be the lingua franca of the world I
think this is a desirable attribute. And given few things are universal across
existing cultures, it doesn't leave much room for metaphor.

The whole term of African-American is indeed a confusing mess, for reasons you
pointed out, but also that a straightforward interpretation might mean that
Elon Musk (being South African) should fall under that umbrella, but to
suggest so would land you in some hot water. I would hate to have to explain
this nuance constantly to non-native speakers.

------
fxtentacle
I believe he said that those terms should be avoided, if possible, for new
systems, but that they remain perfectly OK to use with old existing APIs.

So what a misleading clickbait title.

------
einpoklum
Like in real life - slavery isn't really banished, it's transformed into a
less brittle, and perhaps more insidious, social relationship: Former bound
slaves are now employed as salaried servants, free to leave at any time.
Except if they want to earn enough to feed their families, that is.

So now, we still have masters and servants in the kernels, but the names are
changed:

> In their place coders will be expected to use alternatives

> such as “primary” and “secondary” relationships, or refer

> to “leaders” and “followers”, or even “directors” and

> “performers”.

If it's _actually_ primary foo's and secondary foo's, then fine; but I suspect
these are just euphemisms. Now, in software, the effect is just a bit of
obfuscation. What's annoying is the reflection of the real-life trade not to
call a spade a spade.

PS - I'm fine with changes like "denylists" instead of "blacklists".

~~~
thrownaway954
so what are your suggestions then?

~~~
einpoklum
Call things what they are. If one entity gives orders to other entities and
they must carry them out, then don't call these the "primary" and the
"secondary" entities, because then you've given them a vague and non-
descriptive name. I'm not saying you _have_ to use "master" and "slave" when
there are other reasonably descriptive names, just don't avoid it artificially
because it reminds you of bad things.

~~~
thrownaway954
again... what are your suggestions then? that whole response was not "calling
things what they are", it deflecting from actually answering the question. if
you don't have good idea of the terms to use, you can just say that you don't
know.

------
s9w
I liked the old linus better.

------
rvz
An excerpt from the coding-style.rst:

> Exceptions for introducing new usage is to maintain a userspace ABI/API, or
> when updating code for an existing (as of 2020) hardware or protocol
> specification that mandates those terms.

You know that Linus is "drawing the line somewhere" and he is only banning
this for new usages. The PC crowd may still question why not remove "all"
usages including old code with these "offensive" terms. (It's really isn't
realistic for the Linux Kernel.)

You're more than welcome to recommend to remove all usages including
historical ones to Linus. /s

~~~
happytoexplain
>The PC crowd may still question why not remove "all" usages

Wouldn't that be a valid question from any curious person?

