Master slave : word matters ITToxicity

Since at least 6 years reported there is an underground war in the IT around words.

One of them that could be called a Social Justice Warrior rant is the master/slave, black/whitelist removal.

Actually, words have meanings. Does such a thing as a master/slave relationship informs me efficiently ?

I will pair with Guido Van Rossum : yes some very few times.

A time were computers did not exists and arrived the first electrical type writer.
An idiot one day had the idea to make this electricity be duplicated to other type writers, and magic ... you could transmit what you typed to other places at the speed of light. There was one master to avoid nasty short circuits.
Where this terminology come from ? Electronics. The vocabulary is from the ground about slavery and asserving. And some of the IT words from master/slave comes from hardware standards (like SCSI, GPIB (IEEE480), ...). Electronics and robots takes their source in the industrial revolutions when colonialism was still a thing and the purpose of making robots is without a doubt to have docile, obeying, non conflictual labor power in the plants.

In fact my view is we should not try to whitwash, greenwash, rainbowwash our jargon. If what we do is shocking people should be aware of it.

However, most of the time (>95%) master/slave is not a relevant information.

In distributed databases for instance there is not such an as strong analogy of a hardware device enslaving by the way of a line's discipline the enslaved hardware. Most our modern architecture are purposed to avoid a weak master slave link.

When a server is down (yes server like a tool enslaved for serving like in serf) the cluster don't fall, because the other servers are already up, hence they are more or on a logic of consensus with an almost equa to equal dialog. Most often then never our modern protocol are reliable because they resort to more efficient strategies than master/slavery relationships based on consensus, voting, tolerance of multiple *masters* servers (hence no master) ... this is often a bit of what peer to peer also meant. BGP, Active Directory and a lot of protocols resort to elections between the peers for handling failures. In this context the master/slave context is less informative than elected/citizen (ofc we cheat the elections to let the most powerful computers preferably win, we are not idiots).

So 95% of the time master/slave denomination cringe me as intellectual laziness : as if people lacking of informative words resort to what is in their brain : master/slave relationship. When you are this person I call you a négrier no more, no less. Computers architecture reflects our belief of our a good system works, and yes our architecture sometimes is made according to our political views.

For instance, I love algorithm based on biased random picking according to feedback loops that are midly choatic on the short term and more resistant on the middle-term.

Let's know look at white/black list

You go on wikipedia and you see these words are very informative, if you actually want to make a list of people forbidden to come in a system.

So imagine wikipedia firewall code for preventing bots from doing harm, what would be an informative variable name for this list of people forbidden to come into a system ? A blacklist. It does not refer to the colour of the skin but a peculiar name given to a list of persona non grata during a coup.

However, when I see code about natural language processing and people use the variable name blacklist, it cringes me. First of all, since 1959 NLP uses the term stop words. Using blacklist here will confuse the professionnal of linguistic. It is wrong. Tip #1 of coding : use the peculiar words used by the pro doing the tasks to name your variable. In NLP, you don't use blacklist, end of the story.

Did my old code has misused black list ? Good point : we all are lazy and make mistakes. My latest code to form a list of unwanted DNS domain has a variable $BLOCK that stores a list (hence it is a block list), hence it is more informative than black or white.
https://gist.github.com/jul/40c35d751f513dab0e15f6ea9732ca83

Will I keep using blacklist ?

For exactly a list of identity that must be kept out of an authority system : YES. That is a very informative word.

But now, let's come back to the person who chose blacklist when the "stop words" should have been used.

If you have a clear view of the context in which modern "real world" blacklist exists it is cringy to imagine being familiar with it at the point you get confused.

It is the ivy college bro that are familiar with this.

Clubs for the elite especially when they want to decide if a new member can come in they have a box. Any club member can put one of 2 balls anonymously : one black, one white.
In order for a member to be accepted, the newcomer most not have a single black ball being casted. An «exclusive» club as it means.

No wonder these clubs are mostly masculine, wealthy non diverse.

So well words are words but also a context, they are better suited when they are meaningful.

What cringes me is people using lazily wrong connoted term in a constant bias of weird political belief from the past.

The words don't freak me out. man 7 PTY use master slave in an informative way.
However a master/slave oracle sql server relationship given that the slaves are still being able to perform task without a master is blatantly misleading. Primary and secondary are more informative compared to the hardware analogy.

Master/slave, black list, asserving, Truth, evangelist, guru, church, flamewars ...
IT has a jargon very versed in religion fights, and believe it on not, part of the job is about showing sign of submission to religions : language, editor, VCS, paradigm, tools, choice of architectures (double cross), style.
We even have our fatwa labelled «X considered harmful» where new theologists come with DO and DON'T our RFC are like the then commandments : defining SHOULD, MAY, and these words repeated like mantra.

During the conferences we have evangelists proudly wearing their T shirts telling us the good words about the tech X or Y, and even having their speakers on a fast track for selection like some merchant of the temple converting the mass to their technologies or paradigms.


So yes, word matters, especially when they are the wrong one. But, anyway 90% of the BS part of Information Technology is the religious atmosphere that surround it like a toxic gas. It is the constant fatigue of these evangelists twisting words for their own convenience or agendas and with an apparent bias towards a semantic of domination and deception.

Like bitcoin/ether community trying to hijack the «crypto» prefix (common to cryptography, cryptozoology and much more) for their community to inherit in the eyes of the ignorant of the serious of the cryptography community.

Open source, rust, mozilla, google, microsoft, cloud, distributed system, java, big data, OOP, agile, openID, ML, IA, crypto evangelists you are all a pain in the ass of the information technology. I don't want to be converted to your false gods and idols, I am my own God in my brain.

My conclusion is the information technology is toxic not in words but in behaviour. And these poison words are a consequence of to big of a room given to sectarists behaviours. This could be ignored if it did not compromised our understanding of our own field of competence.

We should choose the «word the most descriptive in the context», and it is really cringing me that when wrong words are chosen they have weird connoted social biases and that correcting them is met with resistance.

Something is rotten in the IT state.

Just a reminder that @vstinner went through tough times with 4 PR correcting documentation having "being more informative at mind" and he faced the strong community of social injustice fanatics that would not argue with him but flame him. IT Toxicity is real.

No comments: