Terms like master/slave or whitelist/blacklist are common parlance and this attempt to remove these phrases for less well understood phrases just seems like an attempt to whitewash history for little to no gain.
I'm a firm believer that language is dynamic and the meaning of words is the meanings we currently associate to them.
In my native language, we have something called "black notebook" which is essentially a blacklist. It has nothing to do with skin color, never been. It's more reference to bright and dark - it's a list of people you wouldn't do business with. It's very natural for people to use words from of their sensors. We call greenfield)brownfield in a similar manner.
This thread started as madsmith's valid comment that "that language is dynamic and the meaning of words is the meanings we currently associate to them" - how do we determine what meanings are associated with a given term? All indications are that it has a US origin, which provides the appropriate interpretation.
What is "the problem" and what should GitHub do to address the problem?
If the problem US-centric, and you think the US-only issues can be ignored because GitHub caters to a global market, then isn't your logic that GitHub should do nothing?
It set me back a moment the first time I saw it, and took me about 30 seconds to mentally internalise the change. After that first time, no issues as a reader of the code/config.
The historical usage of "master/slave" for the two drives on an IDE channel is a great example of the imprecise use of these terms -- it implies a relationship between the devices that doesn't exist at all. Both devices respond directly to commands from the host; the second device on the channel is not under the command of the first one.
Leader, for instance, implies a more fluid arrangement of the chain of command that better reflects what happens when a new machine takes over for a server that is having problems or being maintained.
sed -i 's/master/main/g' *
Problem solved!Switching from master to main is a good change.
The 'master-slave' terminology has been used in tech for a while (for example, IDE [0]). Yes, it's not intended to be a direct reference to slavery, but that's where the term originated and it's clearly used to mean "one thing is in charge, the other thing follows orders". Yes, there's no explicit 'slave' term in git, even though BitKeeper did (apparently - I've never used BitKeeper).
It's not effortless, but it's not hard to change from master to main ( [1] ).
Plus, it's a great excuse to learn (or sharpen) your grep/awk/sed/etc skills :)
----------------------------------------------
[0]: https://computer.howstuffworks.com/ide.htm#pt4
[1]: https://www.hanselman.com/blog/EasilyRenameYourGitDefaultBra...
Tell it to your students next time and let's all make a fuss about the use of the word.