this post was submitted on 20 Aug 2024
620 points (88.9% liked)

Showerthoughts

29793 readers
847 users here now

A "Showerthought" is a simple term used to describe the thoughts that pop into your head while you're doing everyday things like taking a shower, driving, or just daydreaming. A showerthought should offer a unique perspective on an ordinary part of life.

Rules

  1. All posts must be showerthoughts
  2. The entire showerthought must be in the title
  3. Avoid politics
    • 3.1) NEW RULE as of 5 Nov 2024, trying it out
    • 3.2) Political posts often end up being circle jerks (not offering unique perspective) or enflaming (too much work for mods).
    • 3.3) Try c/politicaldiscussion, volunteer as a mod here, or start your own community.
  4. Posts must be original/unique
  5. Adhere to Lemmy's Code of Conduct

founded 1 year ago
MODERATORS
 

It sounds way less offensive to those who decry the original terminology's problematic roots but still keeps its meaning intact.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 38 points 3 months ago* (last edited 3 months ago) (7 children)

I'm a developer. I use main/release/dev for new projects, because it just sounds better and is more intuitive to me honestly. "Master" doesn't make much sense. Like what's so "master" about a "master branch"? It's just the main branch everything gets merged into. It doesn't "control" branches. There's no "master/slave" relationship there. So again, "master" was never really intuitive to me.

Old projects don't get relabeled, they stay master, cause relabeling the main branch could cause potential problems. That's my two cents.

[–] [email protected] 24 points 3 months ago (2 children)

I look at “master” in our repo like you would refer to a master recording or a remaster, or similarly the gold master for when you could say a video game has gone gold.

[–] [email protected] 4 points 3 months ago

That's why they used master. And this makes the whole "master is a bad word" stupid, at least in Git context.

[–] [email protected] 2 points 3 months ago (1 children)

I don't know what a master recording is. Googled it and it seems to be related to vinyl or something. So yeah, kind of hard for me to wrap my head around that, but definitely an interesting outlook.

[–] [email protected] 14 points 3 months ago

the master is the recording, all other recordings stem from

[–] [email protected] 12 points 3 months ago* (last edited 3 months ago)

Same for databases, master / slave does not really describe the relationship anymore. It's a primary, secondary, control node, read only or something else.

[–] [email protected] 6 points 3 months ago

I think that's because in computer science most master/slave nomenclature comes from hardware with a command/control structure (still notable in things like Spark where the namenode/master node controls the data nodes).

GIT just took naming conventions from other existing design patterns (although I should probably look up sources to verify that assumption).

[–] [email protected] 6 points 3 months ago

That's where you should use something more like top / bottom /s

I think in this sense, master is more akin to the 'recording' master - The best version of the recording to which others are generated, and all parts merged; no 'slaves' necessarily just the 'master'.

[–] [email protected] 2 points 3 months ago

We renamed everything to keep shared pipelines working with one branch.

[–] [email protected] 0 points 3 months ago (1 children)

Master can also mean proficiency. If you say you've mastered a trade it doesn't mean you enslaved the trade, you simply have complete knowledge of the trade.

So in that context, the master branch is the complete branch. The branch that other branches stem from because it's the one with code from all the teams. You could branch from another team member's branch but if that branch hasn't merged from master in a while, it won't have all the knowledge (code). When you merge in master you're getting knowledge from elsewhere from the branch that's aware of more things than your branch is: the branch that has mastery of the code, the master branch.

[–] [email protected] 7 points 3 months ago (1 children)

That's not how the terms entered computing though. We always used master in opposition of one or multiple slaves. It implies that one component has control and orders the other one around.

[–] [email protected] 2 points 3 months ago (1 children)

So in a git commit (since they mentioned branches)... What's the slave? Since your the one gatekeeping the word you should know right? How come Git can't be Master in the context they provided when there is no existence of a slave commit?

[–] [email protected] 0 points 3 months ago (1 children)

I'm not sure where you're going with this. I haven't gatekept anything, you can use whatever term you want, that's none of my business. You can happily read my other comment. To me, "master" makes no sense if there are no "slaves". That's why I don't use it. It doesn't make sense to use it. You do you, that's your business.

[–] [email protected] 1 points 3 months ago* (last edited 3 months ago) (1 children)

https://mastering.com/how-to-master-a-song/

To master something, has a number of meanings that don't require the use of "slaves".

https://www.merriam-webster.com/dictionary/master

Definitions most definitions of the word have nothing to do with slaves.

Edit: In this case, I believe that we all treat Git the same as this definition in specific...

: to produce a master recording of (something, such as a musical rendition)

So just because you only know of "master" in regards to "slaves"... that doesn't make you right.

[–] [email protected] 1 points 3 months ago (1 children)

Never said it made me right. Just didn't make sense to me. You can still use whatever you like, as I do.

[–] [email protected] 1 points 3 months ago (1 children)

That’s not how the terms entered computing though. We always used master in opposition of one or multiple slaves.

And yet you said this... Acting like you speak for the entirety of industry, when I bring up one specific facet of our industry that isn't using the term juxtaposition to "slaves"... but rather to other concepts of "master", you now magically change your tune.

[–] [email protected] 1 points 3 months ago

Look, I come from the hardware part of the industry and have never seen anyone talk about "master records" in software but always about master devices controlling slave devices. I'll give you that, apparently "master records" are a thing (although I'm curious in what part of the industry). At the same time, it seems so niche and weird to me that there's no point for me to use it. I'll stick with main because it just makes more sense and seems a lot more intuitive to people than to think about master records and what not. You do you, I personally absolutely do not care at all what you go with in your projects.

[–] [email protected] -5 points 3 months ago* (last edited 3 months ago) (1 children)

Did you know that most people are not developers, and for many other use cases "master" does in fact imply control?

Edit: I guess not

[–] [email protected] 5 points 3 months ago

We're talking about computing here. At least the post does. I guess you could be a QA engineer or something else, but this discussion is mostly a thing with developers.