By the same logic, shouldn't it be offensive to refer to the "owner" of a house? Or the "torturous" path up the mountain? Can we also not "kill" a process? Or run a "headless" browser? Or talk about a project being a "death march"?
"Owner" is fine because the generic, base meaning is not inherently wrong. Claiming to a person as a slave is one application of that generic meaning (which is ofc very wrong). Owning a record in a database or owning some land is another, distinct case (which is perfectly fine).
"Death march" and explicitly militaristic terms are not ideal, although many people do believe in some kind of just war, so theoretically words themselves are not fundamentally immoral, the whole topic is understandably not going to result in any positive feelings so it would be best to avoid it.
Likewise, "headless" if we really want to stretch it to a human analogy, would not refer to cutting off someone's head, but rather to a type of creature that doesn't have one in the first place.
If we’re really thorough about this stuff, we’ll probably end up with hundreds of words and phrases that we can’t say because they could remind people of something dark or unjust in our history. Everyone will have to think about it constantly to avoid slipping up.
It strikes me as a lot of sound and fury for something that ultimately isn’t going to make a single oppressed person any better off, and that will lead to a lot of conflict and resentment when people feel that innocent patterns of speech are being policed.
It’s not meant to make them better off, it’s meant to not make someone feel worse.
> completely innocent patterns of speech are now being policed
No one is perfect but if someone’s telling you that a word pair like “master/slave” sucks for them to have to type, why is our response anger and resentment at the “word police” rather than compassion and understanding?
If we consider the worst fates for a race or ethnicity we often think about genocide or slavery.
Just like we could “genocide” a DB by deleting everything, it would probably suck for many to see that word normalized in a new context. It’s probably good for some words to maintain their strong visceral reactions. I’d say the fact that “slave” feels like an innocent speech pattern is actually a good reason why we should want to move away from using it outside of it’s original historical context. The word “slave” should hopefully elicit fear, sadness and contemplation. Instead it seems it generates confusion as to why anyone would feel negative emotions in response to that word. Just like swear words, they carry weight largely because they’re seldom used and are often attached to emotions. To dilute their potency seems like a mistake to me.
In any event you’re not a bad person by any stretch if you use those words innocently. But I personally would rather use a different, less charged word to describe a DB if others were so inclined to indulge me.
It's of course very different when the intention is to offend, as with racial slurs, but when it comes to things like master/slave db, git master, 'sanity check', the masculine/feminine in Spanish, and others that have been mentioned in this thread, you're really talking about a project to 'reform' everyday speech, with no clear boundary on when this project would ever be complete. And really, there can be no clear boundary since 'unintentional offensiveness' is a purely subjective determination that anyone can claim in response to almost any word or phrase, no matter how benign others may find it.
However progressive someone's politics might be (mine are fairly progressive fwiw), this seems like a highly questionable undertaking. There are clear echoes to measures that have been taken by totalitarian regimes in the past, like asking citizens to call out and report each other for ideological transgressions.
Considering this danger and how much it aggravates people to feel that they must walk on eggshells with their words, there seems to be very little practical benefit toward advancing any concrete progressive goals. People not feeling bad seems like kind of a wash since it also feels bad to have your character questioned based on using common/widely accepted terms.
“Master/slave” is a recent manufactured idiom. No one is hunting through dusty books trying to find things to be offended about. As more African Americans enter the field of programming the more apparent it has become how unnecessary it is to use this idiom. It certainly wasn’t coined in a programming context by an African American. It would be inherently obvious to them that it’s not even a good idiom from a semantic view. It’s only because African Americans were absent from those naming decisions that it ever gained traction.
No one is censoring facts or opinions here. They’re simply saying: “hey, now that African Americans are participating more in our programming community it’s become apparent how uncomfortable it is for African Americans to have to use this master/slave idiom that is barely even semantically appropriate. No one is blaming anybody but can we agree to use a term that’s both more semantically accurate and one that all of us including our African American colleagues feel more comfortable with?”.
It’s like if we’re in a public park and I ask you to take turns on the swing. There’s no rule about it and you could say I’m on a power trip trying to get you to give up the swing, or that I’m blaming you for not having noticed that I was getting annoyed waiting. Or we could just take turns and be friends. I want you to stop using the swing so I can use it. You being on the swing isn’t a problem, but acting like I’m oppressing you by asking you to change positions is a bit of a stretch in my opinion. No ones character is being questioned and no one is wrong. But if you say no to sharing the swing because you’re afraid of a slippery slope of me expecting you to share your house, your car, etc. then you’re operating out of fear rather than responding to my actual request. Or, you could trust that when my requests actually inconvenience you, you’ll say no.
> it also feels bad to have your character questioned based on using common/widely accepted terms
I’m know it does. But insisting you’re not offending anyone or have never offended anyone isn’t the goal. No one is perfect. No one can go through life without being a jerk or offending people. The real test is how we respond after we have done so.
If you used an idiom that made some people uncomfortable, just apologize and move on. Don’t be afraid to give up the swing worrying about everything else that might happen later. It’s just a swing and this is just an idiom. Offering understanding and compassion and even an apology costs you nothing but your ego.
But regardless, it's not that I'm so stuck on using this specific term. I don't care that much, and primary/secondary is fine, as you say. My point is that many people and groups will have more-or-less equally valid complaints about countless other words and terms, and I don't think attempting to excise all of them from our language is a helpful or productive path to go down. As many anecdotes in this thread have demonstrated, it's not "just a swing" or just a single idiom. It's already starting to snowball into a pretty long list.
Because there are other words that convey the same programming intent that don’t also personify slavery. I can think of dozens of oppressive human relationships that could also be used to describe a subordinate database architecture, but why? What do we gain by personifying our DBs with terms like “slave”?
They’re short words of convenience rather than some malicious intent, I get it, but it’s not hard to name it something just as relevant like “primary/secondary” or “source/replica” and move on to bigger and better things.
The other words you mentioned don’t have the same painful historical connotations for a large minority of the population.
> I'm sure if it becomes politically advantageous to remove the kill command, a community organiser or developer advocate somewhere will immediately start lobbying for it.
Politically advantageous? I’m not sure why social change is assumed to have ulterior motives. If one of my employees said a violent personification of a programming process was distracting or disturbing to them and made their job harder, why not change it? It’s not like these are technical terms. These are words that relate to human interaction that we’ve embedded into a non-human field.
There are tons of words throughout history that were accepted by previous generations that aren’t accepted by subsequent ones and vice versa. Language and social norms are always changing.
If you can’t speak the truth freely, that’s a huge problem. If you can’t program with others using your preferred personified analogy for a variable name when another variable name will communicate the intent just as well, that doesn’t strike me as quite the same existential threat to society and public discourse.
It's my impression that there are a lot of people looking for things to cancel, justified by their political beliefs, but motivated by social approval and career-building.
If this is the case, it's obvious why we shouldn't change our language to suit those demands: the demands are motivated by a positive feedback loop where cancelling is rewarded, and rewards enable cancellation, and so whether a term is a real problem is irrelevant so long as outrage about it can generate enough income or likes.
As the programming field becomes more diverse, isn’t it reasonable that some might have a legitimate emotional reaction to the word “slave” especially in the context of a “master/slave” relationship?
Or is it more realistic to assume that it’s people on power trips manufacturing outrage for social or physical currency? And that no African American would ever have had a problem with that word pair until a social justice warrior came along and told them to be outraged?
The latter is pretty insensitive, but not an uncommon view.
> we shouldn't change our language to suit those demands
Programmers used an analogy that attempted to change the meaning of the word pair “master/slave”. People are advocating not to change the meaning of our language but to respect the original meaning that is still taught in every school. “Master/slave” has an important historical meaning and isn’t something we should casually co-opt.
If someone wrote a script to “genocide” a DB instead of “wiping” it, I’d hope that we could see that co-opting a word that already has important historical meaning doesn’t help anyone, but surely hurts some.
So, whenever I think some "new standard" is ridiculous, I try to think on that for a moment and err towards not wasting too much time worrying about it.
Does using the new term hurt me in anyway? Does it help someone else? Alright, then. I might not get it, and it might feel ridiculous to me in the moment, but I don't want to be the guy yelling about how calling something "gay" isn't homophobic.
Again, I go back to my example.
Were LGBT activists "forcing me" to change the way I used the word "gay"? Sort of. Did doing so hurt me? No. Did it benefit them? They say it did. Was it for "nothing"? They say it wasn't.
Language changes. I'm not going to waste a lot of energy worrying about it.
At the time, I thought the change was ridiculous. It took me a few years to realize I was just being petulant.
1. I'm not comfortable with the analogy.
2. Going back to my example, the whole "if we let them do X, where does it stop?" was a big part of 90s discourse regarding LGB rights. So far, the slope hasn't slipped into any of the scenarios people brought up. Language changed a bit. Some people felt more included by society. I suffered no injury beyond letting go of the notion I was entitled to use certain words to mean certain things.
I found other ways to convey those things. It turned out fine.
I'm not sure why you need an analogy to get your point across.
As for why I used an analogy, I don't know what reason will satisfy you. People use analogies to help other people get an intuitive sense of an idea which might otherwise be hard to explain. If you understood my point without needing the analogy then that's great, but I don't want to assume that analogies are never helpful.
It’s a fine line between a slippery slope and progress.
I remember in the 80s and 90s when older generations would complain that they couldn’t gay bash anymore. They thought it was a slippery slope that if they were forced to respect homosexuals, they’d be forced to respect other types of behavior they deemed immoral. Turns out it was just progress.
Recently, I noticed that I would refer to adult females as “girls” and adult males as “men”. I want to be careful with that in the future and try to change because I’ve been called out a few times and I can see how it’s disrespectful. And I don’t want to be those adults from the 80s I saw so resistant to change.
I guess I try to view it as each year brings new ways of communicating and interacting. It’s OK that I wrote master/slave years ago and it’s OK that I’d never allow that in my code base now.
We’re all trying to be better and that means change.
I’m glad folks are sounding the alarm because we don’t want to be complacent, but not every new social norm is suppressive either.