Ok, I have to ask - will one of them be a synonym? I imagine there are millions of hardcoded words out there that will break unless they both map to the same thing.
I'm not really sure what this would look like in practice. Perhaps this would only apply to new repositories, or maybe it will only be the default default. It has never been mandatory for the default branch to be called "master" -- it's just the default value from git and GitHub.
I suppose we will just need to wait and see what happens.
Master is already not consistent. For some repos it's the development branch, for some it's the stable branch, for some it's something else, for some it doesn't exist.
This. It is hard coded all over the place in thousands of things.
In fact is it even git any more if the master branch isn't called master? Nope it's an incompatible fork by Microsoft purely by a chance encounter of irony.
Where exactly do you depend on knowing the name of the default branch of an unnamed repository, and how do you handle cases where people delete the master branch.
This is just so damn pointless. It will cause some "great" controversy, people will be called white supremacists for refusing to stop saying master.
Now even if this catches on, then yeah OK I'll start naming my branches as main unless I want to make a political statement, which would just add to confusion when developing.
Meanwhile these people will pat each other on the back, yell "yeah! We sure made a difference." while black people keep getting fucked by the system and their lives don't get improved one iota.
I love how this is making everyone mad at progressives. Not one progressive asked for this and not one progressive is going to call people white supremacists for using the word "master".
Let's call a spade a spade and recognize that this was a big company trying to sound "woke" without doing anything.
A lot of oughties progressives fail to realize that they won the lions share of the first phase of the culture war going into the early teens. At that point, they stopped being progressive, and instead became the status quo (not necessarily conservative, but relativistically more adjacent to conservatism now).
Because they can't see this, they're loath to let go of the label in spite of the fact that they're now 'just' liberals.
Left-aligned culture warriors (sjws) are far more deserving of the label 'progressive', and generally the target of teeth gnashing about progressives. This is often taken as a personal, and non-sequiturial affront by those previous recipients of the label.
To level things up even more, while the phrase “spade a spade” doesn’t appear to have anything to do with race, “spade” is used as a slur for black people too!
"main" does seem like an objectively better word to use. The definition fits better in almost every use case.
May seem like a silly gesture to some, but imagine feeling an emotional trigger every time you had to use a basic tool for your job. That'd piss me off.
It's a bit of a paradox isn't it, if you really are emotionally triggered by people making a gesture to black developers, doesn't that suggest that developers are really easily emotionally triggered, and therefore making the gesture is actually important and therefore you shouldn't be triggered because it's not bending over backward to be politically correct it's actually tackling something that's a real issue?
Please just answer the question. I have a degree called "Master's degree". What should I call it now? If it's serious enough to warrant changing everyone's git workflow, surely a small gesture like updating my CV to remove potential trigger words is needed.
If we're really having this conversation here's your answer: the github term master comes from bitkeeper which was specifically using a master/slave idiom. Whereas Master in academia is derived from the Latin Magister which doesn't have the same reference to the master slave dynamic - it's literally just a homonym. So don't change your CV.
I'm sorry but you are mistaken. "Master" in git refers to "record master" which has nothing to do with a master-slave relationship. The master used in git is a homonym, not the same word.
Are they really doing anything to the black developers? All i see is white people tripping over one another doing what they think is the right thing. Democrats have been doing that for decades in historically democratic cities, and yet:
...because this is slacktivism lite. Rather than addressing actual issues facing african-americans today, we're engaging in silly naming changes that will have zero impact on 99.9% (optimistically) them
...because I don't want to be paying the externalities (workflow changes, having to keep up with the new "correct" naming) caused by a game of "who can be the most woke" between a vocal minority of progressives
Your first bullet is an argument against this change as being suboptimal. That there's a more optimally utilitarian use of the resources, which I get. The thing I don't get about this argument is that nothing Github (or any of us except for some weirdos) does is optimally utilitarian. They have a cartoon mascot! They don't _need_ that. You're not upset that they pay someone to draw Octocat, why be upset about this?
Your second bullet is an argument against this change from the position that it's an unasked for burden. In general, I get that. In the specific context of software engineering, it's a little more surprising. Tools, APIs, interfaces, terminology, etc... are in constant flux. Software has to be actively maintained to be kept functional. Software engineers have to always be learning in order to keep current. A vendor changing something like this is par for the course, right? Why such an extreme reaction?
It's a combination of the two factors. If a group of people want to one up each other by refactoring their side projects to be as woke as possible, that's fine by me. But if they're doing it and causing breakages and/or forcing everyone else to adapt, that's where I draw the line.
>A vendor changing something like this is par for the course, right? Why such an extreme reaction?
I'd be similarly pissed off if an upstream API provider suddenly decided to change all their identifier names for stylistic purposes. eg. the CTO woke up one day and decided that all of their API endpoints should be changed from camel case to snake case.
I guess the question is, has anyone said that they were personally hurt or offended by it. If anyone was individually affected and not just hurt on behalf of someone else, then by all means make the change.
However, if not, it looks like a cynical publicity grab in light of recent headlines.
Like i said, if the first thing that comes to your mind is slavery when seeing the word master in a computer programming environment, you're the racist.
I kind of get it, there's no real reason the default branch should be named master, but where do we stop? Will everyone with a master's degree have to update their resumes?
It stops when almost every word is offensive to someone in one way, shape, or form, and we are all forced to communicate in binary... excuse me, ones and zeros.
Using the term master doesn't bother me - in my opinion the idea of the master/slave dynamic is much less problematic when you're talking in the context of bits and bytes flicking up and down on some silicon. Having said that, if it bothers people, change it. I do suspect to a certain extent though that people are more interested in changing it because they're worried it might be offensive to other people than actually finding it offensive themselves.
The follow up tweet from the original reqeustor is:
> 1. “Main” is shorter! Yay brevity!
> 2. It’s even easier to remember, tbh
> 3. If it makes any of my teammates feel an ounce more comfortable, let’s do it!
> 4. If it prevents even a single black person from feeling more isolated in the tech community, feels like a no brainer to me!
1 - Not sure that's an important reason, why not change it to just "M"?
2 - Not for people who are already using git and have lived their entire lives on master (or for those more considerate developers, have lived their entire lives PRing into master)
3 & 4 - This is what I'm talking about, is there anyone who is actually feeling isolated and uncomfortable, or are there just a load of white people who have focused on literally the most unimportant aspect of being a black person in the tech community?
As a mysql DBA, this terminology issue made me uncomfortable for most of the past 15 years. I'm uncertain whether I agree that it's relevant in GitHub terms since we don't have upstream/master -> fork/slave, but it's inspired me to think about the term "master" in the mysql, git, and art proofing spaces simultaneously, so I'm glad they're making the change and I look forward to finding out what I think about it after some time has passed.
Databases have been slowly shifting to other terms for a while now. I.e. consensus algorithms typically speak about "leader election", replication systems use "primary"/"replica", ...
> or are there just a load of white people who have focused on literally the most unimportant aspect of being a black person in the tech community?
Seems that way. It's actually offensive to suggest that such a person should be offended in the first place. It's a "we know better than you and you should be offended" attitude.
> This is what I'm talking about, is there anyone who is actually feeling isolated and uncomfortable, or are there just a load of white people who have focused on literally the most unimportant aspect of being a black person in the tech community?
I'm a POC in the tech community and couldn't care less about "master" being problematic. The tweets you quoted likely came from a white person who thinks a little to highly of themselves and want to go after low-hanging fruit.
Want to make a difference for POCs and Black people? Vote the racists and profit-driven politicians out of office this November and replace them with people who are more qualified to lead and actually care about the public.
I totally agree with 1. If the shorter word is just as clear, it is better. "M" is not clear but "main" is.
And in fact, at work, we use both git and mercurial, and they have slightly different terminologies. In particular, git's "master" is mercurial's "default". The result is that we are sometimes mixing the two. And we naturally ended up calling the master/default branch the "main branch" with the understanding that it is "master" in git and "default" in mercurial.
That we naturally came up with this name means it is a good name. And because it is the shortest, it has my vote.
That you are all used to "master" is no excuse either. There are other version control systems than git, and "master" is not a universal convention. In mercurial, it is "default", and in SVN, it is "trunk". If you are a professional developer, you are probably going to use several different VCS during your career, and it is not a good thing getting too attached to "master".
The main problem I see with the change is that if you are just getting started with git, most training material will refer to "master", and having different conventions can make things confusing at first. Of course, experts know that there is nothing special about "master" and can adapt to any situation, but beginners need guidelines, and we might as well make them consistent.
I'm a strong supporter of social justice. I don't really object to people putting in work to change language like that if they think it's important. Especially when the work required is minimal.
That said, this is slightly ridiculous. Have customers seriously complained about the term "master"? And my impression was that the usage was more similar to "master copy" than "master of the plantation".
Honestly, it's frustrating to me that companies are willing to take token actions like this that are almost completely irrelevant in the scheme of things but unwilling to lose profit by, for example, not contracting with ICE. Actions like this feels like veiled advertising, even when, as I'm sure is true in this case, there are genuine motives behind them. It seems like the structure of corporations allows only the genuine intentions that require little sacrifice to be acted upon.
It's a stupid subject to have a flame war over, but I don't understand the logic at all.
It is when corporations have embraced and monetized counterculture. As if they are part of us but if analyzed by psychologists corporation was an individual was denoted a psychopath, that is why motions like this make me cringe and die a little on inside a little.
I don't think it's because people are offended at the use of the word master, in this case. I think, that it's symbolic. By making a point of getting rid of the word master, you're showing that black lives matter.
This forum should be above intellectually disingenuous comments such as this. This isn't Facebook, I'm not going to meme back at you. If you don't understand BLM at this point, that is a decision you've made and you will live with the moral and other implications.
Edit: likewise, it's perfectly reasonable to think the GitHub/git trend is silly or ineffective. But keep in mind that "virtue signalling" goes both ways. When you speak out against what you see as silly, ineffective but is ultimately well meaning, you're virtue signaling that "all lives matter."
So you're saying that Muslim people or Native Americans have not been targeted and discriminated against, and rather than have a movement that encourages justice and equality for all we should just focus on one race to unite us all? If I put a sign in my front yard that said White Lives Matter, would that not be considered racist?
I saw someone make an excellent point, when someone else was asking why we have a black history month in the United States but not a white history month. He said that we don't have a white history month because every month is white history month in the United States.
Why don't we have a Native American history month, or Hispanic? Is it because those races are just like white people, never have to face discrimination? Never have anyone judge them because of how they look?
Welp, guess you're right. There probably isn't a specific month-long celebration for every race, religion, culture, ethnicity, nationality, profession or identity on Earth.
Although California, at least (possibly other states, it's not worth my time to check), and Canada have Muslim appreciation/history months, and Jewish American Heritage month is in May, as is Asian Pacific American Heritage month.
Please don't bring up tired tropes like that one here. It's never going to change, so we're only going to get a tedious flamewar out of it, which indeed you've been perpetuating downthread—which, please don't.
It's not as if we lack for new things to discuss and argue about.
>> By making a point of getting rid of the word master, you're showing that black lives matter.
Utter Bullshit. You're pandering to a bunch of left wing nutjobs thinking they are doing something important. Why is that person on Twitter "super excited" to be doing this? Probably some form of virtue signaling. If anything it makes light of black lives.
The other time I saw a similar complaint was with a SPI bus where there is at least a "slave" node to go with the "master". And at least the person who complained was black that time.
Master has more than one meaning and someone feeling like they're changing the world by replacing an accurate and socially benign use of it needs therapy! Yes, I'm projecting but I'm Triggered! I need my safe space!
Please keep denunciatory flamewar rhetoric off this site. If you have a substantive point, you should have no trouble expressing it within the site guidelines.
Are we going to get rid of every word that a plantation owner ever used to insult the slaves? For words that specifically have no purpose other than conveying hate, I can understand stamping them out. But master has quite a few other meanings, most of which I would think existed before institutionalized slavery of black people existed. Seems a bit unproductive to target it. They had supervisors - should we stop using the word supervisor? What about boss? Or plantation? Could not the entire BDSM culture be considered in the same way, with its themes of bondage and servitude? Somehow I doubt that every time a sub asks a dom to crack a whip over their head they are celebrating slavery. How close does a word have to be to an issue relative to its other usages in order to be considered a symbol of that issue above all else?
It wasn't intended to be. It's an actual question - where does the cutoff point lie for something standing on its own vs it being considered a problematic and irredeemable symbol of an atrocity and how do we define it? How do we differentiate between when someone is an asshole or not?
I came across an example of this the other day after seeing the word used in a historical text for a class [0,1]. I was fairly certain it did not mean what it sounded like it meant so I looked into it. While the word does not have a definition associated with slavery (that I know of) and is thus arguably further away from the issue than the word master, its phonetics are enough for its usage to result in condemnation.
Lives can be ruined, either from an accusation over a misunderstanding or a failure to recognize actual harmful intent. Vagueness creates friction. To solve a problem there needs be a thorough and precise understanding, and when it involves multiple people there also needs to be a sufficiently common definition.
Which makes it actively harmful: Anything you do which is even somewhat ridiculous can be seized upon by your political enemies and turned into ammunition against you. They can claim your whole movement is about the ridiculous thing, and use it to derail discussions: "Yes, yes, that point is good, but did you know they renamed something in a piece of software just because it vaguely reminded someone of slavery? Time to talk about that now!"
Remember that we're talking about Microsoft here. We don't need to give them the benefit of the doubt. They've already shown by the actions over and over and over what kind of corporation they are.
2. "My impression" was my impression as someone new to git. I'm extrapolating other people, but I think it's fair to say that many (most?) people won't make the connection to chattel slavery.
3. Git is not directly modelled off Bitkeeper.
But like I said, I don't object to people changing the name, but more to people thinking changing the name is important.
No this is not a relic from bitkeeper. Why dont you ask the dev responsible instead of some random on a mailing list stringing assumptions to fit a narrative.
If the word master is considered evil, then what would happen to a Master Degree ? or Dojo Master ? Words have different meanings in different context, let's focus on changing language that changes the way you think.
How dare you. People in debt should not be discriminated against you insensitive clod!
Platinum degree is a far more neutral term! Wait... No, my PC adviser has just informed me it is unethical to discriminate on the inherent values of precious metal...
Are you...
Excuse me, I did not mean to discriminate as to suggest there is a tier of metals of a higher desirability or intrinsic value than any of the other metals. All metals should be valued for what they are, and our language with regard to degrees should reflect that.
Therefore, the formerly oppressive Master's degree shall henceforth be known as the Bachelor's+1 and some research degree...
Wait...
No, I'm sorry. I've just been informed that due to the Bachelor's degreebeing based on a 12th century term, Knight bachelor, which implied a knight too poor or lowly to gather men...er... People! People under their own banner banner... We'll have to go with the Second Degree and Third Degree's respectively... Oh God, burn victims now? Gods above, wait, monotheists? I mean God... Wait... Then the polytheists, deists, and atheists.... Uhhhhh...
The Orwellian linguistic engineering rabbit hole is a deep and terrifying place it behooves no one to muck with. One can keep the line of those insulted going all day.
Yas! And, I find the littir bitwiin "d" and "f" to b sixist and racist.
Lit's git a whol gang of fimynists togithir to mak iviryon chang thiir languag or loos thiir jobs.
This is the danger of simply declaring a word "bad". You get all sorts of edge cases like this. This is like an automotive web site trying to prevent people from talking about retarding your ignition timing to prevent detonation. Sometimes words simply mean different things in different contexts.
The terminology of master/slave architecture is a direct reference to the working relationships between people on an antebellum plantation. Names should help you understand what things do, and those names do. We also have node that elect leaders, nodes that get fenced, nodes with parents and children, etc...
The terminology of our software architecture, and of our software in general, mirrors that of the real world relationships that they model, reference, or are inspired by. That's a good thing. It helps us understand these systems. It's also true that if this terminology references something we don't like in the real world, we're free to change it. After all, master/slave architecture isn't a perfect modeling of a plantation, it's substantially abstract from that. There are many other relationships in the real world which could be used to describe this architecture.
Terminology is effective when it's stable, so we should be conservative about changing it, but that doesn't mean we should never change it.
Master in git doesn’t (as far as I understand) refer to master/slave architecture though. It’s a “master” as in as in the version from which copies are derived.
I feel the same way, and it’s depressing that people have to risk their reputation over this. If this was about people waving confederate flags or holding Nazi banners, we should do our best to keep those people out because these are symbols of ill intent used to send a clear message of hate towards minorities. But I have never seen people use the noun “master” as a symbol to spread hate. Moreover, I don’t think many people have even thought of slavery when referring to “master” in CS context before it was brought up in this manner.
But all this aside, this would’ve been a no-brainer if renaming the default branch didn’t have other real-world consequences. If it has a possible chance of making people happy, we should by all means do so. However, the proposed change is inevitably going to break many scripts out there that manipulate git repositories and forces additional work for countless people all over the industry. At this point, I think it’s reasonable to rethink whether this is actually going to improve the lives of anyone at all before proceeding.
"Moreover, I don’t think many people have even thought of slavery when referring to “master” in CS context before it was brought up in this manner."
That's probably true, and it's probably people who didn't have grandparents that were slaves. It's closer in mind to some more than others. And if we want to have CS be more open to the black community, then being sensitive to how words can turn people off is important.
Banning the use of a common noun is distractive and inflammatory while doing nothing at all to address the real issues. What are we going to do when the whole software industry is done wasting countless man-hours of work renaming git branches? Ban the use of the word "order" because that too might remind someone of slavery? This is just an endless rabbit hole that leads us nowhere. Why not we just address racial inequality directly?
I agree with you. The thing is that GitHub has EXPLICITLY stated that they will not break their operations with ICE. So they are doing "good press" work rather than doing actual support of BLM.
"I'm a strong supporter of social justice! M.L.K. was always my hero. I even got into college with a great essay on what a beloved leader of the civil rights movement he was!
As I said: strong supported.
But, come to think of it, if you tried to come up with the tiniest, most insignificant, free-as-in-beer-no-tax-increase, I-would't-even-notice-if-it-just-happen, quantum measure of any actual effort, grace, gesture, incon-slightest-venience? No that's where I draw a line.
I'm all gung-ho for righting 400 years of injustice. But for some reason I'm suddenly really invited in jargon. You seem to invest a lot of emotions into these terms, which I find silly. I, on the other hand, am entirely objective and have in no way attached and cultural significance to these terms.
But I might have to ro a search-and-replace. And that's why I'm opposing this with far more effort than that search-and-replace would ever take,
Of course, if your objections had actual merit, I would behave differently.
But I've thought long and hard how it would feel to be black and see these words being used.
And please be informed that I have felt absolutely not threatened, belittled, or exploited in my little thought experiment. Not at all.
And if I (and all my white male friends) can't feel bad about these terms, than nobody can. Because we define reality, and even subjectivity. For everyone.
>That said, this is slightly ridiculous. Have customers seriously complained about the term "master"? And my impression was that the usage was more similar to "master copy" than "master of the plantation".
We have solved poverty, work ethics problems in IT, we have great working culture, great salaries, we put demands and employers just throw money and resources at us. We run out of real problems to solve, so as humans - problem solving and pattern matching machines - we found another problem to solve.
In PostgreSQL it is master / standby. It still uses the word "master" though so you can rest assured that a purple haired transperson on Twitter is going to be triggered by it sooner or later.
Honest question: are there people out there who are legitimately uncomfortable/upset about the usage of the terms "master" and "slave" in the context of technology? Or is this more so people trying to be too socially "woke" and assuming something to be offensive when it is not?
Master/slave are pretty commonly used terms whenever we talk about things like distributed systems and communication buses. Essentially everywhere that one process, controller, computer, etc. is meant to have authority or control over some other entity or entities, this is often described as a master-slave relationship.
Yes, there are legitimately people who believe the master-slave terminology trivializes American slavery. They are mostly in the U.S. and probably a minority of programmers but they exist.
But in this case, there's not even a slave branch.
Also America is just one among the 100% of populated parts of the world that had chattel slavery at some point, it's pretty rich that ignorant people from America tricking themselves into being offended by this sort of thing should have any effect on other people's behaviour.
> Yes, there are legitimately people who believe the master-slave terminology trivializes American slavery.
I suppose this is something I don't understand. How do terms become trivial when used in separate contexts? They are simply descriptive terms. Furthermore, from an etymological standpoint, the term "master" has been used to signify preeminence since the 13th century. E.g. master's degree, master-key, master copy, etc. This is the meaning that seems more applicable to a version control system.
I agree with you in this case, since master is used by itself, similarly to master key.
But I'll try to provide some insight into the argument specifically regarding master and slave used together.
> How do terms become trivial when used in separate contexts? They are simply descriptive terms.
This is where I think you are incorrect. Master and slave are not simply descriptive terms. Pretty obviously, they are an analogy, just like, for example, male and female plugs. The point of analogies is that they use existing relationships to describe new relationships, so that understanding the new relationships is easier.
So I think the issue for some people is that in master/slave architectures, the master node neither brutally beats the slave nodes nor justifies its power through a theory of racial superiority. Maybe a more accurate analogy would be that one node is the leader and the others are the followers. Maybe we should only use the master/slave in situations which are actually comparable to the historic instances of chattel slavery. Plus, an updated analogy can better serve the purpose of describing relationships. In the context of databases, for example, primary/replica or master/replica are IMO both much better analogies than master/slave.
Sure you can argue they are simply descriptive terms. But if that's the case, why did engineers choose existing terms in the first place?
I've never been a fan of master/slave when it comes to disks etc. although I thought renaming it was dumb (previously). Glad things are moving away from it. But this isn't master/slave, it's master/fork. Of course now that I think about it, main/fork or even better primary/fork sounds good to me.
Would you please stop posting unsubstantive comments? You've done it a lot lately, unfortunately, and we ban that sort of account. Actually I did just ban you, but then your previous contributions seemed fine, so I reversed that and decided to make a request instead. We'd appreciate it.
The word “master” still makes sense to me, as it has many different meanings, most of which are appropriate for how they are used in technology.
However I have always felt that the word “slave” (as the counterpart to master) was/is a mistake. It seems to be a relic of the past where people weren’t really thinking through the terminology they chose.
More modern approaches typically use other word pairs, like master/minion, sever/client, active/backup, master/agent, etc. Different pairs are chosen that better describe the relationships, and I suspect those choices were made, at least in some way, to avoid using the term “slave”.
So there is an actual problem that they could work on. Often the branch which most users should clone and use is not the bleeding edge working branch, which often is master. It would be nice if you could set the default branch for cloning for most users somehow.
Nobody cares about the black slave auctions going on in Libya RIGHT NOW. But we are going to remove the word master from our software because it offends people whose ancestors were slaves generations ago.
What bugs me about crap like this is that it ignores world history, makes these people feel good about doing nothing of consequence, and takes attention away from things that will actually help.
If you are going to help, actually do something that improves the lives of people. Maybe, you should really put some effort into beefing up the Computer Science programs in black high schools and colleges? You are Microsoft, and had a damn policy of only hiring people from certain schools for certain job areas. In 90, one of your damn reps told a classroom of students that they were only good for "help desk" positions because of the school they went to. I'm betting some all black colleges were not on the hire list for actual developer jobs.
Actually doing something useful is hard, this is just signalling how cool you are.
You're complaining about indulgence! You're saying that this change won't help people as much as something else. This is a fair criticism. Changing some technical term is probably not a optimally utilitarian use of resources.
However, while you may be trying to live an optimally utilitarian life, the rest of us aren't. I can only speak for myself of course, but evaluating all my life's actions on only that axis is too strict for me.
No, I'm saying that it won't help people at all. Its an indulgence to make the person doing feel like they are doing something. It will not materially improve lives.
It would be fine if it just made them feel good, but it substitutes for efforts that would help. Its a personal indulgence taking energy from a system when more is needed. It also is a distraction from actual issues. Nothing is often better than something.
> However, while you may be trying to live an optimally utilitarian life, the rest of us aren't. I can only speak for myself of course, but evaluating all my life's actions on only that axis is too strict for me.
Yeah, this is wordplay that has nothing to do with me.
I see no supporting argument for “replacing master with main at GitHub hurts others”; is it somewhere in this thread and I wasn’t able to see it unassisted? If not, we would benefit from you typing it up.
I reviewed your initial post https://news.ycombinator.com/item?id=23500764 and I was unable to parse out of your objections why you think that this change hurts others. Could you summarize?
Inconsistent naming standards hurts everyone. Now some repositories will have master branches while others will have them named something else, it makes things harder to work with. If every developer spends just a minute wondering where the main branch is before realizing the new naming standards, that is still a lifetimes worth of time lost due to this change.
Ok, here is my objection. I'm saying that it won't help people at all. It is an indulgence to make Microsoft feel like they are doing something positive when it will not materially improve lives.
It would be fine if it just made them feel good as people's mental health is an important thing that too many ignore. But, this will suck attention away from people who are actually doing things that will help people. The world has only so much time to pay attention, and that time is valuable. Microsoft is just adding to the noise.
They are bringing homemade cupcakes to a food bank and making the national news.
What it does do is make a few people feel better because they are misinformed and so other things like education would be a better solution, something like "there's no need to feel bad about this word, and here's the logic about why."
And if you look at that it analogy of a tree, what is a "Master branch". Also what is a "Main branch". It's trunk. Of course then it would be called "The trunk branch", which sounds silly too me, and trunk has a couple sexual slangs tied to it. I read on person naming theirs 'prd', 'uat', and 'dev'. Less typing and describes what the branch is for.
Little known fact: The single, and only thing being done right now to address systemic racism is github renaming the default branch to master. I wish people would do other stuff like March, and donate money, and goad corporations into donating millions of dollars to minority owned businesses, passing new laws that address historical abuses of power and the police state.
But no. We've got 350 million people solely focused on getting this branch name changed. Its a huge waste!
I understand that you are trying to be constructive, but I'm quite surprised by your use of "black high school" and "black colleges". Is it still a thing in the US?
Wouldn't focusing on fixing this situation be more beneficial than reinforcing it?
I understand that you are trying to be constructive, but I'm quite surprised by your use of "black high school" and "black colleges". Is it still a thing in the US?
Yes it is "still a thing". They are mentioned in legislation as Black Colleges. It was an extremely big deal this year when Black Colleges were successful in lobbying for Title III funding. In fact, they are listed officially as Historically Black Colleges and Universities (HBCUs). Native American's higher education institutions are referred to officially as Tribal Colleges and Universities (TCUs).
Wouldn't focusing on fixing this situation be more beneficial than reinforcing it?
So, yes, that is what they are referred to in legislation, so stop trying to imply someone is not using the right words. It really ticks me off when people wordsmith but don't bother actually engaging or knowing any of the history of the people they are being offended for.
Maybe if you stopped implying racism where none exists, we would have a better world.
Wow, I did not expect so much aggressivity. Sorry if I hit some sensible point, but my question certainly did not aim to imply any kind of judgement.
I am not american and never heard about a "black college" before. Are those words (along with the TCUs you mentioned) used for historical reasons, or is there still segregation (wether legally or de-facto)?
The meaning of my second question was actually that I disagree that "beefing up the Computer Science programs in black high schools" will help much beyond a little short term relief. Efforts should focus about understanding and fixing the systemic problems, not the symptoms.
They aren't systematically segregated, mostly by circumstance and clustering by identity group. People tend to cluster in like-cultured communities either by country of origin and/or racial identity. It's not an absolute, but there are communities that are overwhelmingly black, chinese, japanese, etc.
Of course most of the real divides come down to income class, which is part of what should take an emphasis in terms of possible distribution of education funding.
TL;DR, the reason why these exist is because of historical discrimination against black people in college admissions.
While there is much less discrimination in admissions today then there was in, say, the early 1900's, these colleges still have a strong presence in the US today.
And to your point, yes I think we all (or at least most of us) want to live in a world where we don't need race-based communities or institutions, but because our country still suffers from extreme race-based segregation and inequality, IMO it still makes sense to have these active support structures in place.
I tend to bring this up in terms of hiring initiatives as well... if there are X% of people are of $identity Z in terms of the field in practice (let's say 20% female in software engineering). And a large company tries to hit 50% in hiring, they're actually reducing diversity across the industry.
What they should be doing is scholarship and mentoring programs to increase the base if that is their real goal. But that takes actual effort and costs real money.
Chattel slavery and slave markets have existed in Mauritania since before the first Europeans even set foot in Africa, and to this day they refuse to end the practice and have told the UN directly that they refuse to end the practice every time another UN member raises a fuss about it.
So yes, this is a token action meant to appease those that are never truly appeased due to their rapid movement of goalposts.
put more time into rebuilding the communities in which you physically reside than into bikeshedding quick symbolic actions to numb your conscience.
donate the cash equivalent to the engineering hours required to make and test this name change to BLM instead, and get something of actual consequence done.
Dear friends, do you think you’ll get anywhere in this if you learn all the right words but never do anything? Does merely talking about faith indicate that a person really has it? For instance, you come upon an old friend dressed in rags and half-starved and say, “Good morning, friend! Be clothed in Christ! Be filled with the Holy Spirit!” and walk off without providing so much as a coat or a cup of soup—where does that get you? Isn’t it obvious that God-talk without God-acts is outrageous nonsense?
I've said it before, and I predict it now again: a language that is named after valuable mineral chunks that are often/usually/predominately mined by slave labor in predominately non-white countries is better thinking about a rebrand.
Especially when it's basically ground zero for SJW activity in software development.
We're in a "six degrees of separation" between anything widely used in culture and something that can be deemed "racist." If you look, you will find something, no matter how stretched or tenuous the connection.
Do we have a national problem with pythons attacking a certain segment of our population? No? But you may be right that it's insensitive to those suffering from ophidiophobia.
279 comments
[ 3.8 ms ] story [ 346 ms ] threadI suppose we will just need to wait and see what happens.
In fact is it even git any more if the master branch isn't called master? Nope it's an incompatible fork by Microsoft purely by a chance encounter of irony.
Where exactly do you depend on knowing the name of the default branch of an unnamed repository, and how do you handle cases where people delete the master branch.
I don't think anybody would want people who delete the master branch.
Now even if this catches on, then yeah OK I'll start naming my branches as main unless I want to make a political statement, which would just add to confusion when developing.
Meanwhile these people will pat each other on the back, yell "yeah! We sure made a difference." while black people keep getting fucked by the system and their lives don't get improved one iota.
just... why?
It's called "virtue signalling," I'm told.
Let's call a spade a spade and recognize that this was a big company trying to sound "woke" without doing anything.
Is the SJW crowd not progressive? Are they not "real progressives"?
Because they can't see this, they're loath to let go of the label in spite of the fact that they're now 'just' liberals.
Left-aligned culture warriors (sjws) are far more deserving of the label 'progressive', and generally the target of teeth gnashing about progressives. This is often taken as a personal, and non-sequiturial affront by those previous recipients of the label.
Doesnt that mean i should align with these sjw types? Personally i find them detestful.
May seem like a silly gesture to some, but imagine feeling an emotional trigger every time you had to use a basic tool for your job. That'd piss me off.
I think you can say "that people are arguing about it makes it significantly political".
I don't think you can say "that people are arguing about it makes it a meaningful thing to do".
Highest debts = Democrat states
Highest crime rates = Democrat states
Highest death tolls from Covid = Democrat states
Highest homeless per capita = Democrat states
Highest unemployment rating = Democrat states
Highest taxes = Democrat states
Lowest literacy rates = Democrat states
Lowest two parent homes = Democrat states
How is that?
Why is this so upsetting?
...because I don't want to be paying the externalities (workflow changes, having to keep up with the new "correct" naming) caused by a game of "who can be the most woke" between a vocal minority of progressives
Your second bullet is an argument against this change from the position that it's an unasked for burden. In general, I get that. In the specific context of software engineering, it's a little more surprising. Tools, APIs, interfaces, terminology, etc... are in constant flux. Software has to be actively maintained to be kept functional. Software engineers have to always be learning in order to keep current. A vendor changing something like this is par for the course, right? Why such an extreme reaction?
>A vendor changing something like this is par for the course, right? Why such an extreme reaction?
I'd be similarly pissed off if an upstream API provider suddenly decided to change all their identifier names for stylistic purposes. eg. the CTO woke up one day and decided that all of their API endpoints should be changed from camel case to snake case.
However, if not, it looks like a cynical publicity grab in light of recent headlines.
The follow up tweet from the original reqeustor is:
> 1. “Main” is shorter! Yay brevity!
> 2. It’s even easier to remember, tbh
> 3. If it makes any of my teammates feel an ounce more comfortable, let’s do it!
> 4. If it prevents even a single black person from feeling more isolated in the tech community, feels like a no brainer to me!
1 - Not sure that's an important reason, why not change it to just "M"?
2 - Not for people who are already using git and have lived their entire lives on master (or for those more considerate developers, have lived their entire lives PRing into master)
3 & 4 - This is what I'm talking about, is there anyone who is actually feeling isolated and uncomfortable, or are there just a load of white people who have focused on literally the most unimportant aspect of being a black person in the tech community?
Seems that way. It's actually offensive to suggest that such a person should be offended in the first place. It's a "we know better than you and you should be offended" attitude.
I'm a POC in the tech community and couldn't care less about "master" being problematic. The tweets you quoted likely came from a white person who thinks a little to highly of themselves and want to go after low-hanging fruit.
Want to make a difference for POCs and Black people? Vote the racists and profit-driven politicians out of office this November and replace them with people who are more qualified to lead and actually care about the public.
They're still politicians, right?
And in fact, at work, we use both git and mercurial, and they have slightly different terminologies. In particular, git's "master" is mercurial's "default". The result is that we are sometimes mixing the two. And we naturally ended up calling the master/default branch the "main branch" with the understanding that it is "master" in git and "default" in mercurial.
That we naturally came up with this name means it is a good name. And because it is the shortest, it has my vote.
That you are all used to "master" is no excuse either. There are other version control systems than git, and "master" is not a universal convention. In mercurial, it is "default", and in SVN, it is "trunk". If you are a professional developer, you are probably going to use several different VCS during your career, and it is not a good thing getting too attached to "master".
The main problem I see with the change is that if you are just getting started with git, most training material will refer to "master", and having different conventions can make things confusing at first. Of course, experts know that there is nothing special about "master" and can adapt to any situation, but beginners need guidelines, and we might as well make them consistent.
If the word master makes some black people feel uncomfortable, the issue isn't git. It lies in the society.
That said, this is slightly ridiculous. Have customers seriously complained about the term "master"? And my impression was that the usage was more similar to "master copy" than "master of the plantation".
Honestly, it's frustrating to me that companies are willing to take token actions like this that are almost completely irrelevant in the scheme of things but unwilling to lose profit by, for example, not contracting with ICE. Actions like this feels like veiled advertising, even when, as I'm sure is true in this case, there are genuine motives behind them. It seems like the structure of corporations allows only the genuine intentions that require little sacrifice to be acted upon.
It's a stupid subject to have a flame war over, but I don't understand the logic at all.
Edit: likewise, it's perfectly reasonable to think the GitHub/git trend is silly or ineffective. But keep in mind that "virtue signalling" goes both ways. When you speak out against what you see as silly, ineffective but is ultimately well meaning, you're virtue signaling that "all lives matter."
Although California, at least (possibly other states, it's not worth my time to check), and Canada have Muslim appreciation/history months, and Jewish American Heritage month is in May, as is Asian Pacific American Heritage month.
It's not as if we lack for new things to discuss and argue about.
https://news.ycombinator.com/newsguidelines.html
Utter Bullshit. You're pandering to a bunch of left wing nutjobs thinking they are doing something important. Why is that person on Twitter "super excited" to be doing this? Probably some form of virtue signaling. If anything it makes light of black lives.
The other time I saw a similar complaint was with a SPI bus where there is at least a "slave" node to go with the "master". And at least the person who complained was black that time.
Master has more than one meaning and someone feeling like they're changing the world by replacing an accurate and socially benign use of it needs therapy! Yes, I'm projecting but I'm Triggered! I need my safe space!
https://news.ycombinator.com/newsguidelines.html
I came across an example of this the other day after seeing the word used in a historical text for a class [0,1]. I was fairly certain it did not mean what it sounded like it meant so I looked into it. While the word does not have a definition associated with slavery (that I know of) and is thus arguably further away from the issue than the word master, its phonetics are enough for its usage to result in condemnation.
Lives can be ruined, either from an accusation over a misunderstanding or a failure to recognize actual harmful intent. Vagueness creates friction. To solve a problem there needs be a thorough and precise understanding, and when it involves multiple people there also needs to be a sufficiently common definition.
[0]: http://www.americanyawp.com/reader/16-capital-and-labor/will...
[1]: https://www.wikiwand.com/en/Controversies_about_the_word_nig...
Which makes it actively harmful: Anything you do which is even somewhat ridiculous can be seized upon by your political enemies and turned into ammunition against you. They can claim your whole movement is about the ridiculous thing, and use it to derail discussions: "Yes, yes, that point is good, but did you know they renamed something in a piece of software just because it vaguely reminded someone of slavery? Time to talk about that now!"
Evidently, this is a relic from bitkeeper which uses the "master/slave" terminology.
https://github.com/bitkeeper-scm/bitkeeper/blob/master/doc/H...
https://mail.gnome.org/archives/desktop-devel-list/2019-May/...
1. There are no slave branches.
2. "My impression" was my impression as someone new to git. I'm extrapolating other people, but I think it's fair to say that many (most?) people won't make the connection to chattel slavery.
3. Git is not directly modelled off Bitkeeper.
But like I said, I don't object to people changing the name, but more to people thinking changing the name is important.
https://mobile.twitter.com/xpasky/status/1272280760280637441
Master represents the final version of a component or software which ends up in production. It is the same meaning as an audio master (https://en.wikipedia.org/wiki/Mastering_(audio))
If the word master is considered evil, then what would happen to a Master Degree ? or Dojo Master ? Words have different meanings in different context, let's focus on changing language that changes the way you think.
Platinum degree is a far more neutral term! Wait... No, my PC adviser has just informed me it is unethical to discriminate on the inherent values of precious metal...
Are you...
Excuse me, I did not mean to discriminate as to suggest there is a tier of metals of a higher desirability or intrinsic value than any of the other metals. All metals should be valued for what they are, and our language with regard to degrees should reflect that.
Therefore, the formerly oppressive Master's degree shall henceforth be known as the Bachelor's+1 and some research degree...
Wait...
No, I'm sorry. I've just been informed that due to the Bachelor's degreebeing based on a 12th century term, Knight bachelor, which implied a knight too poor or lowly to gather men...er... People! People under their own banner banner... We'll have to go with the Second Degree and Third Degree's respectively... Oh God, burn victims now? Gods above, wait, monotheists? I mean God... Wait... Then the polytheists, deists, and atheists.... Uhhhhh...
The Orwellian linguistic engineering rabbit hole is a deep and terrifying place it behooves no one to muck with. One can keep the line of those insulted going all day.
I however, have work to get back to doing.
The terminology of our software architecture, and of our software in general, mirrors that of the real world relationships that they model, reference, or are inspired by. That's a good thing. It helps us understand these systems. It's also true that if this terminology references something we don't like in the real world, we're free to change it. After all, master/slave architecture isn't a perfect modeling of a plantation, it's substantially abstract from that. There are many other relationships in the real world which could be used to describe this architecture.
Terminology is effective when it's stable, so we should be conservative about changing it, but that doesn't mean we should never change it.
https://twitter.com/xpasky/status/1272280760280637441
But all this aside, this would’ve been a no-brainer if renaming the default branch didn’t have other real-world consequences. If it has a possible chance of making people happy, we should by all means do so. However, the proposed change is inevitably going to break many scripts out there that manipulate git repositories and forces additional work for countless people all over the industry. At this point, I think it’s reasonable to rethink whether this is actually going to improve the lives of anyone at all before proceeding.
That's probably true, and it's probably people who didn't have grandparents that were slaves. It's closer in mind to some more than others. And if we want to have CS be more open to the black community, then being sensitive to how words can turn people off is important.
As I said: strong supported.
But, come to think of it, if you tried to come up with the tiniest, most insignificant, free-as-in-beer-no-tax-increase, I-would't-even-notice-if-it-just-happen, quantum measure of any actual effort, grace, gesture, incon-slightest-venience? No that's where I draw a line.
I'm all gung-ho for righting 400 years of injustice. But for some reason I'm suddenly really invited in jargon. You seem to invest a lot of emotions into these terms, which I find silly. I, on the other hand, am entirely objective and have in no way attached and cultural significance to these terms.
But I might have to ro a search-and-replace. And that's why I'm opposing this with far more effort than that search-and-replace would ever take,
Of course, if your objections had actual merit, I would behave differently.
But I've thought long and hard how it would feel to be black and see these words being used.
And please be informed that I have felt absolutely not threatened, belittled, or exploited in my little thought experiment. Not at all.
And if I (and all my white male friends) can't feel bad about these terms, than nobody can. Because we define reality, and even subjectivity. For everyone.
Go BLM!
We have solved poverty, work ethics problems in IT, we have great working culture, great salaries, we put demands and employers just throw money and resources at us. We run out of real problems to solve, so as humans - problem solving and pattern matching machines - we found another problem to solve.
EDIT: in case anyone's confused: MC = Master of Ceremonies
Master/slave are pretty commonly used terms whenever we talk about things like distributed systems and communication buses. Essentially everywhere that one process, controller, computer, etc. is meant to have authority or control over some other entity or entities, this is often described as a master-slave relationship.
But in this case, there's not even a slave branch.
I suppose this is something I don't understand. How do terms become trivial when used in separate contexts? They are simply descriptive terms. Furthermore, from an etymological standpoint, the term "master" has been used to signify preeminence since the 13th century. E.g. master's degree, master-key, master copy, etc. This is the meaning that seems more applicable to a version control system.
But I'll try to provide some insight into the argument specifically regarding master and slave used together.
> How do terms become trivial when used in separate contexts? They are simply descriptive terms.
This is where I think you are incorrect. Master and slave are not simply descriptive terms. Pretty obviously, they are an analogy, just like, for example, male and female plugs. The point of analogies is that they use existing relationships to describe new relationships, so that understanding the new relationships is easier.
So I think the issue for some people is that in master/slave architectures, the master node neither brutally beats the slave nodes nor justifies its power through a theory of racial superiority. Maybe a more accurate analogy would be that one node is the leader and the others are the followers. Maybe we should only use the master/slave in situations which are actually comparable to the historic instances of chattel slavery. Plus, an updated analogy can better serve the purpose of describing relationships. In the context of databases, for example, primary/replica or master/replica are IMO both much better analogies than master/slave.
Sure you can argue they are simply descriptive terms. But if that's the case, why did engineers choose existing terms in the first place?
https://news.ycombinator.com/newsguidelines.html
However I have always felt that the word “slave” (as the counterpart to master) was/is a mistake. It seems to be a relic of the past where people weren’t really thinking through the terminology they chose.
More modern approaches typically use other word pairs, like master/minion, sever/client, active/backup, master/agent, etc. Different pairs are chosen that better describe the relationships, and I suspect those choices were made, at least in some way, to avoid using the term “slave”.
Edit: so it does! You learn something new...
If you are going to help, actually do something that improves the lives of people. Maybe, you should really put some effort into beefing up the Computer Science programs in black high schools and colleges? You are Microsoft, and had a damn policy of only hiring people from certain schools for certain job areas. In 90, one of your damn reps told a classroom of students that they were only good for "help desk" positions because of the school they went to. I'm betting some all black colleges were not on the hire list for actual developer jobs.
Actually doing something useful is hard, this is just signalling how cool you are.
Hell, switching your Amazon account to one of those smile accounts will do more good than signalling.
You're complaining about indulgence! You're saying that this change won't help people as much as something else. This is a fair criticism. Changing some technical term is probably not a optimally utilitarian use of resources.
However, while you may be trying to live an optimally utilitarian life, the rest of us aren't. I can only speak for myself of course, but evaluating all my life's actions on only that axis is too strict for me.
But, like I said, if you want to do that: props.
It would be fine if it just made them feel good, but it substitutes for efforts that would help. Its a personal indulgence taking energy from a system when more is needed. It also is a distraction from actual issues. Nothing is often better than something.
> However, while you may be trying to live an optimally utilitarian life, the rest of us aren't. I can only speak for myself of course, but evaluating all my life's actions on only that axis is too strict for me.
Yeah, this is wordplay that has nothing to do with me.
Utilitarianism is a philosophical framework. It's not for me, but based on your comments you might be into it:
https://en.wikipedia.org/wiki/Utilitarianism
It would be fine if it just made them feel good as people's mental health is an important thing that too many ignore. But, this will suck attention away from people who are actually doing things that will help people. The world has only so much time to pay attention, and that time is valuable. Microsoft is just adding to the noise.
They are bringing homemade cupcakes to a food bank and making the national news.
What it does do is make a few people feel better because they are misinformed and so other things like education would be a better solution, something like "there's no need to feel bad about this word, and here's the logic about why."
But no. We've got 350 million people solely focused on getting this branch name changed. Its a huge waste!
Wouldn't focusing on fixing this situation be more beneficial than reinforcing it?
Yes it is "still a thing". They are mentioned in legislation as Black Colleges. It was an extremely big deal this year when Black Colleges were successful in lobbying for Title III funding. In fact, they are listed officially as Historically Black Colleges and Universities (HBCUs). Native American's higher education institutions are referred to officially as Tribal Colleges and Universities (TCUs).
Wouldn't focusing on fixing this situation be more beneficial than reinforcing it?
So, yes, that is what they are referred to in legislation, so stop trying to imply someone is not using the right words. It really ticks me off when people wordsmith but don't bother actually engaging or knowing any of the history of the people they are being offended for.
Maybe if you stopped implying racism where none exists, we would have a better world.
I am not american and never heard about a "black college" before. Are those words (along with the TCUs you mentioned) used for historical reasons, or is there still segregation (wether legally or de-facto)?
The meaning of my second question was actually that I disagree that "beefing up the Computer Science programs in black high schools" will help much beyond a little short term relief. Efforts should focus about understanding and fixing the systemic problems, not the symptoms.
Of course most of the real divides come down to income class, which is part of what should take an emphasis in terms of possible distribution of education funding.
https://en.wikipedia.org/wiki/Historically_black_colleges_an...
TL;DR, the reason why these exist is because of historical discrimination against black people in college admissions.
While there is much less discrimination in admissions today then there was in, say, the early 1900's, these colleges still have a strong presence in the US today.
And to your point, yes I think we all (or at least most of us) want to live in a world where we don't need race-based communities or institutions, but because our country still suffers from extreme race-based segregation and inequality, IMO it still makes sense to have these active support structures in place.
What they should be doing is scholarship and mentoring programs to increase the base if that is their real goal. But that takes actual effort and costs real money.
I don't mind renaming it but it feels like a token action without any real weight.
So yes, this is a token action meant to appease those that are never truly appeased due to their rapid movement of goalposts.
donate the cash equivalent to the engineering hours required to make and test this name change to BLM instead, and get something of actual consequence done.
Dear friends, do you think you’ll get anywhere in this if you learn all the right words but never do anything? Does merely talking about faith indicate that a person really has it? For instance, you come upon an old friend dressed in rags and half-starved and say, “Good morning, friend! Be clothed in Christ! Be filled with the Holy Spirit!” and walk off without providing so much as a coat or a cup of soup—where does that get you? Isn’t it obvious that God-talk without God-acts is outrageous nonsense?
edit: not to mention 30 years of:
if branch in ['master', 'main'] ...
Especially when it's basically ground zero for SJW activity in software development.
Let's hope they settle for just making people beg and grovel.
I'm not suggesting it's a good point, I'm just pointing out that there's going to be a lot of renaming to do.
I wasn't really trying to make a point there, just wanted to be (arguably) funny.