How do you feel about changing naming terms?
Lewis Menelaws

Lewis Menelaws @lewismenelaws

About: My name is Lewis Menelaws. I am a developer and entrepreneur located in Sarnia, Ontario focusing on creating great things for the web. Currently I am Lead Developer and Co-Founder of TMRRWinc.

Location:
Ontario, Canada
Joined:
Mar 12, 2017

How do you feel about changing naming terms?

Publish Date: Sep 12 '18
36 24

Here is something that has been controversial in the Open Source community this week.

A pull request to the main cpython library that proposes to change the master/slave terms used in the repository.

What are your thoughts?

Comments 24 total

  • Marlysson Silva
    Marlysson SilvaSep 12, 2018

    Based on this problem... Then will remove these word from everything, already that attack someone...

    I have seen this words in your meaning based on its environment... Technology.

  • Ben Halpern
    Ben HalpernSep 12, 2018

    I am firmly in the camp of changing master/slave for a number of reasons:

    • We change the names of things in code all the time. And we make much tougher technical challenges than changing some terminology consistently.
    • Master/slave is an incomprehensible technical metaphor. It makes zero sense. Primary/replica or leader/follower and some others all make way more sense as to what's actually going on.
    • It is horribly insensitive.
    • It's presence as a term brings confusion, as there will always be a lot of people who just don't want to use this term. Nobody is going to be strongly against using primary/replica beside the people protesting the changing of this in the first place. Big corporations are probably not going to use terminology like slave going forward, and neither are many individuals. Holding onto this is impractical.

    I'm not someone who always agrees with this side of the issue. For example, I don't think the term "postmortem" to be all that problematic, though some will (I'm always willing to have my mind changed though). I do not see grey area on this issue. I've been sort of campaigning for this change my whole software career so I'm glad it's picking up steam.

    • Lewis Menelaws
      Lewis MenelawsSep 12, 2018

      Interesting perspective. I really like this line:

      We change the names of things in code all the time. And we make much tougher technical challenges than changing some terminology consistently.

      It makes sense. A lot of people are getting upset but code is changed all the time. Why not the naming?

      • Alain Van Hout
        Alain Van HoutSep 14, 2018

        Not really applicative to the use-case of the main post, but I generally try to avoid name changes in code, at least when it comes to concepts.

        The reason for that is that it has substantial benefits to have a clear and stable terminology to lean on, first and foremorst inside your team but also across teams and between developers and non-developers. Being lax with naming is a substantial contributing factor for misunderstandings, leading to plenty of bugs and loads of wasted time.

        The main post if of course not about that, but about whether the use of certain words is socially advisable (even though there is indeed a side-case to be made about using clearer terms).

    • Max Cerrina
      Max CerrinaSep 17, 2018

      Primary/replica makes a MILLION times more sense to me. Master/slave would only make sense (and I still wouldn't okay the terms, to be clear) if we were talking about something that is really more MVC, ie, highly delegated, aaaand even then

  • John Alcher
    John AlcherSep 12, 2018

    I was trying to stop a process the other day and found out that Linux uses a very insensitively-named kill command. Oh, I was reading the man page for that command when I realized why is it man and not woman anyway? Can we find alternatives to blacklist and whitespace while we're at it?

    This is ridiculous.

    • Evaldas Buinauskas
      Evaldas BuinauskasSep 12, 2018

      Not to mention that a Linux process can become an orphan!

    • Patrick Minton
      Patrick MintonSep 12, 2018

      But nobody is doing any of that? At all? Why on earth are you using the slippery slope argument in a case where THERE IS NO SLOPE? master/slave has connotations that aren't in the same universe as any of these terms.

      I don't understand where all this passion comes from. We all pass by pull requests every day that probably contain some questionable code, but whatever, it gets the job done, and we're busy, so we let it pass...but we want to die on the hill of protecting master/slave nomenclature because we are SO butthurt that there are some people that find the terms offensive?

      Really?

      • John Alcher
        John AlcherSep 13, 2018

        Idk if slavery is in a different universe than murder, gender equality, and racial segregation, but hey you might be right.

        And that's no passion on my part. Just annoyance that we enable these kind of behaviour.

  • Casey Brooks
    Casey BrooksSep 12, 2018

    Personally, I'm of the camp that it's not as "horribly insensitive" as people claim. Master/slave is just a term, it's a historical fact that people recognize. Even though slavery still exists today, the term "master/slave" is making no suggestion to those individual or the morality of slavery. A master/slave relationship is just that, a commonly-recognized relationship.

    That being said, @ben is absolutely right that there are better, more accurate, and more descriptive terms that could be used. Primary/replica describes what's going on better than master/slave.

  • Leighton Darkins
    Leighton DarkinsSep 12, 2018

    Ditto what @ben said.

    I think as software developers we're notoriously bad at naming things, and this particular terminology falls firmly under the umbrella of "bad names for things".

    The insistence of folks to cleave to (and argue for) these outdated and poorly chosen names is foolish, regardless of the reason.

    If there's a better thing to call something, we should call it that.

    If the suggestion of making this type of change (with the added reasoning of being sensitive and empathetic towards other folks in your professional community) lights a fire in your belly or upsets you, then there's a bigger, personal, problem at hand.

    For some comic relief, I'm reminded of this:

    Bullfrog? I'd have called it a Chazwazza!
    Bullfrog? I'd have called it a Chazwazza

  • Leighton Darkins
    Leighton DarkinsSep 12, 2018

    It's not because something may have a bad connotation than an entire "community" should change.

    That really depends on the community. Does the community value including diverse folks, from diverse backgrounds? Does the community want to welcome those folks, and allow them to feel at ease? If it does, then the onus is most certainly on the community to change.

    Moreover, I'm confused by the need to clarify that the change, if made in relation to it's connotation, would be unreasonable?

    Is it not the same, reasonably insignificant change, regardless of the motivation?

  • Michael Cain
    Michael CainSep 12, 2018

    Yes, the terminology needs to change. I don’t think anyone disagrees with that.

    What I do think gets tiresome is the histrionics that attend these conversations. I find it awfully hard to believe that someone is going to be going about their merry way in TechVille and gasp drops dead or immediately quits their job because of such a “micro-aggression”. The virtue signaling gets really old.

    We should change it in part because primary/replica, for example, is a clearer term for what it actually is, as well for cleansing a term that refers to a terrible human institution.

  • Dian Fay
    Dian FaySep 12, 2018

    I think it's easy to underestimate the amount of effort actually involved in terminology changes, like many people were doing with Redis last week, and I think some other bugbears of technical vocabulary are vastly overblown; the etymologies of blacklist and whitelist, for example, have nothing to do with skin color. In all, most seem to fall into one of two categories: word policing from people who've theorycrafted themselves into knots and wound up inflicting their guilt complexes on the rest of us (seriously, what actual objection is there to "postmortem"?!), or low-effort trolling (we all know what man pages are short for, you're not impressing anybody). But the technical usage of master and slave is like if we'd spent the past half century calling some hardware/software system element the rapist.

  • Gaëtan Masson
    Gaëtan MassonSep 13, 2018

    My thought is simple; SJW in OSS is cancer because basically, they try to command "solutions" to non-existent problems.

    “If it's not broken, don't fix it.”

    • Anthony Bouvier
      Anthony BouvierSep 14, 2018

      But it is broken. So it should be fixed.

      There are better terms than master/slave; many listed in this thread. The better terms are clearer from a technical standpoint and we should always strive for that instead of hanging on to something just because it is status quo. It's not like databases have been around forever. The master/slave relationship was chosen as the word pair in a time when throwing around the words master and slave in all white, all male basement labs of universities was never going to cause a ruckus. Those terms were used in a less diverse vacuum without thought to it being a bad choice because they just didn't have to care about it in their small world.

      The very fact that you try to equate people fighting for social justice to cancer clearly puts your ideas and ideals out there. So yes, you're right, your thought is simple.

      • Gaëtan Masson
        Gaëtan MassonSep 14, 2018

        I’m glad to have simple thought and not overthink things to the point to find hate, oppression or whatever everywhere (like those people I call « cancer ») which result in waste of time and energy for everyone.

        The very fact is that your « superior thought » forget one crucial parameter: context matter. Here it’s about programming. Neutral field with neutral words chosen to illustrate concepts. Nothing more.

        If someone finds master/slave offensive, especially in this context, he is the one who needs to be fixed, not the code.

        • dean
          deanSep 15, 2018

          What about how it's inaccurate? You kinda completely ignored that part

          Primary/replica is a much more accurate term than master/slave. To be honest, I don't think master/slave is insensitive either. But primary/replica is much more accurate as to what is really going on.

          • Gaëtan Masson
            Gaëtan MassonSep 15, 2018

            I totally agree with you from this perspective; chaging a word for a better meaning is great.

            I’m just pointing people who commands to change words just because they find it offensive.

  • Yury
    YurySep 13, 2018

    I try to think of words that cannot offend anyone. Haven't found one yet though

  • Alex Macniven
    Alex MacnivenSep 14, 2018

    The fact that this is being discussed is a really big plus for the community as a whole and is a clear reflection of society at present.

    My personal opinion is that terminology should be as easy-to-learn and accessible as possible. Terminology should not be a stumbling block when it comes to learning, if there is a more fitting metaphor out there then let's use it.

  • Mihail Malo
    Mihail MaloSep 14, 2018
    1. This change makes sense and introduces more clarity. master/slave is too generic and the replacements are usually more informative of the actual architecture.
    2. But saying it's controversial is ridiculous. It has no bearing on real life and can not sanely be referred to as a metaphor.
    3. If you are irrationally obsessed with insisting not only that it's a metaphor but even that it informs our thinking on other subjects, just tell yourself it's a reference to BDSM and go on with your day.
Add comment