22 votes

Replacing (potentially) insensitive terminology in programming

104 comments

  1. [42]
    eyybby
    Link
    So this topic seems to bubble up every few months but I wonder what the ~tildes community in general feels about it. I'll give my overall viewpoint and then thoughts on the specifics of the...

    So this topic seems to bubble up every few months but I wonder what the ~tildes community in general feels about it. I'll give my overall viewpoint and then thoughts on the specifics of the article.

    I want the programming community and every project within it to be open and accepting of everyone. I think it is the responsibility of everyone in the community to actively work to make it more inclusive and diverse, and this should take the form of proactive action whenever possible and listening and responding thoughtfully to any critique. In general, I think the programming community is quite aware of its issues and has taken good measures to improve the state of tech long term. There is certainly a ways to go, but compared to other industries, programming is ahead of the curve in my opinion.

    Related to this specific article, if people are triggered by certain terms or they are acting as a barrier for people to be involved in the programming community, then for sure. Lets find replacements. I understand the issues with master/slave and think that we should most likely deprecate those terms and have new terminology. Changing master as a standalone word however for the primary/main git branch really stinks of something similar to rainbow capitalism to me. The word master shouldn't be an issue for someone to see or use in this context. Mastercard, Master locks, a master key, these are words you can see daily and the context of "master" in "master key" is more in line with master for git branches than master/slave. Whitelist/Blacklist would fall under the same category. If it's exclusionary, I have no issue whatsoever with using equivalent terminology for them.

    Really I'm wondering if people consider replacing these and similar terms to be an essential action we should take to make the community more accessible, or if this a bit like virtue signalling and should be pushed back against or some opinion in the middle?

    26 votes
    1. [29]
      mftrhu
      (edited )
      Link Parent
      When someone says "virtue signaling", the only thing I hear is "I cannot believe that other people can care about things that don't directly affect themselves; those who claim they do must be...

      When someone says "virtue signaling", the only thing I hear is "I cannot believe that other people can care about things that don't directly affect themselves; those who claim they do must be lying about it to cash on those sweet, sweet SJW points". It's not even a meaningless expression, it's flat-out accusing people of being disingenuous in their support of minorities.

      Yes, master/slave is not a big deal, except for a minority of people. The same goes for whitelist and blacklist, especially for those who are not immersed in US culture and politics. They mean very little, they are just pointers to concepts, and that's the problem.

      Every single time something of the sort comes up, people come out of the woodwork to stand against the "SJW interference" with their "apolitical coding". They go "hey, do you want to be triggered?" to post a link to some of these issues, and then proceed to pat each other on the back because they are not like those stupid SJWs*. "Hah, are they really concerned with these meaningless words? PC gone mad, I swear!"

      But if they mean nothing, then why are they so strenuous in their opposition?

      And when they do mean something - because if "blacklist/whitelist" won't make most people bat an eye, assuming that everyone is a man is a problem, and gender-neutral language does matter to many - why are they treating it the same way?*

      Replacing these terms is not essential per se, but it works wonders in bringing the actual problems to the light.

      The programming community is reactionary, full of people who are almost terminally centrist when they don't delight in being edgelords, still very much cis-/hetero-normative, male- and white-centric by default. The way to be accepted is to not "behave" like a trans person, or a gay person, or "act" too female or black - to not rock the boat, to not bring up the issues you care about too often, and to be ready to argue against dozens of "devil's advocates" every time you do.

      That is a problem, and I refuse to let people confuse the issue with this.


      * In both cases, I have experienced it happening. Ironically, it was in a small group which splintered from a larger one exactly because of the anti-SJW, anti-PC asshats in the latter.
      See also: every damn time a Code of Conduct is proposed, with people alternating between "the idea of CoCs is offensive because we don't need some document to tell us to behave, we are already doing it!" and "it's a slippery slope, it will see the SJWs take our jobs!"

      24 votes
      1. [26]
        onyxleopard
        Link Parent
        I totally recognize that this terminology is racist. However! The master/slave dichotomy is not what is being invoked by the term master as used in git. The master branch, as used in the context...

        Yes, master/slave is not a big deal, except for a minority of people.

        I totally recognize that this terminology is racist.

        However! The master/slave dichotomy is not what is being invoked by the term master as used in git. The master branch, as used in the context of version control in git is more like this definition from the New Oxford American Dictionary:

        an original movie, recording, or document from which copies can be made: [as modifier] : the master tape.

        A "master branch" is exactly this sense of 'master'. It is the original branch which is used as a basis for new work to be branched from. There is no concept of slave in git (even if there was in version control systems that predate it).

        So, in this case, if someone perceives the term master as problematic, they are perceiving a different meaning of the term than is intended. We can argue about whether intentionality is important when it comes to issues of systemic racism, but I think this policing of language is over-reaching. Natural languages are inherently ambiguous. Those who use natural language shouldn’t have to reduce their vocabularies to exclude ambiguous terms just because someone might interpret an unintended meaning. Should the music and movie industries stop using the term 'master' as well?

        21 votes
        1. [15]
          Wes
          Link Parent
          That seems less likely than git borrowing from other version control systems, which were based on master/slave. Either way though it's a minor change. The default branch will be "main" for future...

          The master branch, as used in the context of version control in git is more like this definition from the New Oxford American Dictionary:

          That seems less likely than git borrowing from other version control systems, which were based on master/slave.

          Either way though it's a minor change. The default branch will be "main" for future repos when created on GitHub. It doesn't hurt anything, and it may help some, so I don't see anything wrong with that.

          7 votes
          1. [12]
            onyxleopard
            Link Parent
            If the original meaning was in the sense of the master/slave dichotomy, that dichotomy no longer exists in git. The semantics have changed. To insist that terms are problematic per se, rather than...

            That seems less likely than git borrowing from other version control systems, which were based on master/slave.

            If the original meaning was in the sense of the master/slave dichotomy, that dichotomy no longer exists in git. The semantics have changed. To insist that terms are problematic per se, rather than based on their intended meaning and use in context is incredibly frustrating to me, as a linguist. Suggesting that one should self-censor in order to preempt potential ignorant misinterpretations is equally as problematic to me as suggesting that one should adhere to prescriptive grammar to appease grammar nazis.

            13 votes
            1. [11]
              Wes
              Link Parent
              You say it is an ignorant misinterpretation, but conversations are bidirectional. There is just as much responsibility on the speaker to be clear as there is on the listener to understand. In this...

              Suggesting that one should self-censor in order to preempt potential ignorant misinterpretations

              You say it is an ignorant misinterpretation, but conversations are bidirectional. There is just as much responsibility on the speaker to be clear as there is on the listener to understand.

              In this example, if one party understands "master" to be offensive and the other party doesn't, that doesn't make one of them wrong. They each have different histories, understandings, and world views. Words will have different meanings to them. Instead of arguing about who is right, they need to come to an understanding to be able to communicate effectively. Language simply doesn't work otherwise.

              Now I don't have any history of slavery in my family so I can't say if the term is problematic or not. But it is very easy for me to accept a change from "master" to "main". It doesn't create any new problems, and appears to solve some existing ones. So I am happy to do that to make future communication easier.

              3 votes
              1. [9]
                onyxleopard
                Link Parent
                If I use a certain sense of an ambiguous word, it is true that I am responsible for making my meaning clear. The way to do this is context. In the context of git and GitHub, the sense of master is...

                In this example, if one party understands "master" to be offensive and the other party doesn't, that doesn't make one of them wrong.

                If I use a certain sense of an ambiguous word, it is true that I am responsible for making my meaning clear. The way to do this is context. In the context of git and GitHub, the sense of master is abundantly clear from context. The proposed replacement term main is equally or potentially more ambiguous than master, it just happens to not have a potentially racist connotation for its many possible interpretations.

                Words will have different meanings to them.

                Precisely! And if I use one sense of a word, and you interpret a different sense, that can lead to miscommunication. That is why context is important, along with pragmatics. If you are going to ignore the context and insist that some words are problematic regardless of context you are not being a cooperative communicator.

                It doesn't create any new problems, and appears to solve some existing ones.

                It raises the question of all other identifiers in git and GitHub (or in any other software you care to inspect). Should git change the term cherry-pick because of other senses of 'cherry'?

                [in singular] informal one's virginity: only 3 percent of the students lost their cherry at college.

                I can also imagine this sense is offensive to the sensibilities of some population, so by the precedent set here, mustn’t we change this, too?

                If you don’t think the case of cherry-pick is the same as the case of master, can you articulate why? Because, I see no principled way to say that master was worth changing if cherry-pick isn’t.

                7 votes
                1. Wes
                  Link Parent
                  The simplest answer is that some have expressed concern against "master", but not "cherry". That's good enough for me. If a group found cherry offensive, or if there had been a history of abuse...

                  If you don’t think the case of cherry-pick is the same as the case of master, can you articulate why?

                  The simplest answer is that some have expressed concern against "master", but not "cherry". That's good enough for me. If a group found cherry offensive, or if there had been a history of abuse related to the word cherry, then I think it would be quite reasonable to pick a different word there too.

                  Ultimately there isn't any universal rule that determines if a word is offensive. There's no means of putting a word on trial to get to a universal truth. In the end some will find it offensive, others will not, and it's our decision to be accommodating for those that do.

                  If you are going to ignore the context and insist that some words are problematic regardless of context you are not being a cooperative communicator.

                  Context does of course matter, and realistically I doubt there were a large number of people who found the use of master in this particular context to be offensive. But it's clear that some did. GitHub is making a change to accommodate those people, and I'm okay with that. It doesn't harm me in any way.

                  I think we're just of two different minds about this.

                  5 votes
                2. [7]
                  radiator
                  Link Parent
                  that seems like a non sequitur? i mean, there aren't protests going on about systemic injustices stemming from a history of... uh... checks notes... virginity.

                  Should git change the term cherry-pick because of other senses of 'cherry'?

                  that seems like a non sequitur? i mean, there aren't protests going on about systemic injustices stemming from a history of... uh... checks notes... virginity.

                  2 votes
                  1. [6]
                    onyxleopard
                    Link Parent
                    The logical sequence is quite easy to follow. If one decides to appease every person who willfully misinterprets your words, you’ll spend your whole life mincing your words rather than saying what...

                    The logical sequence is quite easy to follow. If one decides to appease every person who willfully misinterprets your words, you’ll spend your whole life mincing your words rather than saying what you mean.

                    7 votes
                    1. [2]
                      cfabbro
                      (edited )
                      Link Parent
                      It's worth noting that in this particular case the original dev who picked the term "master" in git has chimed in saying he approves of it being changed to "main", wishes he had used that to start...

                      willfully misinterprets your words

                      It's worth noting that in this particular case the original dev who picked the term "master" in git has chimed in saying he approves of it being changed to "main", wishes he had used that to start with, and that he might have actually been inspired by the "master/slave" terminology used in bitkeeper (so people may not be entirely off-base in their criticism of the term):
                      https://tildes.net/~comp/pra/replacing_potentially_insensitive_terminology_in_programming#comment-57cr

                      6 votes
                      1. onyxleopard
                        Link Parent
                        Naming things is hard. More so when you’re a non-native speaker. Still, even if Baudis approves of the change, it’s clear to me that he did not intend any harm in his original naming choice, and...

                        Naming things is hard. More so when you’re a non-native speaker. Still, even if Baudis approves of the change, it’s clear to me that he did not intend any harm in his original naming choice, and since there is no concept of 'slave' branches in git from the beginning, I still contend this is language policing over-reach. If I were Microsoft, I’d spend my resources making more substantive changes within my power to support and amplify the voices of the current protest movement.

                        2 votes
                    2. [3]
                      radiator
                      Link Parent
                      i guess i shouldn't have jumped into an ongoing conversation. i thought we were talking about the word "master" being an uncomfortable term in tech, because "master" has the connotation of being...

                      i guess i shouldn't have jumped into an ongoing conversation.

                      i thought we were talking about the word "master" being an uncomfortable term in tech, because "master" has the connotation of being associated with "master/slave" in very similar contexts (as an analogy for primary/secondary). that's how i learned about it in my computer architecture classes with buses. and, that connotation is especially relevant in this moment in time.

                      i don't really know how you got to "people who willfully misinterpret other people's words", but we're in two very different headspaces right now. you're abstracting things to the general case, whereas i'm focused on this specific situation in this specific context.

                      1 vote
                      1. [2]
                        onyxleopard
                        Link Parent
                        As I’ve already explained in this thread (if you’d bother to read it rather than jumping in without context), you’d understand that the sense of “master” in the context of git is distinct from the...

                        As I’ve already explained in this thread (if you’d bother to read it rather than jumping in without context), you’d understand that the sense of “master” in the context of git is distinct from the “master/slave” sense.

                        3 votes
                        1. [2]
                          Comment deleted by author
                          Link Parent
                          1. cfabbro
                            Link Parent
                            It takes two to tango. Why not just walk away?

                            It takes two to tango. Why not just walk away?

                            4 votes
              2. Account
                Link Parent
                That's the unfortunate side effect of using text to communicate with others. Tone, meaning, and conversation direction will become skewed based on how each individual reader decides to interpret...

                There is just as much responsibility on the speaker to be clear as there is on the listener to understand.

                That's the unfortunate side effect of using text to communicate with others. Tone, meaning, and conversation direction will become skewed based on how each individual reader decides to interpret the words displayed before them.

          2. [2]
            actionscripted
            Link Parent
            It's not speculative, the person responsible for "master" in Git intended it as "original copy" not "master/slave": https://twitter.com/xpasky/status/1272280760280637441 And for many folks using...

            It's not speculative, the person responsible for "master" in Git intended it as "original copy" not "master/slave": https://twitter.com/xpasky/status/1272280760280637441

            And for many folks using systems that automatically handle things by looking for a "master" branch this has a huge impact. It's not trivial at all and I don't think you know enough about any of this to say otherwise.

            8 votes
            1. Wes
              Link Parent
              You've left out his other tweets though, where he says he regrets the choice and may in fact have been influenced by other software using the master/slave origin. Please see Deimos' comment which...

              You've left out his other tweets though, where he says he regrets the choice and may in fact have been influenced by other software using the master/slave origin. Please see Deimos' comment which links further sources.

              https://tildes.net/~comp/pra/replacing_potentially_insensitive_terminology_in_programming#comment-57cr

              3 votes
        2. [10]
          mftrhu
          Link Parent
          I don't care about it. It's not about any specific word, as this perennial "scandal" is just a way for reactionaries to confuse the issue. In any case, the etymology of any particular word is...

          I don't care about it.

          It's not about any specific word, as this perennial "scandal" is just a way for reactionaries to confuse the issue.

          In any case, the etymology of any particular word is irrelevant. When communicating, the only thing that matters is what the people you are talking to perceive. Some people clearly perceive the word ${word:-master} as tainted, and they have proposed replacements that would work as well, if not better.

          Changing that, again, changes very little, and it's very interesting to observe just who opposes it, and on what grounds. Policing of language, if anything, is an excellent way to make assholes come out of the woodwork and congregate.

          Should the music and movie industries stop using the term 'master' as well?

          Why not? Why should it stay that way?

          5 votes
          1. [8]
            onyxleopard
            Link Parent
            Because words can have multiple meanings! Polysemy is inherent to natural language! Are we really going to go through every word in every natural language and reduce each one to the most racially...

            Why not? Why should it stay that way?

            Because words can have multiple meanings! Polysemy is inherent to natural language! Are we really going to go through every word in every natural language and reduce each one to the most racially insensitive sense we can think of, ignoring all the equally valid senses? What about domains other than racism? Are we going to say that languages that have grammatical gender are problematic now, too, because someone might ignorantly perceive that as bigoted?

            13 votes
            1. [7]
              mftrhu
              (edited )
              Link Parent
              Why not? It's just words. Language changes, and it always did that. Why should it not do so to remove racist connotations, or to be more gender neutral? Who is this hypothetical change hurting?...

              Why not?

              It's just words. Language changes, and it always did that. Why should it not do so to remove racist connotations, or to be more gender neutral? Who is this hypothetical change hurting?

              Why is the status quo so much better?

              4 votes
              1. [3]
                onyxleopard
                (edited )
                Link Parent
                Natural language changes via natural processes (like sound change, semantic drift, or epenthesis). The use of the term master in GitHub is up to Microsoft. It can self-censor if it so decides. But...

                Natural language changes via natural processes (like sound change, semantic drift, or epenthesis). The use of the term master in GitHub is up to Microsoft. It can self-censor if it so decides. But segments of a language community do not get to decide how the rest of that language community get to speak by reducing every ambiguity to its most problematic interpretation. The same argument here applied broadly would suggest that the n-word should be taboo, regardless of who says it and how they use it in context. Are you really of the opinion that natural language requires such policing? As a linguist, I’m certain that this kind of prescriptive ideology is misguided.

                Who is this hypothetical change hurting?

                I can’t think of all the possibilities, but it at least hurts anyone who tries to used multiple different git repos and encounters different conventions for the master branch name. This is likely most harmful to beginners who are not initiated with either convention. (git is hard enough to grok on its own without multiple sets of terms being strewn around.)

                And, besides taking actions that have far-reaching effects, whether they harm anyone should not be the sole criterion. What about being principled?

                15 votes
                1. [2]
                  mftrhu
                  Link Parent
                  And this change is clearly unnatural, and completely unlike every other time some word was deemed unacceptable in polite company. They said it was "censorship" and "too much", "PC gone mad" every...

                  And this change is clearly unnatural, and completely unlike every other time some word was deemed unacceptable in polite company. They said it was "censorship" and "too much", "PC gone mad" every other time, but now it is somehow different.

                  This is likely most harmful to beginners who are not initiated with either convention. (git is hard enough to grok on its own without multiple sets of terms being strewn around.)

                  Beginners have no idea what the conventions for git are. Beginners are the ones who would be least hurt by such a change.

                  What about being principled?

                  What about it? What are, exactly, your principles? Where is the objection to this change coming from?

                  2 votes
                  1. onyxleopard
                    (edited )
                    Link Parent
                    Imagine you are a beginner and you find a git tutorial. The tutorial uses the new terminology of main, but you happen to be working with an older, preexisting repository created before the new...

                    Beginners are the ones who would be least hurt by such a change.

                    Imagine you are a beginner and you find a git tutorial. The tutorial uses the new terminology of main, but you happen to be working with an older, preexisting repository created before the new terminology was adopted, so it uses master. For example, if the tutorial tells you to run git checkout main, this is what happens if you try to do so in a repository where there is no main branch (not to mention the issue if you happened to have a file checked in named “main”):

                    git checkout main
                    error: pathspec ‘main’ did not match any file(s) known to git
                    

                    If I were a beginner trying to use git and this is what I saw, I’d assume I did something wrong.

                    What are, exactly, your principles?

                    The principles of humanity and charity, as well as the cooperative principle, at least. I don’t go around flouting these principles and assuming the most pessimistic interpretation of every utterance I come across. Anyone who does is not actually interested in being a productive part of a conversation.

                    11 votes
              2. [3]
                Grzmot
                Link Parent
                Language has generally evolved into what it is for a reason and a lot of these substitions do not roll of the tongue as easily as the original words: Whitelist = Allow list You'd also be reducing...

                Language has generally evolved into what it is for a reason and a lot of these substitions do not roll of the tongue as easily as the original words:

                Whitelist = Allow list

                You'd also be reducing a words meaning down to a singular thing, which just isn't the case, completely forgoing the fact that yes, other places on the planet besides the USA exist, and some of them even have English as their primary language and none of them have the same history as the USA. Do they get a vote?

                In the end you'll be partaking in a crusade to "sanitize" a language of all its perceived bad things, when that's only your opinion that not everyone shares, resulting in this very weird picture where a group of people is claiming that a word is a all about them when it isn't.

                And in the end, with all your main branches, primary keys, permission lists et cetera you won't have any more black people suddenly appear in your company because you haven't actually done anything and I'm sure you'll have turned off some competent black people because by having this endless discussion, you're also reducing them to the colour of their skin.

                11 votes
                1. [2]
                  mftrhu
                  Link Parent
                  In the end, and I hate having to repeat myself, it is not about language. It has never been about language, or this specific change in language. And again, just because some people have decided...

                  In the end, and I hate having to repeat myself, it is not about language. It has never been about language, or this specific change in language.

                  And in the end, with all your main branches, primary keys, permission lists et cetera you won't have any more black people suddenly appear in your company because you haven't actually done anything and I'm sure you'll have turned off some competent black people because by having this endless discussion, you're also reducing them to the colour of their skin.

                  And again, just because some people have decided that this is something they should spend some of their time on, that does not mean that it is all the community is doing, or all they are doing. We can do more than one thing at a time and yes - we can even try to address petty complaints.

                  I'm sure you'll have turned off some competent black people because by having this endless discussion, you're also reducing them to the colour of their skin.

                  I'm afraid not. The people who are at fault for this are the reactionaries who are doing their level best at blowing this out of proportions.

                  I am sure it will be blamed on those darned skeleton warriors and their treating people nicely gone mad - like it happened when people proposed to make the Immuni language gender-neutral, or every time someone proposed a CoC - but it is the hill they chose to die on.

                  2 votes
                  1. Grzmot
                    Link Parent
                    From your comment earlier. Ok now you're losing me. If it's not about the language, what is then about? You're clearly trying to ban words because you think it has racist connotations. How can...

                    It's just words. Language changes, and it always did that. Why should it not do so to remove racist connotations, or to be more gender neutral? Who is this hypothetical change hurting?

                    From your comment earlier.

                    In the end, and I hate having to repeat myself, it is not about language. It has never been about language, or this specific change in language

                    Ok now you're losing me. If it's not about the language, what is then about? You're clearly trying to ban words because you think it has racist connotations. How can that not be about the language?

                    And again, just because some people have decided that this is something they should spend some of their time on, that does not mean that it is all the community is doing, or all they are doing. We can do more than one thing at a time and yes - we can even try to address petty complaints.

                    While true, don't you think this is going hurt your ability to move things forward when they actually matter, because then people will just roll their eyes, as @stu2b50 so eloquently said:

                    It also "wastes" discourse, I guess? Imo people have a finite amount of "give a shit" they can have, and this brings a whole bunch of drama while not accomplishing anything. There's a whole host of reasons CS and STEM in general are culturally unfriendly to PoCs, but having the default "master" thread be called "master" is not it.

                    4 votes
          2. johnh865
            Link Parent
            Because it takes time and energy to change and discuss terminology. There is a real cost in re education to a new communication standard. Moreover you're calling for cultural erasure of language....

            Because it takes time and energy to change and discuss terminology. There is a real cost in re education to a new communication standard.

            Moreover you're calling for cultural erasure of language.

            Also it's not like only black people suffered through a master slave arrangement. I'm quite certain every culture and people have been enslaved, from Greeks to Romans to Chinese to Japanese, etc etc.

            Finally, do people actually care? There's only one language police I care about and it's called democracy. if you poll every black American, maybe they can come to a consensus about this terminology. Until that happens I don't care what random people on the internet argue what the correct terminology should be, especially when the alleged impacted people have not been asked their opinion. I don't see the need to coddle black people unless they are explicitly asking for it.

            6 votes
      2. [2]
        eyybby
        Link Parent
        So related to your first point, virtue signalling is very much a thing in my opinion. We can definitely disagree on how pervasive it might or mightn't be, but it is commonly seen. The most clear...

        So related to your first point, virtue signalling is very much a thing in my opinion. We can definitely disagree on how pervasive it might or mightn't be, but it is commonly seen. The most clear and simple example is every year how companies change their logos to reflect Pride months and yet have poor workplace policies for LGBT+ staff. Here is a prime example from this year of something I'd consider virtue signalling. I view it as a specific form of hypocrisy and intent. I amn't accusing people suggesting changing terminology are disingenuous.

        That is a problem, and I refuse to let people confuse the issue with this.

        Related to this. I really couldn't agree with you more that if people aren't free to behave as they wish and able to express themselves however they choose to, that's a huge issue. It is the biggest issue in the field. That's the issue I feel needs to be tackled. Ultimately, I don't think changing very specific, niche things (like master being the reference to the main branch of code in git) is tackling the issue. I think that is in fact confusing the issue as you said. There are plenty of broken employment policies, broken company policies, code of conducts that need improving and updating, and plenty of education to take place. Getting everyone to change a branch name is not going to affect much change on those things and I feel that they are much more beneficial.

        8 votes
        1. mftrhu
          Link Parent
          And yet, that expression is, as far as I am concerned, irredeemably tainted. Again, when someone says "virtue signaling", I do not hear "corporations" - unpeople without a shred of morality - "are...

          So related to your first point, virtue signalling is very much a thing in my opinion.

          And yet, that expression is, as far as I am concerned, irredeemably tainted. Again, when someone says "virtue signaling", I do not hear "corporations" - unpeople without a shred of morality - "are giving lip service to some cause or another to increase their sales", but "the [cis-het|white] people who show their support for [the LGBT+ community|BLM] do not actually care about it".

          The context it is used in does not help. People hardly ever use it to talk about pink capitalism, queerbait and the like: even here, even if this specific thread is about GitHub, GitHub was spurred into action by all the people who made noise, opened issues and pull requests over the last couple of years - who thought it was important enough to sink some of their time on it.

          Ultimately, I don't think changing very specific, niche things (like master being the reference to the main branch of code in git) is tackling the issue. I think that is in fact confusing the issue as you said.

          The "confusing the issue" part is about hammering on this, repeatedly, telling people who already agree with you about how this specific behaviour is pointless, how it won't affect Real Change™, constantly talking about it and blowing it out of proportions.

          We can also take care of more than one issue at a time, and some people investing their time in getting technical terms changed does not stop other people from trying to fix employment policies, company policies, and code of conducts. If anything, they are often the same.

          13 votes
    2. mrbig
      (edited )
      Link Parent
      I am black and literally a descendant of slaves. I couldn’t care less about these terminologies. But I respect the sensibilities of my fellow African descendants.

      I understand the issues with master/slave and think that we should most likely deprecate those terms and have new terminology

      I am black and literally a descendant of slaves. I couldn’t care less about these terminologies. But I respect the sensibilities of my fellow African descendants.

      17 votes
    3. Grzmot
      Link Parent
      People who oppose changing the master/slave dynamic just reek of opposing changes for the sake of opposition to me, especially since we already have something perfectly fine to replace it, which...

      People who oppose changing the master/slave dynamic just reek of opposing changes for the sake of opposition to me, especially since we already have something perfectly fine to replace it, which is already widely used in IT: host/client.

      Really I'm wondering if people consider replacing these and similar terms to be an essential action we should take to make the community more accessible, or if this a bit like virtue signalling and should be pushed back against or some opinion in the middle?

      The thing with this situation is that this is always a very personal issue how you view this problem and it'll be hard finding a consensus among "the people of IT". The question is also where you draw the line and that's going to depend on your cultural background. I personally always connected master/slave more with BDSM than with anything else and thus found it really funny when compared to mental image of the typical nerd clothed in Latex whipping people (consensually). But I'm also not American, so ¯\_(ツ)_/¯, cultural background differs.

      It was the same when there was a discussion on the Mozilla bug-tracker about the .bro file type and it ended with it being changed. When does it stop being legitimate change for good and start being virtue signaling?

      7 votes
    4. [10]
      Gaywallet
      Link Parent
      One can easily argue that the definition of master in these situations is for the principle or main, not referring to the control or ownership. There is also no slavecard, slave lock, or slave...

      Mastercard, Master locks, a master key

      One can easily argue that the definition of master in these situations is for the principle or main, not referring to the control or ownership. There is also no slavecard, slave lock, or slave key. The juxtaposition of master with slave is what is problematic.

      6 votes
      1. [9]
        stu2b50
        Link Parent
        Exactly, there's no slave branches. There are feature branches. Like how specific door keys are branches of the master key. So I don't see how it's a problem.

        The juxtaposition of master with slave is what is problematic.

        Exactly, there's no slave branches. There are feature branches. Like how specific door keys are branches of the master key.

        So I don't see how it's a problem.

        14 votes
        1. [8]
          tindall
          Link Parent
          The term originates from older VCS software which did have a master/slave dichotomy. Early VCSes were not distributed, but had a central server (the master) from which individual developers' slave...

          The term originates from older VCS software which did have a master/slave dichotomy. Early VCSes were not distributed, but had a central server (the master) from which individual developers' slave instances would push and pull changes periodically. The git master branch emulates this behavior to some degree; hence the name.

          6 votes
          1. [7]
            stu2b50
            Link Parent
            If you want to remove all terms that at some point originated from slavery related words, you'd be here all day. For instance, all the bots--robot etymological comes from slavery. But at this...

            If you want to remove all terms that at some point originated from slavery related words, you'd be here all day. For instance, all the bots--robot etymological comes from slavery.

            But at this point, it's become detached from that origin, and most people wouldn't notice it.

            Id argue the same for the master branch. The master key analogy is pretty perfect for how modern use of git involves. The master branch is the definitive, canon branch. You branch off to make smaller features.

            It has no relation to the master/slave paradigm anymore. Repos and branches are data, they don't tell any service to do anything.

            13 votes
            1. [6]
              Gaywallet
              Link Parent
              We aren't talking about removing all terms. "It's too hard to accomplish something, so let's not" is simply not a valid argument. Change happens incrementally and is of absolute importance if we...

              If you want to remove all terms that at some point originated from slavery related words, you'd be here all day. For instance, all the bots--robot etymological comes from slavery.

              1. We aren't talking about removing all terms.
              2. "It's too hard to accomplish something, so let's not" is simply not a valid argument. Change happens incrementally and is of absolute importance if we want to progress as a society.

              It has no relation to the master/slave paradigm anymore.

              To you it doesn't, to others it does. Why are you so entrenched in your opinion? Why is it so important for terminology to remain how it currently does?

              4 votes
              1. [4]
                iiv
                Link Parent
                You argue that master branches in git is offensive because it comes from an older master/slave terminology. That isn't valid, etymological arguing is rarely valid. There are, as the other person...

                You argue that master branches in git is offensive because it comes from an older master/slave terminology. That isn't valid, etymological arguing is rarely valid. There are, as the other person said, lots of words that would be considered very offensive if we looked at their etymology.

                1. "It's too hard to accomplish something, so let's not" is simply not a valid argument. Change happens incrementally and is of absolute importance if we want to progress as a society.

                This seems to me like you're implying that we should get rid of all etymologically offensive words, contrary to your first point. Am I interpreting that correctly? If so, why should we do that? The history of words is never considered unless it's very transparent, it'd be change for the sake of change.

                (I am playing devil's advocate here, I'm completely fine with changing it to make people feel better.)

                11 votes
                1. aphoenix
                  Link Parent
                  I think the argument is more "some people are finding this offensive. Here is a likely reason why they are finding it offensive." It's not an etymological argument; if it was, they'd also be...

                  You argue that master branches in git is offensive because it comes from an older master/slave terminology.

                  I think the argument is more "some people are finding this offensive. Here is a likely reason why they are finding it offensive." It's not an etymological argument; if it was, they'd also be saying "the term robot MUST be changed", which nobody is saying.

                  It's an observation that this is right now a problematic word, and the reason is likely etymological. That's one of the cases where etymological arguing is valid. It wouldn't be valid if nobody was offended, and they were saying that people should be offended by this.

                  There is a not trivial amount of people who find "master / slave", or even just "master" or "slave" on their own, to be offensive. Can we accept that as a given? I've met many of them, which indicates to me that there are lots more. It's not just a noisy group of very few people; it's a legitimate concern that many people have. It's also a really easy word to change, because there are lots of other valid terms that don't have connotations of slavery.

                  4 votes
                2. [2]
                  Gaywallet
                  Link Parent
                  I do not, I pointed out the master/slave juxtaposition is problematic. You are not, I'm simply pointing out that "too hard to accomplish" is not a valid argument.

                  You argue that master branches in git is offensive

                  I do not, I pointed out the master/slave juxtaposition is problematic.

                  Am I interpreting that correctly?

                  You are not, I'm simply pointing out that "too hard to accomplish" is not a valid argument.

                  1 vote
                  1. mrbig
                    (edited )
                    Link Parent
                    The difficulty of achieving a goal is a good reason to recommend against pursuing it. This is not invalid at all.

                    The difficulty of achieving a goal is a good reason to recommend against pursuing it. This is not invalid at all.

                    4 votes
              2. stu2b50
                Link Parent
                To be clear, I don't really care in a negative sense about the change itself. Merging into main VS merging into master is a whatever change. However, I think this a) provides ammunition to the...

                To be clear, I don't really care in a negative sense about the change itself. Merging into main VS merging into master is a whatever change.

                However, I think this a) provides ammunition to the opposition b) convinces people in the software world to have negative thoughts on the whole movement c) accomplishes very little good. You can see the former 2 on the proggit thread and hackernews.

                Basically imo its a net negative on a practical sense.

                6 votes
  2. spit-evil-olive-tips
    Link
    If you're working on something new, I think using the most current terminology available makes sense. There is even a draft RFC giving a rationale against master/slave and whitelist/blacklist and...

    If you're working on something new, I think using the most current terminology available makes sense. There is even a draft RFC giving a rationale against master/slave and whitelist/blacklist and proposing alternatives.

    For existing systems & software, I think updating them is also the right call, but it needs to be handled correctly to avoid breaking things.

    For example, Redis' use of master and slave extends into its API, so updating it is a breaking API change. antirez (Redis' primary author) was initially against the change but eventually agreed to do it and published a roadmap of how to make the change happen.

    As another example, changing the master branch name in an existing Git repo needs to be coordinated among everyone who has a local clone of the repo, as well as any build systems that auto-build the master branch (or other tooling).

    12 votes
  3. [12]
    silfilim
    Link
    I've been feeling uneasy about this move, and I've come to think that the crux of the matter is in the act of taking a word out of context and assigning a different intention (as has been pointed...

    I've been feeling uneasy about this move, and I've come to think that the crux of the matter is in the act of taking a word out of context and assigning a different intention (as has been pointed out in this topic).

    It is essentially a strawman argument. It is overgeneralization, and overgeneralization forms the very basis of racism and other forms of biases.

    10 votes
    1. [5]
      daturkel
      Link Parent
      I guess I just imagine someone learning programming in the year 2025. Student: "Hey, I've read a bunch of stuff about git pull origin master, but every project I find uses main instead, what's up...

      I guess I just imagine someone learning programming in the year 2025.

      Student: "Hey, I've read a bunch of stuff about git pull origin master, but every project I find uses main instead, what's up with that?"
      Teacher: "Yeah, the default used to be master but some people felt it was a bit too evocative of slavery so eventually the community adopted main instead."
      Student: "Oh, ok, that makes sense."
      The end.

      It's going to seem silly and bizarre that people were so opposed to it. I get that the master branch is akin to a master key or a master tape, and I get that there's no concept of slave in git, but if encountering the term daily is truly bothering developers, why would anyone want to die on the hill of "no, it must remain master"?

      That being said...

      I've heard some people say they want to retire the use of the term "grooming" in the context of agile as it's ostensibly evocative of child grooming. This strikes me as odd only because the use of the word "grooming" to mean anything other than child grooming is so much more common that it would seem to take a deliberate leap to make this association. But who knows, this paragraph may age poorly.

      6 votes
      1. [2]
        Adys
        Link Parent
        This paragraph is exactly true today, which is what matters. You can't start second-guessing what the future will look like. Intent is what's important here. That word's first definition to come...

        But who knows, this paragraph may age poorly.

        This paragraph is exactly true today, which is what matters. You can't start second-guessing what the future will look like.

        Intent is what's important here. That word's first definition to come up right now is "the practice of brushing and cleaning the coat of a horse, dog, or other animal". If that changes in the future then fine; but forcing the change is dumb.

        "Gay" used to mean "cheerful". Concretely, today, it does not. When Disney remade the Three Caballeros song they had to rewrite "Three gay caballeros" to "Yes, three caballeros". That's not shocking. Meaning changed between when the song was written and today; and using the old language in today's context would give the song a meaning it does not intend to have. So… rewrite. Translate.

        3 votes
        1. daturkel
          Link Parent
          I didn't suggest forcing change around "grooming."

          I didn't suggest forcing change around "grooming."

          1 vote
      2. silfilim
        Link Parent
        I suppose the power of hindsight makes most things silly, particularly because we get to get a nice summary. We're living in the details right now that the teacher has left out, and details are...

        I suppose the power of hindsight makes most things silly, particularly because we get to get a nice summary. We're living in the details right now that the teacher has left out, and details are not pretty. (I also think details matter!)

        1 vote
      3. wervenyt
        Link Parent
        This seems highly demographic-dependent, but I've definitely grown to associate "grooming" with child grooming primarily. Not to say it's the largest use case, but I hear grooming, and think of a...

        This seems highly demographic-dependent, but I've definitely grown to associate "grooming" with child grooming primarily. Not to say it's the largest use case, but I hear grooming, and think of a predator building a relationship with a victim before I think of hygiene, outside of context. I guess I could understand the desire to move on from the word where it's not strictly applicable.

    2. [6]
      tindall
      Link Parent
      Have you perchance read the rest of this thread? There's a lot of very in-depth discussion of exactly this issue and delving into the origins of these terms (in the master/slave dichotomy present...

      Have you perchance read the rest of this thread? There's a lot of very in-depth discussion of exactly this issue and delving into the origins of these terms (in the master/slave dichotomy present in Bitkeeper) which I suspect would address your questions.

      2 votes
      1. [5]
        silfilim
        Link Parent
        Yes, I've read the other posts - and didn't see a counterargument to the issue of overgeneralization. I'd appreciate a pointer (in case you meant a counterargument by 'address').

        Yes, I've read the other posts - and didn't see a counterargument to the issue of overgeneralization. I'd appreciate a pointer (in case you meant a counterargument by 'address').

        3 votes
        1. [4]
          tindall
          Link Parent
          Your contention here is that the request by a number of black technologists to remove terminology they find offensive - a request that has been made many times, as for instance in the case of...

          Your contention here is that the request by a number of black technologists to remove terminology they find offensive - a request that has been made many times, as for instance in the case of Redis - is somehow an "overgeneralization"? If so, I can only take that to mean that you, like several other people in this thread, are arguing that, in fact, the term "master" in the software git does not invoke the sense of the term used in the master/slave dichotomy.

          My counterargument is twofold. First, as you will have seen, having read the thread, it's as likely as not that that is the origin of the term in this context. Second, and more importantly, if someone says that something is a problem for them, in this case because it brings to mind significant historical oppression and inter-generational traumas, the only compassionate thing to do is listen to them and assume good intentions.

          Far more energy has been expended on arguing against this kind of change than the technical effort required to implement it. For instance, I have a large number of open source projects; I'm moving each away from this terminology as I work on it; that is, when I need to make a patch or cut a new release, I will also change the name of the primary branch, where I'm not already using "trunk" to signify the style of feature management I want contributors to use. It's like 3 commands and a click or two on GitHub or Gitea, it's really not that hard.

          5 votes
          1. [3]
            silfilim
            Link Parent
            I don't think these points refute the central point. (When I wrote "counterargument," I meant in the general sense, not the specific level of disagreement as listed in the linked article.)...

            I don't think these points refute the central point. (When I wrote "counterargument," I meant in the general sense, not the specific level of disagreement as listed in the linked article.) Regardless, thank you for putting them into words.

            What "overgeneralization" meant in the original comment, or the central point

            you [..] are arguing that, in fact, the term "master" in the software git does not invoke the sense of the term used in the master/slave dichotomy.

            No, the idea is: when that particular sense is invoked in that context, it is the result of overgeneralization. I don't think it is wise to normalize the act of overgeneralization as something that is accepted, a modus operandi, at least not before carefully examining what is happening and what we're doing by that.

            Overgeneralization in this instance refers to the generalization of one sense of the word "master" - master within the practice of slavery - as if it applies to occurrences that are unrelated to that particular sense.

            | <-- contexts in which the word "master" occurs ---> |
            | "slave master" | -- generalization -------->        |
            

            This, I think, is the same mental move that leads to beliefs such as "all cops are bad" or "no one should have trouble clicking this button."

            it's as likely as not that that is the origin of the term in this context

            Applying the (or a possible) origin of the term to the present sense is an overgeneralization too. There is no concept that corresponds to slaves in Git.

            Do we really understand the issue?

            if someone says that something is a problem for them, in this case because it brings to mind significant historical oppression and inter-generational traumas, the only compassionate thing to do is listen to them and assume good intentions.

            Pointing out that overgeneralization is happening does not mean we don't listen nor assume bad intentions; rather, it helps us to begin to understand how exactly the word may be causing distress, and formulate how best to respond.

            In a medical context, you get assessed of your level of pain etc to determine the urgency and you get diagnosed of the cause to have your pain removed. In a business context, you might observe what is happening in the market, orient yourself to form an understanding of the situation, and come up with a hypothesis about the best move to make next.

            Similarly, I would prefer to understand the situation before endorsing a change:

            • In what contexts does the particular sense get invoked?
            • Is the association caused by specific present states of affairs?
            • What are the possible ways to lessen the association?
            • As a quick remedy, how about a browser extension and/or a terminal app that filters or transforms all occurrences of words that cause distress? (Based on experience, a personal shield of sorts is more effective against stressful perceptions than trying to change the norm.)
            • ...

            When I can only find suggestions for a change with no indication of this kind of investigation having been done, I get the sense that the principle of "nothing about us without us" is being forgotten.

            How should conventions change?

            Taking up the voices of a subset of users and acting on them before surveying other subsets is also an act of overgeneralization.

            | <---------- the whole user base ----------> |
            | subset | -- generalization -------->        |
            

            But shouldn't we listen to marginalized groups? Right, I'm not saying everything should be decided based on votes. What I'm concerned is the practice of quickly assuming that the voices of a subset of users apply to the majority, and quickly assuming one course of action is the way to go before examinig the root cause.

            It is one thing to change something within an individual's sphere of influence where it's easier to foresee the impact, but another to unilaterally change a tool that's widely used by humans and machines before examining the impact and consequences, and the exact reason the change is being made.

            | <------------ the whole impact -----------> |
            | easy to deal | -- generalization -->        |
            

            I would feel more at ease if the change is happening in a more grass-roots way; say, the percentage of repos that have switched from 'master' to 'main' has reached a certain threshold and the default is being changed to reflect the collective choice of the community. Even so, the individual choices of the repos could still be an uneasy one for me if the reasoning is based on overgeneralization.

            3 votes
            1. [2]
              tindall
              Link Parent
              As usual, these arguments boil down to slippery slope and friends. and Incidentally, this second statement makes a false equivalence; "all cops are bad" is a specific rhetorical move, which calls...

              As usual, these arguments boil down to slippery slope and friends.

              I don't think it is wise to normalize the act of overgeneralization as something that is accepted, a modus operandi,

              and

              is the same mental move that leads to beliefs such as "all cops are bad" or "no one should have trouble clicking this button."

              Incidentally, this second statement makes a false equivalence; "all cops are bad" is a specific rhetorical move, which calls attention to the fact that modern preemptive policing systems are predicated on racism and defense of property over people, while refuting the common social myth that there are "bad apple" cops who tarnish the reputation of all the good, upstanding officers. The point here isn't that all officers are terrible people; that's immaterial. Instead, the point is that all cops do terrible things or cover for those who do, because that is the point of the job.

              This paragraph appears to be almost total non sequitur:

              In a medical context [...]

              In context (heh), this seems to be an attempt to invoke "context is important and we don't have enough" - but we do have a pretty clear understanding of the context in this issue - some black developers are asking for a minor terminology change that will help them feel safer using technologies designed almost entirely without input from black people.

              This paragraph is the most valid argument here, and I actually mostly agree.

              But shouldn't we listen to marginalized groups? ...

              However, from a purely utilitarian viewpoint, I see essentially two upsides here. First, some nonempty subset of users will feel more comfortable using git and contributing to repositories that use it. Second, many projects will, in the process of renaming their former "master" branches, have an opportunity to consider and codify best practices specific to their development model, whether by simply renaming the "master" branch to "trunk", or by creating multiple "release", "candidate", and "development" branches, or whatever other method is used. Some may even choose to use this as an opportunity to take fuller advantage of the decentralized nature of git.

              There are, of course, corresponding downsides. Some documentation will need to be updated. A nonzero (but small) amount of technical effort will be expended.

              I think our difference of opinion basically comes down to a) whether that technical effort is worth the benefits, and b) whether or not this is an early step on a slippery slope to... what did you say in your original post?

              racism and other forms of biases

              We already have "racism and other forms of biases" - seven men have been lynched in the last week for the color of their skin. Changing the default name of a pointer into a Merkel tree in some version control software which will be obsolete in 20 years is not going to somehow move us significantly further in that direction.

              2 votes
              1. silfilim
                Link Parent
                I'm not sure if my argument fits the criteria of a slippery slope argument. I'm a little doubtful - at least, it's not about more and more words getting changed or a cry against things getting...

                As usual, these arguments boil down to slippery slope

                I'm not sure if my argument fits the criteria of a slippery slope argument. I'm a little doubtful - at least, it's not about more and more words getting changed or a cry against things getting worse and worse without restraint.

                I acknowledge that racism and other forms of biases exist right now. My concern is that solutions that endorse or accept overgeneralization without scrutiny will not lead us to a world in which racism is not an issue anymore. It is analogous to fighting violence with violence.

                "all cops are bad" is a specific rhetorical move

                (I didn't know this phrase is a recognizable slogan (?) of sorts.) Even if it's a consciously chosen rhetoric, I find it questionable to use an all-encompassing claim like "all x are y" to try to convince people.

                some black developers are asking for a minor terminology change that will help them feel safer using technologies designed almost entirely without input from black people

                I'm skeptical that this is the whole context and I don't feel like there is a deep understanding of the issue. In my previous comment, I listed some questions that I haven't seen asked - these are questions for the sake of understanding, not for the sake of denying.

                I think our difference of opinion basically comes down to a) whether that technical effort is worth the benefits

                I don't know if the cost is worth the benefit. This isn't the same as saying that I don't believe the cost is worth the benefit. It's rather that the overall cost is unclear and the overall benefit is unclear. More questions to ask here too.

                In fact, I'm beginning to think that a culture that lacks openness towards asking questions or lacks the propensity to ask questions might be an underlying base condition that perpetuates overgeneralization, and therefore biased thinking.

  4. [4]
    ohyran
    Link
    I think its no big issue in general - that said if its a comparatively easy fix, another word can be used as replacement and the developer and owner of the project wants to do it. Good. There is...

    I think its no big issue in general - that said if its a comparatively easy fix, another word can be used as replacement and the developer and owner of the project wants to do it. Good. There is zero "bad" there (reading the reactions on reddit is as if someone suggested we banned the letter "A" from all forms of code because it looks too pointy or something)

    Again the master/slave analogy isn't something I find too problematic or whitelist/blacklist but that can be because I read English as a second language (which means it has an extra barrier of entry in to my brain) and the words are divorced from our history as problematic in themselves (I mean mostly because their in English). I mean there isn't even a "master" in our language that is fitting (its more like the word "expert" tbh and the proper master is "lord") and the word slave is the same as "Someone who's slavic"...
    Errrr long story short - I am probably not the right person to define this from an English/US context.

    Following along though

    6 votes
    1. [3]
      Tygrak
      Link Parent
      Wow, I never thought of it but yes the word slave is definitely from the word Slav - that's kind of hilarious. Etymology of some words is so strange.

      Wow, I never thought of it but yes the word slave is definitely from the word Slav - that's kind of hilarious. Etymology of some words is so strange.

      2 votes
      1. stu2b50
        Link Parent
        The word robot also comes from slavery--robot is from robota, Czech for a forced laborer.

        The word robot also comes from slavery--robot is from robota, Czech for a forced laborer.

        10 votes
      2. NaraVara
        Link Parent
        It's because up until the 9th or 10th century, Slavic people were highly prized as slaves by Arab and Mediterranean slave traders. This conflation of the ethnicity with the subservient status is...

        Wow, I never thought of it but yes the word slave is definitely from the word Slav - that's kind of hilarious. Etymology of some words is so strange.

        It's because up until the 9th or 10th century, Slavic people were highly prized as slaves by Arab and Mediterranean slave traders.

        This conflation of the ethnicity with the subservient status is actually one of the (several) reasons the term "Negro" fell out of fashion as a way to refer to Black Americans as well.

        3 votes
  5. [10]
    wycy
    (edited )
    Link
    The "master/slave" nomenclature is something I'd never thought of before (privilege) but seems extremely problematic and outright gross now that I think about it. It should go out of use...

    The "master/slave" nomenclature is something I'd never thought of before (privilege) but seems extremely problematic and outright gross now that I think about it. It should go out of use immediately.

    But taking issue with "master" in the context of git seems just silly. Are we going to rename our Masters degrees next? It's arguably worse.

    I personally think "main" (or better, "trunk") does make more sense to be the name of the main branch rather than "master," though purely for etymological reasons. In the context of git, "master" might've made more sense in place of "origin", since aside from origin there's no real "master copy" in git.

    6 votes
    1. viridian
      Link Parent
      Main doesn't feel accurate to me, nor do some of the other proposed alternatives like lowercase head, tip, parent, or top. I do kind of like base though, although the impact on the linguistic...

      Main doesn't feel accurate to me, nor do some of the other proposed alternatives like lowercase head, tip, parent, or top. I do kind of like base though, although the impact on the linguistic implications of git rebase are unfortunate.

      8 votes
    2. [8]
      Gaywallet
      Link Parent
      There are no "Slave" degrees. I believe it is the juxtaposition of master with slave that is problematic. Furthermore master has multiple definitions, and in the context of a degree the definition...

      But taking issue with "master" in the context of git seems just silly. Are we going to rename our Masters degrees next? It's arguably worse.

      There are no "Slave" degrees. I believe it is the juxtaposition of master with slave that is problematic. Furthermore master has multiple definitions, and in the context of a degree the definition is that of mastery (great skill or proficiency) and not that of being a master (control).

      3 votes
      1. [5]
        stu2b50
        Link Parent
        There's no slave branches, either. Master is "master bedroom" in this context. I really can't see the issue with it.

        There's no slave branches, either. Master is "master bedroom" in this context. I really can't see the issue with it.

        10 votes
        1. [4]
          tindall
          Link Parent
          Yes, there are - the term comes from older VCS software that had a master copy of code with other people's copies "slaved" to it. Not only is the term potentially offensive, it's also inaccurate,...

          Yes, there are - the term comes from older VCS software that had a master copy of code with other people's copies "slaved" to it. Not only is the term potentially offensive, it's also inaccurate, since git is a distributed VCS and thus cannot really emulate this behavior.

          8 votes
          1. Deimos
            Link Parent
            Petr Baudis said on Twitter that he picked the terms in git and is happy to see them changed: In some follow-up tweets he gave some more clarifications, including that it might have been inspired...

            Petr Baudis said on Twitter that he picked the terms in git and is happy to see them changed:

            I picked the names "master" (and "origin") in the early Git tooling back in 2005.

            (this probably means you shouldn't give much weight to my name preferences :) )

            I have wished many times I would have named them "main" (and "upstream") instead.

            Glad it's happenning @natfriedman

            In some follow-up tweets he gave some more clarifications, including that it might have been inspired from the BitKeeper source-control system, which does use master/slave terminology:

            "master" as in e.g. "master recording". Perhaps you could say the original, but viewed from the production process perspective.

            A clueless Central European youngster whose command of English was mostly illusory came up with the term, which is why it isn't very obvious...

            To be clear, one of my big life lessons is that besides why a word was chosen by the author, it matters at least as much how it is perceived by the recipient.

            It wasn't very easy to understand for someone not very empathetic like me, though in hindsight it's kind of obvious.

            (Plus, some people point out that BitKeeper might have influenced the master word choice - I need to dive into some old mailing list archives first to confirm that. If so, BitKeeper probably built this as a master/slave analogy.)

            (mentions for other people that were asking/interested around this: @joplin @wycy @Crespyl)

            14 votes
          2. [2]
            joplin
            Link Parent
            Can you name them? I hadn't heard this before and would like to know more. I've used some fairly old VCS (all the way back to RCS) and don't recall this, though I didn't know what I was doing back...

            Can you name them? I hadn't heard this before and would like to know more. I've used some fairly old VCS (all the way back to RCS) and don't recall this, though I didn't know what I was doing back then so might not remember accurately.

            3 votes
            1. Crespyl
              Link Parent
              IIRC BitKeeper was the inspiration for much of git, and I'm told (repeatedly, but so far without reference or sources) that bk had a concept of master/slave repositories, so the name "master" was...

              IIRC BitKeeper was the inspiration for much of git, and I'm told (repeatedly, but so far without reference or sources) that bk had a concept of master/slave repositories, so the name "master" was inherited as the default name for the branch. Git of course has no concept of "slave" repos, all repositories are equal peers by design and can push and pull objects between each other at will.

              I suspect that only the tiniest fraction of git users have ever interpreted the branch name "master" in the "master/slave" sense ("origin" is the closest git comes to this concept, "master/slave" makes no sense in git), instead of the "master copy" sense (which fits perfectly with the "git pull origin(server) master(copy/branch)" idiom.

              3 votes
      2. [2]
        wycy
        Link Parent
        There are no "slave" branches in git either. Just branches. The multiple definitions of master is exactly why it doesn't make sense to rename git's branches. I agree with renaming in the...

        There are no "slave" branches in git either. Just branches. The multiple definitions of master is exactly why it doesn't make sense to rename git's branches.

        I agree with renaming in the master/slave cases. At the very least, the slave part should be renamed.

        4 votes
        1. tindall
          Link Parent
          Yes, there are - the term comes from older VCS software that had a master copy of code with other people's copies "slaved" to it. Not only is the term potentially offensive, it's also inaccurate,...

          Yes, there are - the term comes from older VCS software that had a master copy of code with other people's copies "slaved" to it. Not only is the term potentially offensive, it's also inaccurate, since git is a distributed VCS and thus cannot really emulate this behavior.

          6 votes
  6. FishFingus
    Link
    As a BDSM enthusiast, I might slightly miss the master and slave references. Still, I don't really care all that much, so long as any changes are made with a minimum of faff and inconvenience....

    As a BDSM enthusiast, I might slightly miss the master and slave references. Still, I don't really care all that much, so long as any changes are made with a minimum of faff and inconvenience. Programming languages are supposed to be convenient, helpful and legible at the end of the day.

    5 votes
  7. [24]
    december
    Link
    This is directed to anyone upset by this kind of thing: Even if they're just "virtue signalling" by doing this, who cares? Who does it hurt to change this? If they're just looking for attention,...

    This is directed to anyone upset by this kind of thing:

    Even if they're just "virtue signalling" by doing this, who cares? Who does it hurt to change this? If they're just looking for attention, why give that attention to them by complaining?

    5 votes
    1. [2]
      stu2b50
      Link Parent
      While I don't care about the change itself, I just think it doesn't accomplish anything while bringing negative discourse on the whole movement. Look at the proggit or hnews threads, in general...

      While I don't care about the change itself, I just think it doesn't accomplish anything while bringing negative discourse on the whole movement. Look at the proggit or hnews threads, in general the sentiment is "PC culture gone too far". I think doing this kind of thing gives ammunition to dissenters, and honestly personally it's just really annoying to keep hearing coworkers and other people say it's ridiculous, and honestly I can't really tell them they're wrong.

      It also "wastes" discourse, I guess? Imo people have a finite amount of "give a shit" they can have, and this brings a whole bunch of drama while not accomplishing anything. There's a whole host of reasons CS and STEM in general are culturally unfriendly to PoCs, but having the default "master" thread be called "master" is not it.

      18 votes
      1. elcuello
        Link Parent
        This is a great point. Furthermore to discuss this seriously really takes your critical thinking skills to the max and these skills simply don't exist in the general social media public or at...

        It also "wastes" discourse, I guess? Imo people have a finite amount of "give a shit" they can have, and this brings a whole bunch of drama while not accomplishing anything. There's a whole host of reasons CS and STEM in general are culturally unfriendly to PoCs, but having the default "master" thread be called "master" is not it.

        This is a great point. Furthermore to discuss this seriously really takes your critical thinking skills to the max and these skills simply don't exist in the general social media public or at least it's quickly drowned out. This whole topic is surprisingly interesting if you get past the expected initial reactions but I fear that we never will for the most part so maybe we should focus on changing more important things and discussing these type of subjects here and places where it's possible without the noise.

        7 votes
    2. [7]
      viridian
      Link Parent
      I'm not upset, but after following the discussion on twitter, github, hackernews, and various mailing lists, I'm convinced there there's an American exceptionalism element that I was completely...

      I'm not upset, but after following the discussion on twitter, github, hackernews, and various mailing lists, I'm convinced there there's an American exceptionalism element that I was completely blind to when it comes to general trends of these types of changes in technology. The world is asked to stand by and eat the downstream effects of breaking platform changes as Microsoft engages in performative change. This is one of many risks of the Microsoft buyout of GitHub, realized as apologia to the Californian ideology.

      14 votes
      1. [4]
        Wes
        Link Parent
        It's the default name for new repos. It doesn't break anything. You'll now checkout main instead of master.

        breaking platform changes

        It's the default name for new repos. It doesn't break anything. You'll now checkout main instead of master.

        3 votes
        1. [2]
          poopfeast6969
          Link Parent
          I'm sure many, many scripts and continuous integration systems will immediately break. If the "master" tag is deprecated and removed.

          I'm sure many, many scripts and continuous integration systems will immediately break. If the "master" tag is deprecated and removed.

          3 votes
          1. skybrian
            Link Parent
            We don't know what Github is going to do. There is engineering work to be done when something gets renamed. But at least in some circumstances it's possible to keep things backward compatible by...

            We don't know what Github is going to do. There is engineering work to be done when something gets renamed. But at least in some circumstances it's possible to keep things backward compatible by accepting the old name as a synonym. It's also possible to let users control how changes get rolled out.

            One way to avoid disruption is to never change anything, but another is to get better at changing things.

            6 votes
        2. viridian
          Link Parent
          Off the top of my head this breaks jenkins templated pipelines where you would otherwise just point the SCM config to the new repo location and autodeploy any diff for dev from develop, release/qa...

          Off the top of my head this breaks jenkins templated pipelines where you would otherwise just point the SCM config to the new repo location and autodeploy any diff for dev from develop, release/qa for qa, and master for prod. Not a big deal to update all of your templates, but it's the most immediate one that comes to mind for me. Probably easier to manually rename main to master in that case.

          Some people on hacker news have referenced far worse cases, like prepackaged node libs referencing external resources via specific commits on a master branch. To me that sounds like a problem of bad lib design, but it's a potential impact if they change existing projects, or someone feels the onus to make that change as a maintainer to their own project (which is then yet another recurrence of a left-pad style dependency tree break)

          2 votes
      2. [2]
        december
        Link Parent
        ...what is a "Californian ideology"?

        ...what is a "Californian ideology"?

        2 votes
        1. viridian
          Link Parent
          Not a Californian Ideology, the Californian Ideology: https://en.wikipedia.org/wiki/The_Californian_Ideology This is approaching a tangent, but it's considered by a most critical theorists I've...

          Not a Californian Ideology, the Californian Ideology: https://en.wikipedia.org/wiki/The_Californian_Ideology

          This is approaching a tangent, but it's considered by a most critical theorists I've read to be the dominant current Ideology among those that form the American upper classes, which includes most of Github's employees and all of GitHub's leadership.

          7 votes
    3. [13]
      Adys
      Link Parent
      It grealy hurts "the cause", for one. Which indirectly hurts the very people that are claimed to be affected by this terminology. Think what you want, this will be thought by many, many, many...

      Who does it hurt to change this?

      It grealy hurts "the cause", for one. Which indirectly hurts the very people that are claimed to be affected by this terminology.

      Think what you want, this will be thought by many, many, many people as a pointless exercise in virtue signaling. There's no better way to piss people off and turn them off whatever cause you are championing than by making them believe your cause is pointless.

      This shit feeds directly into the alt-right narrative of the slippery slope. It's exactly like this that you build a divide, and that is what's feeding the hate.

      MOST people don't care the other person is of a particular race, gender or sexuality. But make them believe that that other person is out to change your way of life and suddenly, you're creating an enemy. And if you can't back up those changes with anything stronger than "who cares, it doesn't hurt anyone", they will absolutely dig their heels down.

      I don't have a horse in this race anymore. I certainly don't give a crap what those various concepts are called, as long as it's explicit and consistent. And I absolutely do not at present believe that the terminology in question is actually negatively impacting minorities' careers in CS (unless you're actually thinking this terminology is an appropriate way to talk about a human rather than a database or a git branch). Americans are digging their own divide focusing on these pointless issues, taking precious narrative space away from more important things such as the protests going on right now.

      If you want to reunite people, you need to stop thinking in terms of "whose life does this affect", and start thinking in terms of "is this actually important enough to distract everyone from everything else".

      13 votes
      1. [12]
        Flashynuff
        Link Parent
        If it's not important, then why does changing it matter? It doesn't seem like a big deal to me. I don't think this is distracting unless you let it be. Most folks can handle caring about multiple...

        If it's not important, then why does changing it matter? It doesn't seem like a big deal to me.

        is this actually important enough to distract everyone from everything else

        I don't think this is distracting unless you let it be. Most folks can handle caring about multiple things at the same time.

        2 votes
        1. [11]
          Adys
          Link Parent
          I invite you to consider that this issue has standalone caused an 88 comment thread on a heavily left-leaning website, as well as multiple other similarly large threads. This is a distracting...

          I don't think this is distracting unless you let it be. Most folks can handle caring about multiple things at the same time.

          I invite you to consider that this issue has standalone caused an 88 comment thread on a heavily left-leaning website, as well as multiple other similarly large threads.

          This is a distracting issue. That it's not distracting you is irrelevant. It's distracting a lot of people, and it's especially distracting "the other side", that will jump on the opportunity to showcase how the Big Bad is coming to change your way of life.

          4 votes
          1. [4]
            NaraVara
            Link Parent
            The Big Bad is coming to change their way of life though, insofar as our way of life is predicated on racism. I’m not sure “distraction,” as measured by nerds’ willingness to argue over it is...

            Big Bad is coming to change your way of life.

            The Big Bad is coming to change their way of life though, insofar as our way of life is predicated on racism.

            I’m not sure “distraction,” as measured by nerds’ willingness to argue over it is really a germane metric either. You’d get a similarly interminable comment thread if you asked a room full of journalists about how to use an em dash.

            2 votes
            1. [3]
              Adys
              Link Parent
              Ever heard "you catch more flies with honey"? Or is Daryl Davis just doing it wrong and the proposed strategy of "fuck those guys" straight up better? I've argued this point enough; if you're not...

              Ever heard "you catch more flies with honey"? Or is Daryl Davis just doing it wrong and the proposed strategy of "fuck those guys" straight up better?

              I've argued this point enough; if you're not seeing the logic in it by now, that's out of my hands.

              2 votes
              1. [2]
                NaraVara
                (edited )
                Link Parent
                Firstly, Daryl Davis is better at self-promotion by assuaging egos than at fixing anything. It's worth asking if it was so effective why is anyone only ever able to cite that one guy? Don't you...

                Ever heard "you catch more flies with honey"? Or is Daryl Davis just doing it wrong and the proposed strategy of "fuck those guys" straight up better?

                Firstly, Daryl Davis is better at self-promotion by assuaging egos than at fixing anything. It's worth asking if it was so effective why is anyone only ever able to cite that one guy? Don't you think that actual efficacious treatments might have been independently replicated a few more times by now?

                Secondly, if your argument is that racists shouldn't be made to confront and recant their racism then we're not really "catching" any flies. We're just letting them continue buzzing around and hoping they stay away from our food.

                Gandhianism or MLK style of non-violence was never about just sitting passively and not demanding what you deserve. It's about forcing people to come to terms with the unjust foundations of their status and actions. If you're not actually doing that then you're not engaging in any sort of righteous struggle for change, you're just perpetuating the status quo. The confrontation is a critical step in the process of moral evolution. If there is no friction there is no movement. If there is no discomfort there is no growth.

                And lastly, it takes a hell of a lot of defensiveness to interpret "Can we not use master/slave terminology? It makes me uncomfortable to read" as "Fuck you Whitey!" That kind of fragility is totally uncalled for and unproductive.

                I've argued this point enough; if you're not seeing the logic in it by now, that's out of my hands.

                This comment seems more vinegar than honey to me, which is illustrative. People are rarely neutral about who they decide deserves to be won over with honeyed words and who is expected to just put up with the thousands of individual, microagressive droplets of vinegar day to day. Usually the honey is for people who look like them with whom they can sympathize and the vinegar that others are forced to drink is ignored because its' outside their experience.

                It's worth asking why there is more interest in mollycoddling the feelings of people who have internalized racist sentiments than in uplifting the status of the people racists wish to target? Sure there is a practical consideration around backlash, but you can imagine how annoying it is to hear people trying to pooh-pooh any specific suggestion with no substantive criticism about the proposal in itself aside from appealing to the theoretical harm of offending the delicate sensibilities of racists just off-stage? If they are concerned I think they should feel free to come and air their concerns. I don't know who it serves to constantly have devils' advocates showing up and argue on their behalf.

                If there is a substantive concern about this, like it's not useful, the conflation is off base and it's not as offensive taken in proper context, the transition would be costly, or I hear the concern but think there are better ways to address it and [insert better ways here], those are worth hearing. But if the only concern is "I don't think this is important" or "David Duke will say something mean about it" I'm not seeing the value.

                And just to disclaim, I don't even think this is a big deal or worth the effort. But I'm also not a descendant of slaves so I'm willing to defer to their feelings on the matter.

                2 votes
                1. Adys
                  Link Parent
                  I stopped taking your post seriously right there. I'm able to cite more than the one guy, he's just the first who comes to mind because he's indeed famous and I wasn't going to bring up my buddy...

                  Firstly, Daryl Davis is better at self-promotion by assuaging egos than at fixing anything. It's worth asking if it was so effective why is anyone only ever able to cite that one guy? Don't you think that actual efficacious treatments might have been independently replicated a few more times by now?

                  I stopped taking your post seriously right there. I'm able to cite more than the one guy, he's just the first who comes to mind because he's indeed famous and I wasn't going to bring up my buddy Lucas who's been doing similar stuff given you're less likely to know him. I'm not arguing in favour of "peace and love, kill them with kindness", all I'm advocating for is better focus on issues that matter. This whole charade of changing terminology has been going on for years, I don't know anyone who has been convinced; at most all I've heard is "it doesn't affect me so I ignore it; if it makes people happy I'm in favour of it". That this is the hill so many would die on, for fear of being perceived as potentially racist/sexist/… if they don't, is concerning.

                  And I find discrediting people who would actually do meaningful work in reducing hatred with "oh yeah, well why aren't there more guys like him then" frankly appalling. "If Stephen Hawking is so smart, why aren't there more people like him?" would be met, from me, with the same dumbfounded reaction.

                  I'm done with this discussion because I frankly don't have Daryl's patience. What's left of my life is too short to worry about americans self-destructing; whether you personally heed my advice or choose to instead discredit people effecting meaningful change? I'm white, european, living in a pretty safe country. It won't affect me, so I can simply stop arguing. That is privilege.

                  2 votes
          2. [6]
            Flashynuff
            Link Parent
            I think the blame then lies with the folks getting distracted by it, right? It's the same thing with tabs vs spaces: most people don't care one way or the other except for a very vocal subset....

            I think the blame then lies with the folks getting distracted by it, right? It's the same thing with tabs vs spaces: most people don't care one way or the other except for a very vocal subset. Folks should do what works for them and I think anybody making this change, whether it's GitHub or a solo developer, has decided it makes sense for them to do.

            2 votes
            1. [5]
              Adys
              Link Parent
              It doesn't matter where the blame lies. The end result is more people getting hurt. That whole "it's the user's fault" is just victim blaming (and yes, the "people getting distracted" are victims...

              It doesn't matter where the blame lies. The end result is more people getting hurt. That whole "it's the user's fault" is just victim blaming (and yes, the "people getting distracted" are victims as well in this scenario, though obviously not as much as the people who get hurt/killed by their action, or lack thereof).

              2 votes
              1. [4]
                Flashynuff
                Link Parent
                I think that avoiding positive change for fear of upsetting / distracting other people is not a good way of going about life. We should always strive to do what is right, even if it is small. For...

                I think that avoiding positive change for fear of upsetting / distracting other people is not a good way of going about life. We should always strive to do what is right, even if it is small.

                For another social example, consider the idea of saying transgender folks can use whatever bathroom they'd like. It is a small, benign, good thing to do so, yet some other people get incredibly and loudly upset over it. Does that mean it is distracting from the transgender rights movement to do that?

                1 vote
                1. [3]
                  Adys
                  Link Parent
                  The bathroom issue is a fair bit more significant than this terminology thing. And when I say distracting I do mean for both parties. In a society where there are massive, glaring problems with...

                  The bathroom issue is a fair bit more significant than this terminology thing. And when I say distracting I do mean for both parties.

                  In a society where there are massive, glaring problems with racial inequality, there is frankly no room to distract from things like BLM with long-winded explanations why changing a word or two in the CS community makes sense, or why "defund the police" is actually a nuanced ask to limit the police budget and not get rid of police altogether, etc.

                  You can't play politics and then complain "it's the user's fault they get distracted or don't understand the message". Playing politics means understanding public relations, making a message appealing to the masses, and focusing on the big, easy to understand issues.

                  1 vote
                  1. [2]
                    Flashynuff
                    Link Parent
                    idk I feel like this issue is very simple; the change is very simple, easy to understand, and harmless; and treating politics as a PR game to win is a dumb and harmful way to approach things. That...

                    idk I feel like this issue is very simple; the change is very simple, easy to understand, and harmless; and treating politics as a PR game to win is a dumb and harmful way to approach things. That sort of garbage marketing mindset is how we end up with centrist Dems completely coopting giant popular movements in an attempt to make them more palatable to the suburban moderate who only exists in the imagination of DC strategists.

                    If people were not big mad online about this, would you even care?

                    1 vote
                    1. Adys
                      Link Parent
                      The primary reason I care about this is because it's causing a fuss. I don't care about the change itself as I said, I care about how it's hurting the cause (see all my other posts).

                      The primary reason I care about this is because it's causing a fuss. I don't care about the change itself as I said, I care about how it's hurting the cause (see all my other posts).

                      1 vote
    4. poopfeast6969
      Link Parent
      As a programmer and insensitive human being, I don't like it when I can't apply clear cut rules to things. I can only operate as a person if I simplify the world, so the issue for me is where to...

      As a programmer and insensitive human being, I don't like it when I can't apply clear cut rules to things. I can only operate as a person if I simplify the world, so the issue for me is where to draw the line on actions that benefit people I haven't met. It gets overwhelming pretty fast.
      There are probably millions of people I could help in some small way right now, and I don't want to think about that.
      If I can establish stricter criteria, I don't have to bear the moral responsibility for all those I'm not helping.
      Aside from avoiding things like this entirely I can't see an easy answer.

      This is a great thread. I've never seen this discussed so well.

      2 votes
  8. [2]
    vorotato
    Link
    Master never made any sense for Git any ways what with there not being any inherently "blessed branches". The name is a carry over from other version control systems with a more limited paradigm....

    Master never made any sense for Git any ways what with there not being any inherently "blessed branches". The name is a carry over from other version control systems with a more limited paradigm. Main is also 2 fewer characters to type. The only change I would approve of more than calling it main, would be calling it "A" . I'm embarrassed that anyone would ever defend a longer name for the default branch.

    1 vote
    1. viridian
      Link Parent
      There may not be any de facto blessed branches given that we are talking about a graph based VCS, but in practice I've worked at or with multiple $MEGACORP businesses where master is incredibly...

      There may not be any de facto blessed branches given that we are talking about a graph based VCS, but in practice I've worked at or with multiple $MEGACORP businesses where master is incredibly sacred. There's actually a small part of me that wants Atlassian to adopt this change by force, just so I can hear from $MEGACORP friends about how much of a disaster this caused to their fragile, onerous change management processes.

      I don't get the long name short name thing though. My branches, like my variables, tend to accurately describe the current thing I'm working on (and thus be far longer than master or main). I've never felt impacted by the char length of a branch.

      1 vote
  9. crdpa
    Link
    I read somewhere that ‘master‘ would still be recognized as a command and resolves to ‘main‘, is that right? I think github is large enough that this change will influence other git services.

    I read somewhere that ‘master‘ would still be recognized as a command and resolves to ‘main‘, is that right?

    I think github is large enough that this change will influence other git services.

    1 vote
  10. [2]
    Sand
    Link
    This is honestly laughable. Who the hell sees the colour black and immediately thinks of race? Do these people think that having "black" symbolise something negative, in any context, is racist?

    This is honestly laughable. Who the hell sees the colour black and immediately thinks of race? Do these people think that having "black" symbolise something negative, in any context, is racist?

    23 votes
    1. viridian
      Link Parent
      I always think of this clip where a Dallas commissioner objects to the term black hole: https://www.youtube.com/watch?v=Hu2rluUb8ck&feature=youtu.be Later on in the same meeting, he argues that...

      I always think of this clip where a Dallas commissioner objects to the term black hole: https://www.youtube.com/watch?v=Hu2rluUb8ck&feature=youtu.be

      Later on in the same meeting, he argues that angel's food cake and devil's food cake are also racial pejoratives.

      11 votes
  11. [4]
    Maddox
    Link
    I live in one of the blackest cities in America, and this comes off as silly. Personally though, I prefer "main" branch.

    I live in one of the blackest cities in America, and this comes off as silly. Personally though, I prefer "main" branch.

    2 votes
    1. [3]
      tindall
      Link Parent
      Oppression does not travel by osmosis.

      Oppression does not travel by osmosis.

      2 votes
      1. [2]
        Maddox
        Link Parent
        I would not consider the phrase "master branch" oppressive to anyone.

        I would not consider the phrase "master branch" oppressive to anyone.

        3 votes
        1. tindall
          Link Parent
          And that's not what I said, either. It's a term that some people don't like because it invokes a long history of oppression, not that it in itself is particularly oppressive.

          And that's not what I said, either. It's a term that some people don't like because it invokes a long history of oppression, not that it in itself is particularly oppressive.

  12. Contentus
    Link
    Instead of going forward we are standing still changing words. What a waste of time. For those who think that a change "hurts no one", read about opportunity cost.

    Instead of going forward we are standing still changing words. What a waste of time.

    For those who think that a change "hurts no one", read about opportunity cost.

    2 votes