The cost is measured primarily in time. Experts in git/GitHub just experience a little annoyance (per repo). But for new comers (esp self-learners) the cost is much higher (takes the form of dysfunctional instructions, tutorials, readmes), and at the margin could cause someone to give up on a tutorial.
Cost should be weighed up against benefits i.e. that those hurt or upset by use of the word 'master' would no longer be. It's highly questionable whether the term master ever upset anyone (not simply those who were upset by the idea that someone else could be upset by the term's use).
A second-order cost is the precedent. There isn't a word in the English language which cannot be interpreted as malevolent given enough effort from the interpreter. Therefore it can be a better strategy to accept that there exist words with multiple meanings depending on context, and live with this language feature/imperfection, rather than impose costly changes on everyone to benefit a (possibly non-existent) few.
Avoiding it should be easy. It should be the easiest of easy things. Make the change and move on. Hack your reality, improve things, don't make more of a glaring ugly mess of things than need be.
It costs so so little to do a small good act. You wouldn't name your primary branch holocaust or tyrant or oppressor or doommaker or worldruiner or hates[ethnicity]. But computing used master/slave extensively for decades (ex: I2C, IDE protocols). Folks arguing that it hurts their feelings to not have those names wouldn't be given any weight. These are alligator tears.
No one has made a case that "main" is a bad name. Because this isn't a real case. It's perfectly clear, no lesser a name in any way.
More broadly, when assessing positive liberty (freedom to do something) versus negative liberty (freedom from being dogged), we shouldn't favor positive liberty to make broadly harmful defaults that can hurt people and/or bring misery over negative liberty not have a world a rare couple antagonists insist on driving down in stature.
This feels to me like people either dragging their feet & bringing resistance, or, on many many cases, people actively obstructing, making an easy simple improvement much much more fraught & hard. And many of those people I feel like do it because they know it is a good change, and they actively seek to keep the world worse. I have little and descendingly less pity for any. If someone wants to build a case for why their feelings here that we shouldn't do this have weight, I'm all ears. And I'll spend some time to read more comments to see what I see. But the person I replied to made zero case for why they felt their emotional injury (as they begged for tolerance of intolerance), yet felt that their case should carry as much or more weight, where-as master/slave usage in computing are words which associates with slavery. Which is the ultimate positive liberty vs negative liberty case, which reflects the matter here: the negative liberty to not be enslaved outweighs any positive liberty to enslave.
You're free to think it's stupid!! That fact though just doesn't matter very much in this case. It doesn't actually really affect you. You can adapt, with barely more than zero cost. It's stupid maybe perhaps possibly!! But of no cost. And that's the weight of your feelings here: it's not actually of any consequence to you, you are claiming stake in a matter without any basis. You're free to feel however you like in this world, but whether those emotions actually match/reflect the circumstances that spring them matters. Generally I think most people kind of agree that it sucks that master/slave (ex: i2c, IDE protocols) nomenclature was chosen & used in computing, and calling the shift away stupid-in my view- should be taken as the smallest imaginable quantum of protest, the smallest tears imaginable. Stop stopping the world, let time progress forward, don't trap us in your negative energy forever.
Naming a branch in my git repository "master" does not "hurt people". It does not "bring misery" unless you were already miserable and looking for things to justify it. This change is of consequence to me. It does affect me. "Barely more than zero cost" is more than zero cost. I don't care if you think my opinion "doesn't matter" or is "weightless", because yours doesn't matter any more than mine. You are not a higher being of superior importance because you chose to dedicate your life to fighting a never-ending war against the unreleting evil force that is a word on a screen. Your tears are the biggest, and most pathetic of all.
> because your [opinion] doesn't matter any more than mine.
I wrote a wall of text because I actually care a tiny bit and have put work into explaining and backing my opinion & character. Because I think those opposed have a bar to meet, just as I want to clear a bar of respectability & engage duly on a topic that should be easy to improve on. What I see is you being quite aggressive & scathing while providing very scant little to argue your opinions.
You say our opinions are equally valid, but to me, opinions are weighed on argument, on what is said, and that's why I've tried to put my logic and character down here, to be honest & forthwith about what I'm saying: because that's the basis we have to use to assess opinions. This seems pretty agreeable to me, and again you have option to disagree, but I can't imagine doing so.
This is absolutely a question of weights. Making mountains out of mole-hills is to be avoided. The weight of this question is hardly worth considering at all, and it's absurd what tears you spill over doing such a simple improvement for the world. I'll also allow that perhaps the certainty & approach I've entered with has entrenched & only enhanced enmity to my cause. But with context, having seen master/slave used around in computing, and given how easy it is to shift & adapt to better, I continue to find opinions to the contrary to be unduly self-important, for no real reason. Why stand against such clear wins? My character may not be perfect for all, but let that not alone dissuade us.
It's a bad name and a bad change. I won't be using it. Not because "master" is good (I also won't be using "master"), but because "main" is bad—even worse than if they'd started referring to it in the documentation as the "default integration branch" and so named it "int".
I'd sooner support changing "master" to "margarita" than changing it to "main".
(I've also seen `dev` used, short for 'development branch,' which seems pretty reasonable).
We fix things that are broken. That's progress.
It did, it originated from Bitkeeper that literally used to the term "slave" to refer to non-master branches.
> It's more like 'master bedroom.'
This is even more ridiculous. Where do you think that term came from? What made that a master bedroom in comparison to the other bedrooms? Could it be because that was the one the master was sleeping in, in comparison to the ones slaves were sleeping in?
Here it is for example in an Australian newspaper ad from 1844: https://trove.nla.gov.au/newspaper/article/31742822
> TO LET, Westmoeath Cottage and Garden, situated near to Cook's River, only three miles from the city. the cottage contains parlour and drawing room,and four large bed rooms ; detached kitchen, bakehouse, landry, storeroom, four stall stable and double coach-house, servants' rooms neatly fitted up, together with hay-loft and granary, school house and master's bed-room. A cottage containing four separate rooms for overseer and workmen ; two excellent wells of water on the premises, about six acres of garden neatly laid out and planted with the best vines and fruit trees, 'This property is fit for a family of the first respectability.
Or here it is in London-based The Examiner from 1845: https://upload.wikimedia.org/wikipedia/commons/0/08/The_Exam... (page 523, middle row, a couple of lines below the "Police" headline)
I'm sure I could find more examples, but I think two will sufface.
I don't know man, maybe it's because fixing this one completely inconsequential bug faces so much backlash for no particular reason other than "change bad"?
And well done with using an example from a book series where the only Asian character is named Cho Chang and where there are elves with long noses in charge of the "central bank". That really works in your favour, you totally owned me [pun intended] with that one!
isn't an example of the phrase "master bedroom".
I am also skeptical of "school house and master's bedroom". The main cottage has "four large bed rooms". Why would the "master bedroom", if it is meant to be read as it is today, be listed after the list of detached outbuildings?
But as I said elsewhere, I do not care about that a lot. However, I do think those words are bad for other reasons because they do not illustrate the _actual_ role and relationships of branches in a VCS in a _good way_. If the master branch is not actually ruling over other branches, then it should be named something else, like "primary" as far as I am concerned.
But to answer your question, it's unclear how "inclusive" this actually is. No person of color I've talked to about this (at least 3 that I can recall) has thought this was anything other than weird virtue signaling by admittedly mostly white social justice warriors. Their feelings on "master" terminology ranged from mild bemusement to "I REALLY DON'T GIVE A SHIT."
If the only people being "included" by this are people whom are themselves being uninclusive, even if for the right reasons... I question how "inclusive" this actually is.
That said, I'm definitely in the idgaf camp. My new repos are "main" because that's the default. Most of my old repos are still "master" because I never bothered to change it.
“Well OBVIOUSLY”, says the white knight, “some people are too stupid to understand the context and nuance of a langue like mine English. We just HAVE to adjust it because they won’t understand.”
It says much more about the people pushing such things than it does about the perceived slight.
I don't like euphemisms, or euphemistic language. And American English is loaded with euphemisms. Cause Americans have a lot of trouble dealing with reality. Americans have trouble facing the truth, so they invent the kind of a soft language to protest themselves from it, and it gets worse with every generation.
Video https://www.youtube.com/watch?v=vuEQixrBKCc or text form: https://www.lingq.com/en/learn-english-online/courses/87644/...First, I think it’s just a dangerous idea that people have to be so coddled and be ‘protected’ from seeing words that aren’t slurs and have either no contextual relationship or only very tenuous relationship to actually sensitive concepts (‘master’ has many meanings divorced from African slavery and git never had slave branches so plenty of other senses of the word apply). I feel like it’s going so far that anybody who needs this probably haven’t yet really achieved the resilience needed to operate in the real world.
And secondly, since none of the black developers I worked with actually cared about it, it feels like it’s not great to do something and think you’ve done your bit for racism prevention when you’ve done nothing that makes any real difference to it!
If your definition of "people" is "armchair political activists with nothing better to do with their lives", then yes.
> This change does hurt people. Have you never seen a newbie struggle with an out of date tutorial? There’s fifteen years of books, tutorials, videos, and other learning material out there that assumes the use of `master`. It takes about a decade for these things to die off in the clear-cut cases. However this is not even a clear-cut case, because Git defaults to `master` and GitHub defaults to `main`, so the confusion will last longer.
> Version control is a hard enough concept to grasp well at the best of times. And now there’s going to be a bunch of newbies – many of whom will be black – getting frustrated and confused because they are following the tutorials as best as they can and not getting the results they expect. On balance, there is probably more harm done to black developers with this change than leaving things as they were. Haven’t you ever seen a young developer lose confidence when they are trying the best they can to follow instructions and it’s just not working? Disliking the fact that this is being done to new developers thoughtlessly is not “pointless”.
> There’s also the matter that everybody I have seen advocating for this change has been white, and the responses I have seen from black developers generally ranges from “this is pointless” to “this is [performative / virtue signalling]” (insert appropriate term depending upon whether they are left or right wing). People start with the assumption that this is clearly the right thing to do for black developers, but people assuming that don’t seem to be actually listening to black developers about this, or at the very least, only listen to the ones that agree with them.
> This could have been done in a better way – coördinate with the main Git project around changing the default across the board, plan an update to as much documentation as possible, and make it happen in sync. But GitHub charged in unilaterally, seemingly with an overactive case of a white saviour complex, with people like you telling everybody ”this change hurts nobody”. This was done in an entirely thoughtless manner and does hurt people.
— https://www.reddit.com/r/git/comments/jtrx1k/announcement_po...
Beyond what I originally wrote, you also had ridiculousness like `git init` creating a branch called `main` if you install Git through Apple developer tools and `git init` creating a branch called `master` if you install Git through Homebrew; or getting a repo with `main` if you initialise the repo on GitHub and then clone it locally, but getting a repo with `master` if you initialise the repo locally then push to GitHub.
I don’t especially care what the default is, but I do care that GitHub didn’t seem to give a shit about the disruption they caused as long as they looked like they were performing racial justice of some kind (whilst having zero black people in leadership!). Why wasn’t the change centralised through the Git project so everybody could make the change together?
https://web.archive.org/web/20201001133529/https://github.co...
Fortunately, with this change, everything will return to being in sync.