The PR has been now merged. The same guy also sent another PR - Use gender-neutral language.
However now, there is another PR which asks for change Leader/Follower to Primary/Replica - (Properly) fix potentially inconsiderate naming
On a related note, even Django had same PR and it was merged - #22667 replaced occurrences of master/slave terminology with leader/follower
It’s sad to see people wasting engineering time on this–note the brief breakage of tests that occurred due to this.
Master/Slave is completely reasonable terminology, in certain cases. For example, it is intuitive that a slave is never given master responsibilities, and that they are probably interchangable (“I am Spartacus!”).
There are certainly word combinations more suitable for other relationships, and we should all use those where it aids comprehension, but people getting grumpy about a pairing that is well-defined and understood is frivolous.
I agree that this is a complete waste of time. Because the reasoning is somebody being offended by widely used and understood terminology. The second link, suggests “primary” and “secondary” naming which adds an interesting new angle. There is a technical limitation on the applicability of “master” and “slave” to a system involving two layers, while “primary” and “secondary” can do two layers or more just by extending the naming to “tertiary” and such.
But while this kind of naming is good, it is not the motivation of this patch.
Glad to hear it was merged!
Hooray for another source of confusion!
For wanting to be open to changes they really didn’t give “master/worker” a second look.
Who would tho? It’s not like “worker” is used anywhere to denote a similar meaning, especially in thread related stuff
It seems most of the comments here consider this ‘wasting engineering time.’ As someone who has sent CLs like this one, I don’t see it as wasting engineering time at all. I see it as a signal that a community is willing to accept feedback and move forward. Community is just as important as ‘purely technical’ decisions, more so for open source projects. What you may consider frivolous may be a big deal to some people, people who may have considered contributing but decided against it. Even worse, that decision is rarely put into words: the community may not get feedback that this is happening and will miss out. The fact that someone send a CL and the community merged it is a positive and healthy sign.
Consider how a similar technical decision would play out: an engineer chooses the wrong abstraction when first implementing an API. People complain about it when it is used in certain places and someone offers a patch with a better abstraction. The new patch isn’t a waste of resources – it fixes a problem that the designer unknowingly introduced, and a case could be made that the initial decision wasted resources by requiring a cleanup.
What you may consider frivolous may be a big deal to some people
I agree. But problem is, there will be always someone who will get offended. Now, another set of people are not happy with Leader/Follower since Leader in German means/connotes Führer. So there is another PR for the same (now merged). So when this will stop?
But these terms were not offending in nature at all, given the context. They were correct terms. Do you think we should rename Master/Slave SR Flip Flops to Primary/Secondary SR Flip Flop? There was joke in Reddit, to rename the Swift project itself, since it may offend people with disabilities, who cannot walk/run fast ‘swiftly’.
This is similar to asking is Chess a racist game since White moves first. I am not even kidding, there have been many debates around this. An example. And also, since, Chess also has White and Black, tomorrow there will be a PR on Chess repo asking to include Brown and other colors.
sarcasm: why Chess should be limited to White and Black? As a Brown guy it offends me!
I don’t consider learning from other human beings as something that has to stop; I consider it the whole point of being here.
Going back to my technical example above: just because you can’t write a perfect program with the first release doesn’t mean you should give up programming. It means you do the best you can and listen when people provide feedback (in that case bugs, in this case wording changes). Surprisingly, it works.
Now, another set of people are not happy with Leader/Follower since Leader in German means/connotes Führer.
That’s not how german culture and language works but, ok. Nice slippery slope
Search in Google for ‘Leader in German’. Here’s an screenshot.
I know what führer means?
I consider these a waste of time because in every case I’ve seen, the change is requested for commonly used words or phrases that nobody is actually offended by. The changes are initiated more so that somebody can sit on their high horse, than to actually improve the situation of people being discriminated against. On top of that, it’s often done to bully people and projects. The idea of being offended on somebody else’s behalf is just goofy.
If somebody who’s already working on the project wants to change the naming because they feel offended by it (or for any other reason), whatever. But to come in out of nowhere, demand code changes, and then blow up and make a scene if the changes aren’t accepted is just not acceptable behavior, IMO.
On top of that, it’s often done to bully people and projects. The idea of being offended on somebody else’s behalf is just goofy.
Reminds me of #OpalGate: PR #941, PR #942, PR #948. And here is the discussion on Lobsters.
I think the weirdest thing is that it is so incredibly US-centric. The only “feelings” that matter seem to be those from the greatest nation on earth.
Both the UK and India (two English speaking countries I’ve lived in) both have their own variety and fair share of “political correctness.”
Yes, but they don’t feel like they need to spread their madness to the rest of the planet.
I believe that your example of technical evolution is somewhat misplaced…this change, for example, changed no existing functionality, other than breaking the build. Presumably, the corrected bad abstraction in your case is objectively better in usage and performance.
I also–and this is going to go over like a lead zeppelin, but I think the diversity of viewpoints is important here–disagree that community is as important as “purely technical” decisions. I believe that not to be the case. Well-functioning code is worth its weight in ruffled feathers, in the vast majority of cases.
The thing that we’re still figuring out as an industry is to where we fall on the artifacts vs. service spectrum. If you take a codebase, and then open-source it, and the entire development team disappears immediately thereafter, the codebase is still useful. In fact, as businesses have seen time and time again, it is in fact an antipattern to have the product be tightly coupled in knowledge to a small cabal of people. In business, we really do prefer a black box.
This being the case, I think that the primary goal of software projects should be to create good code with whoever they have on hand. A secondary goal may be to teach other people in the community, or to reduce inequality in the world, or promote justice and decency and compassion–but again, those are all secondary to the goal of making a computer compute something as quickly as possible.
In this case, the fact that the community decided to accept the changes regardless of technical necessity shows that, to at least some small extent, they do not view themselves as a software project as defined above.
There are certainly sound technical communication arguments for preferring a different word pairing than master/slave, but that is contingent on there being a real miscommunication in the roles the described things have. That does not seem to be the motivation for this request.
those are all secondary to the goal of making a computer compute something as quickly as possible.
Code doesn’t exist in a vacuum, it exists in the context of people who write and use it. Linux wasn’t written to warm the earth by burning up CPU time on a machine with no outputs; it was written so people can use it to do things. People are always at the input and output of the systems we build and it’s dangerous to ignore that fact.
Your observations are not anything any reasonable person would disagree with–they are, however, quite beside the point I was trying to make, which is that in some amount of time all of the original consumers and creators will be dead, and the software will still remain.
Again, as I said, mine is an unpalatable suggestion, but I think it helps us differentiate between programming-for-computers and community-activities-by-way-of-programming.
I had no idea there were parody GitHub accounts, wow.
Not only accounts, but entire repos!
Ranging from the silly…
…to the meticulously crass…
…to the plain frivolous:
Kinda relevant trivia: C+= has been banned twice from Github
Yep. Censorship because reasons is very much alive and well.
It’s a shame–with a few pull requests that project could be made a good amount wittier without being so abrasively trolly.
[Comment removed by author]
So, here’s my policy: if one is going to troll, one has to troll well. Otherwise, you’re being a bully.
The problem I have with the C+= stuff is that, frankly, a lot of it is just not witty. A few examples:
Philosophy section, point 7. The trivial complaint to this is that it is ableist (which it is, excluding the deaf and illiterate), and should’ve been something about instead of excluding all non-network I/O, or even better, requiring code paths to support different abilities. Their joke was “har har look how absurd it is supporting the least-able denominator”, but they didn’t follow it all the way through. They instead decided to go off on a dumb little parody of “oh look at the men objectifying beauty in women”, which didn’t fit with their satire. So, it’s needlessly pandering without actually cutting to the satire they were trying for.
Philosophy section, point 11. The forking joke is nonsensical–they’re clearly referencing the dongle debacle thing a while ago. The proper target for this joke (the satirical take on some of the practical issues of consent, such as duration) would’ve been something like BSD’s taint command or the sudo command. fork is simply the wrong thing to joke about here.
On 1s And 0s. This section could’ve been done without actually referencing body parts at all, but merely pointing out fluidity of identity and building the joke based off of that. Doing otherwise is just lowbrow.
Basic language style. This entire section is stupid–even in the context of “let’s stop misogyny”, the replacements don’t make sense. printf-> yell doesn’t follow. The if, while, for -> check doesn’t follow, and is just a really baldly lazy attempt at a “hurr durr checking privilege amirite” joke, which could’ve actually been done waaaaay better and less meanly. The last bit about only allowing x’s in variable names is, somehow, even lazier.
Functions and procedures. Suffers from the exact same sort of thing: lazy throwaway jabs at “hurr durr Patriarchy amirite” that don’t make any goddamned sense. The whole “lobbying” thing? That, recontextualized into something about message passing and maybe queued invocations could’ve kinda worked, if it was stripped of the other stupid remarks. Like, there’s a good joke critiquing checking privilege there, but the authors miss it by a country mile.
It goes on and on and on like this. Its diction, though in places quite on target, is inconsistent. Just, ugh.
I’m amused how many people have a strong opinion. This is classic bike shedding, and jckarter handled it perfectly: just take a stance and move on, since it doesn’t matter.
How long do you think it would’ve taken to turn into a tempest-in-a-teapot if the resolution had been “No, this is not worth our time and is correct enough, closed WONTFIX”?
This comment section makes me sad about the state of lobste.rs. Lot of terrible anti-empathy hot takes and I’m so not here for that.
This thread is filled with the exact same privileged nonsense that ruins communities for anyone who isn’t from its background or confirming its myopic worldview. Congrats on your general inability to see why hundreds of years of unjust treatment might leave folks with a distaste for certain words. I’m disappointed because I really wanted this place to be better than that. There are plenty of other places folks can find to have those terrible opinions and I believe we need better moderation.
Downvoting this comment of mine because of that is totally on-brand for that type of myopia. I do wish we had a place for meta discussion that was not in the main threads, as MetaTalk is for MetaFilter.
Speaking only for myself, the reason you were downvoted was because you failed to elaborate on why this made you sad. You’ve since tried to add elaboration (which, if done in an edit, would’ve been enough to at least remove my downvote), so thank you for that.
As for that elaboration, you’re conflating the positions of “why would anybody take offense at this word choice” and “this word choice is correct and it doesn’t matter if it offends some”. The former position is both ignorant and (more crucially) not represented so far in the comments here, the latter is technically accurate at the expense of feelings.
And again, please stop characterizing lobsters in such broad strokes–there are any number of users who would gladly take a different position, and would do so with gusto, and with whom you’d probably agree. That they haven’t done so yet is probably because they have better things to do on a Sunday than argue on the Internet.
These aren’t “terrible opinions”, they don’t need to be swept away and moderated (censored) out: they’re just different value judgements. As an exercise, try to restate my position.
Here, if I may restate your position on this topic (which you haven’t explicitly listed out, so I am at somewhat of a disadvantage):
“I, jmhodges, believe that history has shown slavery to be distasteful, and furthermore that references to the same can cause distress or at least distract from the code at hand for current and potential community members. I believe that this pull request was The Right Thing To Do, because it cleared up some language that at least one person found bothersome. I additionally believe that any claims that this language is valid are superseded by the requirement that software source should be as inclusive as possible. I believe inclusivity is important because I believe that it is important to have diverse viewpoints when designing and implementing software, and because I believe that software projects who do not put effort towards this sort of inclusivity are bound to eventually stagnate in talent and to lose members until they dwindle away.”
Would you say that the above is a fair wording of your position?
“hundreds of years of unjust treatment” that was made illegal in the US 160 years ago and was never legal in many other countries, e.g. UK
You are being obtuse–there is a great deal of documented quasi-legal or outright legal mistreatment of minorities in the United States. Unfair and unreasonable discrimination absolutely exists, everywhere, and claiming “but we made it illegal so how can it?” shows a lack of imagination in thinking how to trivially circumvent such rules.
If the existence of a few people with whom you disagree is enough to cause you to paint all of the community the same way, you may be falling into the same problematic thinking patterns as a lot of the folks I think you may disagree with politically.
haha femenisnm funny haha political correxctbess gone wiiIIIiiiiilllLLLlldDD
I think it’s really funny how light this has gotten, I can’t even read it on my monitor