DEV Community

Discussion on: How do you feel about changing naming terms?

Collapse
 
ben profile image
Ben Halpern

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.

Collapse
 
alephnaught2tog profile image
Max Cerrina

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

Collapse
 
lewismenelaws profile image
Lewis Menelaws

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?

Collapse
 
alainvanhout profile image
Alain Van Hout

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).