Re: [PATCH ethtool v1] netlink: add master/slave configuration support

From: Edward Cree
Date: Tue Jun 09 2020 - 14:47:13 EST


Disclaimer: *definitely* not speaking for my employer.

On 09/06/2020 18:19, Stephen Hemminger wrote:
> How many times have you or Linus argued about variable naming.
> Yes, words do matter and convey a lot of implied connotation and meaning.
Connotation, unlike denotation, is widely variable. I would aver
that for most people who are triggered or offended by the technical
use of master/slave or similar terms, this is a *learned behaviour*
that occurs because they have been taught that they should be
offended by these words. Are these people also incapable of using
those words to describe actual historical slavery?
There is a difference between stating "X relates to Y as a slave to
a master" and "You relate to me (or ought to do so) as a slave to a
master". The former is a merely factual claim which is often true
of technical entities (and in the past or in certain parts of the
world today is true of some humans, however morally wrong); the
latter is an assertion of power. It is only the latter which is,
or at any rate should be, offensive; the attempt to ban the former
rests on an equivocation between positive and normative uses.
Anyone who can't put connotation aside and stick to denotation
(a) needs to grow up
(b) is ill-suited to working with computers.

> Most projects and standards bodies are taking a stance on fixing the
> language. The IETF is has proposed making changes as well.
An expired Internet-Draft authored by a human-rights charity and a
media studies postgrad student does not constitute "the IETF has
proposed". (Besides, it's historically inaccurate; it claims that
the word "robot" means slave, when in fact it means the labour owed
by a _serf_ ("robotnik"). And it cites Orwell with apparently *no*
sense of irony whatsoever... he was arguing _against_ Newspeak, not
for it!)

> A common example is that master/slave is unclear and would be clearer
> as primary/secondary or active/backup or controller/worker.
So why isn't controller/worker just as offensive, given all those
labourers throughout history who have suffered under abusive
managers? Or does a word need a tenuous connection to race before
it can be ritually purified from the language?
And is there really an EE anywhere who finds the terminology of
master and slave clocks unclear? I suspect very few would gain a
better understanding from any of your suggested alternatives.

> Most of networking is based on standards. When the standards wording changes
> (and it will happen soon); then Linux should also change the wording in the
> source, api and documentation.
Rather, it seems that this is an attempt to change Linux in order
to _de facto_ change the standard, thereby creating pressure on
standards bodies to change it _de jure_ to match. Yet, in the
real world, engineers use and understand the current terminology;
the push for language purification bears but little reference to
anything outside of itself.

In conclusion, I'd like to quote from Henry Spencer's Ten
Commandments for C Programmers (Annotated Edition) [1]:
> As a lamentable side issue, there has been some unrest from the
> fanatics of the Pronoun Gestapo over the use of the word "man"
> in [the eighth] Commandment, for they believe that great efforts
> and loud shouting devoted to the ritual purification of the
> language will somehow redound to the benefit of the downtrodden
> (whose real and grievous woes tendeth to get lost amidst all that
> thunder and fury).

Grumpily yours,
-ed

[1] https://www.lysator.liu.se/c/ten-commandments.html