I've seen 'Active / Passive' used, that seems alright. There's plenty of alternative terms to use without borrowing terminology from sexual roleplay.
Anyway, the Sub is supposed to be the one that's actually in control for this kind of thing (otherwise you'd just be in an abusive relationship), so that confuses things when you start trying to applying it elsewhere.
The issue is acronyms; there's millions of products, schematics, datasheets, and manuals that refer to them as MISO and MOSI with no further explanation. Any new standard that doesn't fit runs into the 15-competing-standards problem, and ought to be followed by an "AKA MISO" every time it's used.
Anyway, the Sub is supposed to be the one that's actually in control for this kind of thing
I think there's a better way to put that. It's often called a power exchange. Both people involved can rescind consent at any time, and there's also negotiation that happens before scenes to set up expectations and limits, but I don't know too many subs that want to be in control of a scene. My experience is they want to give up control in a way that is safe.
I’ve seen ‘Active / Passive’ used, that seems alright
That's not always an accurate description though.
Consider a redundant two node database system where the second node holds a mirrored copy of the first node. Typically, one node, let's call it node1, will accept reads and writes from clients and the other node, let's say node2, will only accept reads from clients but will also implement all writes it receives from node2. That's how they stay in sync.
In this scenario node2 is not "passive". It does perform work: it serves reads to clients, and it performs writes, but only the writes received from node1. You could say that node2 slavishly follows what node1 dictates and that node1 is authorative. Master/slave more accurately describes this than active/passive.
There’s plenty of alternative terms to use without borrowing terminology from sexual roleplay.
the Sub is supposed to be the one that's actually in control
This is a myth, presumably meant to be reassuring to subs that are new to BDSM, at the expense of risk awareness. In principle the sub is no more "in control" than the dom is, and in practice they are often significantly less so.
Master / slave means one thing tells the other thing what to do, and the other one does it without question. The slave is not passive in performing the task.
It's a relationship that should never occur between humans, but it does occur with machines. The terms describe what is happening accurately. Other synonyms are approximations and lead to confusion in a field where confusions cause bugs / failures and depending on what you're working on, that could put lives in danger. Do you really want such confusion around the systems of an airliner, where everything has redundancy, master/slave relationships are common and something being passive means "it's only monitoring what's going on"?
You want more Boeings? Shit like this is a good way of getting there.
I seem to have stumbled into an argument that people are more passionate about than me. I mentioned I'd seen 'active/passive' used (in computer networking), and in that context, it 'seems alright' (in the sense of actively giving demands, vs. passively accepting them [and doing what it's told, of course])
If someone has made good-faith request not to use certain terminology (like Master/Slave), then I'm generally more interested in finding acceptable alternatives than I am in dismissing their concerns outright. If, at the end of a proper search for alternatives, nothing suitable can be found, then fair enough. I'd question the idea that it's really impossible to find something else though, but - for now at least - I'm sure that Dom/Sub isn't it.
Wait until you find out how many programmers don't even speak English. They must not be able to understand any of this if it's so confusing to native speakers, right?
The consequence of updating language is not plane crashes. You need to update the version of the human interaction API that you're using.
No it doesn't sound bad, words don't need to be thrown away forever just because they've been used to describe unfair treatment. I'm so sick of having to relabel so many things that are so far divorced from the social issues they are used to describe. It's so pointless and has no impact, the code doesn't care which is master and which is the slave for they are simply descriptive labels.
Are we supposed to never use the words master or slave ever again?? What's next?
My dev friends, no matter their race, all say the exact same thing. We still use master over main, come at us I guess.
Honestly, while the controversy is incredibly stupid, it's not something to get worked up about. Not good for your heart 😜
You don't have to relabel anything, just keep using old names for old stuff and maybe consider switching to main for your next GitHub project? It's honestly not that big of a deal.
It's all good and well until you start working in a repo that has both master and main branches for some reason, and it is not clear which is actually the master/main branch.
I work for s company that suddenly asked to rename a lot of stuff. This had consequences. It cost time, money, and created a disconnect between internal to the dev vocabulary that couldn’t be changed easily and user facing vocabulary. Also we were lucky but this could gave broken some long used API that we are proud not to version because the policy we have internally is “we will NEVER break the API”. And so far, for 8 years we still haven’t.
The problem with these token activism is that it's hollow in content. The intent might be good, but the action is almost pure virtue signalling.
Slavoj Zizek pointed out in multiple interviews that there's a pervert self-reflectiveness in the self-censorship: privileged people "enjoy" being guilty of their privilege, so it's more about themselves rather than the people they claim to represent. "Sorry, but you were naive and unaware of people being racist when they use these words, so let me stop them and now you are protected (by me) in an inclusive atmosphere."
A related radical freedom situation as an inverse to the above is that when friends get really close, even using racist slurs is treated as a gesture of intimacy, rather than racism. In an ideal world, the context in the public discourse would be so strong that even racist words lose their racist meaning ("oh, so you are joking as well") rather than the opposite (assuming there's ubiquitous "hidden" racism in the use of a word, even when there's clearly none).
Another critique is that it presents itself as a substitute of real solutions. Instead of addressing real problems, it provides a simple "everyday" solution, very much similar to the recycling movement. Of course we need to recycle, but we should be aware that it's not a substitute of radical real actions (e.g. stopping the big oil).
Right? I get that langauge evolves and things go in and out of fashion, but this self-censoring for things completely unrelated to the original or derogatory meanings is kind of a pointless exercise to me.
That one is the most stupid one too, because master in git doesn't even refer to a master/slave relationship. It refers to a different meaning of the word master, namely "an original from which copies can be made", as in master recording or master key. See 5b in the Merriam-Webster dictionary. And that's how it's used in git: any new branches are derived from master. Main just does not have the same nuance, because it does not imply a relationship between the branches, just that it's somehow more important than the others.
But of course, the real reason it was changed is because for companies like github it's easier to give in to the crazies who demand this than to fight them.
Is it not the main working branch? Git is a system of change not just recording change. When you start a new project, do you open a new branch or create a whole new repository? That's not rhetorical I'm genuinely curious.
I'm a dev, and I'm the opposite. At my work, we use main over master. I thought it was a little silly when we first switched, but now I'm used to it. It's an arbitrary label anyway -- could easily use trunk/branch from SVN or release/develop or any number of other labels to keep track of code.
Hell, we got a new dev on the team a month or two ago, and he tends to name things 'feat/do-the-thing' instead of 'feature/make-it-go'.
It's not as big a deal as people online make it out to be.
You're right. Call it a controller and agent. I know naming is hard, but we're smart enough to apply our lexicon.
never use the words master or slave ever again? What's next??
Ah, the slippery slope fallacy.
We still use master over main
The default for new repositories on GitHub has been main for awhile now. You would have had to put in effort to change it to something else. You're a stick in the mud.
Fuck I don't get your downvotes, you're right. I get people want to vent but in the greater scheme of things having to use different words to be a smidge more inclusive isn't that big of a deal or effort considering what some of us do to help our friends be accepted.
I remember back in the late 90s being in college. I brought my girlfriend to class one day. She raised her hand after the professer was explaining Master/Slave roles. Keep in mind, I'm white. She's black. She's not enrolle
d in this class AT ALL.
So the professer sees this, and says "Yes, you there, girl I've never seen in 4 months of this class"
And all she said was "Master and Slave drives? That sounds sexy!"
I personally think the whole backlash against master/slave in the computing world is people looking for something in their sphere of knowledge to be offended about so they can feel like they are part of "a movement". Even if some mustache twirling racist was the first "computer guy" to come up with the term and meant it to be offensive, that is not how sane people view it today. So some of the advocates for changing it should stop trying to build it up into some Pizzagate-like conspiracy against black/brown people.
Having said that, I also don't have any strong attachments to the phrasing either. Phase it out in favor of something that makes everyone happy if that keeps the peace. It is just a term that made sense at the time to describe something. There is nothing stopping us from changing it to something else now if we so choose. It is not erasing heritage or some such nonsense. If anything, people having strong hangups about it if there are better or equally as good terms out there that doesn't make people uncomfortable is far weirder in my opinion.
The only thing I have somewhat strong opinions about is making it some high priority to go back and erase those terms from solutions that already exist. Change them as you update things, sure, but why create extra work to update something old that is currently working if the only change is not functional and just verbiage. Seems like wasted effort that could be better directed and solving functional issues to me.
I don't have issues with the original terminology either, and wouldn't really care if it was changed. But if it were changed to Dom/Sun then it would reinforce the meme of the stockings wearing femboy programmer. XD
while in some ways I can see your point, I would just have a hard time saying this in a work meeting here in the deep south with black colleagues present
most sociologists and some psychologists would refer to this as a subconscious, or subdued form of racism.
it is kind of silly a the end of the day. How a terminology originally referring to a power dynamic. Has been so excessively ingrained in relation to race (which isn't very historically relevant) such that even using these terms in a generic capacity, not relating to in any form what would constitute this "negative slavery" concept, that it makes people feel uneasy, summarizes rather weirdly, the human condition.
maybe this is just my autism speaking, but i see so little resemblance contextually, and almost zero historical relevance that i see almost no connection between the words and the practices at hand. Like you could do a wikipedia speedrun from technology to slavery, but you could also do that from any topic, to slavery. Everything is so interconnected there is nothing pure anymore.
people looking for something in their sphere of knowledge to be offended about so they can feel like they are part of “a movement”
I always thought it was just people looking for something in their sphere of influence that they could do to make a difference, no matter how small.
The computing world is known for being hostile toward most out-groups, and I’ll welcome any effort to change that, no matter how small and how silly it seems. The real change needs to be in the people but perhaps being cognizant of such details will help remind us all to be more open and welcoming
Until proven otherwise, I assume either ignorance or malicious intentions by those who want to rename these "problematic" terms. It does nothing to improve the actual issues.
The false pretense of having done something, is worse than doing nothing. It's just noise.
To be clear: I don't mind the changing of terms. I'm too old to care about trivial stuff like main vs master. But if the reasoning for such a change is dumb and potentially harmful, you've lost my respect.
Until a couple of years ago, we had a brand of cheese called 'Coon', here in Australia.
The word isn't used as a slur over here, and the brand was simply named after the founder about 150 years back.
But it was getting increasingly on the nose as cultural influences from the US and everywhere kept seeping in, and it reached a point where it pretty much needed an excuse or at least an explanation.
So they renamed it; now it's 'Cheer'.
And at the time, there was all kinds of pearl-clutching about the malicious / disingenuous / officious / vapidly-offended / white-knighting / attention-seeking / etc / etc 'woke crowd' stomping in and making them change everything when it was perfectly good and harmless and stuff.
Six months later, nobody gave a single shit any more. Nobody died as a result or was even mildly inconvenienced, no great cultural traditions were lost, and contrary to several predictionsm newly-empowered wokeocrats have not risen from the shadows to re-gender everyone or whatever. It's that cheese with the blue white and green label, nobody reads it anyway.
My point is that small token changes cost virtually nothing, and even if they achieve little in and of themselves, the mere fact of people being willing to make them is of benefit. Small courtesies, you know? Returning your shopping cart. Smiling at passing dogs. It models kindness and consideration, and promotes the idea that those things have value.
Which is not to suggest that we must avoid giving offense at all consts; far from it. I'm one of those stereotypicallly abrasive genX types raised on ideals of free speech, punk rock, uncomfortable truths and loudly pointing out the elephant in the room no matter how many toes get stepped on. But when there isn't some burning issue that needs to be addressed, niceties be damned... then yeah, small courtesies. Give people that extra bit of room even if they don't strictly needed. It's nice to be nice.
Look back a handful of decades at all those cultural relics that your grandparents considered harmless and invisible. Asking people to drop them may have attracted ridicule and suspicion at the time, but looking back at some of them... oh dear god, really?
Hell, I remember The Black And White Minstrel Show on TV, and if you don't remember it yourself, it's far worse than you're imagining.
I like the world better without things like that, even the little seemingly-trivial ones, and even if it seems like empy virtue-signalling while you're cleaning them up.
TheBananaKing is offensive. It is a reference to Banana Republics, you know the system where corporations marginalize an entire populace and make them produce their product for profit. You should really change your username. It's trivial and nobody will care if you change it.
Obviously I do think this is as absurd as asking a company to change it's name which was named after the founder, but you went there and presented the argument for it. I can at least understand moving away from master/slave in computing especially in future products and revisions but making someone change their business name which is named after the founder's is ludicrous.
That being said, the only reason why the company changed the name was because it gave them good PR in the form of free advertising- just imagine all the headlines. Since you have no upside to changing yours, I know you won't do it. Humanity is full of virtue signaling hypocrites who are just out for themselves.
Great response, thanks for writing this. I live in the US, and your Coon -> Cheer cheese reminds me of Land O'Lakes butter -- there was a brouhaha over a decision to remove a Native American woman from the packaging. Same result, it's still in the butter section of the market.
My point is that small token changes cost virtually nothing
Well-put. I've been in the position of complaining about this type of change before, and this is a perfect counterpoint to that mindset. I've often said "What do we want? Police to face accountability when they commit crimes! What do we actually get? We're going to use the term 'main' instead of 'master' for programming things!"
What we so often forget in that moment of "What, I have to re-learn some terminology? Ugh, friction!" is exactly your point about small courtesies. Something doesn't have to be a Big Damn Deal to be worthwhile.
Until proven otherwise, I assume either ignorance or malicious intentions by those who want to rename these “problematic” terms. It does nothing to improve the actual issues.
That's because the goal is not to solve the actual issue, but to feel better because they did something. Or to avoid noise generated by lunatics online.
There is stuff that was bad, white/blacklist doesn't make much sense, when the universal "code" for allow/disallow are green and red. Allow and deny list are much better name.
Master main, is fine by me, doesnt make much sense to call it master, its only the main branch nothing else.
Shit that didnt make sense was stuff like removing community episodes from netflix, because or "blackface" without any consideration of why its there or whether it has value, just blanket ban, it was stupid af.
Totally discussing useless stuff here, but green and red to me give the feeling of temporary actions (and possibly alternating). Intuitively sounds more like slowing and speeding than it does permanently blocking or allowing something.
Black and white have the polar opposite meaning. At this point allowlist and blocklist might be a simpler solution to the "problem".
Yeah it's a problem with social media, twitter in particular. Nobody wants to put time into understanding any nuance, (and on twitter there's not enough characters to explain the nuance) so it's easier to jump to conclusions and go along with people that have jumped to conclusions because if you don't people will think you're on the "wrong side".
Leaving aside the problematic nature of the existing terms, the result was that people actually thought a little more about the relationships the things had and started using better/more precise terminology for the relationships: primary/secondary, active/hot/cold, parent/child, etc.
No we need to replace all industry standard terminology and acronyms every few years or so to keep datasheets unintelligible. Shop teachers need to be able to call their students stupid for not knowing that "tension" used to mean "voltage" 90 years ago.
It's a real issue to marginalized groups who would otherwise contribute. Less workers=less money. Less revenue=more layoffs. Seems like a real issue to me.
If you were starting out a term like PeripheralInControllerOut would make far more sense than MasterInSlaveOut.
A lot of industry-specific terms exist because someone didn't think a lot about naming 80 years ago and picked the first thing that came to mind. Turns out most offensive terms are also not intuitive to newcomers.
Because I don't want to be forced to adapt by others. Let me adapt by myself. Adding an option for change is fine, but changing the default is fucking annoying. Fuck Github for changing master.
Because I don’t want to be forced to adapt by others.
We are all forced all the time to follow social norms. Short of moving to a cabin in the woods, this is inescapable, for better or worse. In this master/main debate it seems like we can make some people happy with minimal cost. In the end it is a tiny irrelevance, when compared to other norms being changed.
It only sounds bad to the fringest of the fringe that's deceivingly loud on twitter. Good luck trying to find even one real person thinking those terms should be changed. This kind of stuff is why people vote for Trump.
But if I have the power to make a small change at work to both be more accurate and correct a minor injustice, why the heck not?! I can't fix world hunger, but I can at least start a discussion about changing some internal terminology
I think very few people mind changing it, and a few people want it changed, so it's slowly shifting across various use cases. I've only discussed the change from master/slave terminology with one person that affirmatively supported the change, and they didn't know that there's still slavery in the world today.
I don't know what to make of that, other than to say ending human slavery ought to be a higher priority than ending references to it.
I doubt that. Do you know how many system configurations depend on these keywords? Do you have any idea how many hours of work and system outages this would cause?
no please stop, i'm so tired of googling kinky stuff, seeing a spicy looking result and opening it just to see some computer server stuff pick something else idk maybe capitalist & worker, bonus points for political commentary
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.
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.
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.
Same for databases, master / slave does not really describe the relationship anymore. It's a primary, secondary, control node, read only or something else.
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'.
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).
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.
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.
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.
I've switched over to using primary/replica for database stuff because it's more accurate. The replicas don't always behave themselves so calling them "slaves" implies a level of obedience to the "master" that they don't have.
For a distributed database there is also fragmentation/sharing though. In this case calling the nodes replicas is not accurate. I guess you would call these “shard” or “dsta” nodes.
You are right about the “slaves” not behaving, in fact they jump on the chance to become the “master” themselves once the current “master” goes down. Then there is the split-brain problem.
It's really more like a worker boss relationship, but I would hesitate to call database nodes “workers” because this one is usually used for a processing engine like Spark.
In Cassandra all nodes are equal, but specific nodes hold specific parts of data. The only concept is the coordinator node which is the node that got the query. All nodes can handle all queries. The coordinator node is different per request.
Oh man, wait till they hear about how I riced both my master and slave servers. I threw so many RGB LEDs on them, they look like recipients of a Fukoshima clown bukkake.
y'all I understand there are larger issues in the world but please let's not pretend that POC working in tech feel awesome about typing master/slave in the terminal, it's outdated and should be changed.
But POC are not the only ones that have been enslaved.
Pretty much all races and people have been enslaved in history.
Slave does not equal North American POC slave and the term in this context has absolutely nothing to do with them. The only time it refers specifically to them is when discussing North American history (and maybe current history due to the fact that USA still enslaves people in prison)
One might argue that the term is outdated because slaves are less common these days, but it has nothing to do with POC (or human slaves at all). But I won't argue that because the term is very easy to understand and thus not outdated.
North American, more specifically US slavery is very recent relative to the rest of history and was deeply ingrained into the economy of half the United States. War broke out to abolish it and the effects of it are still felt today.
Pretty much all races and people have been enslaved in history.
Don't deflect from the racism, discrimination, and prejudice that black Americans still experience to this day because of slavery.
No, that's completely dependent on what you are referring too. I have never heard anyone ever referring to a server as "master" or a client as a "slave". The slave/master terminology is often used for storage. I.E. Master drive and slave drive.
that's because the server is rarely the master, the clients do work, and the server just exchanges the work of the clients, it's a lot more akin to a telephone exchange as opposed to a master/slave architecture.
Is asked the local POC (Indonesian-Japanese; Indonesian-born) and he responded (and I quote) "people need to stop being pussies". The Brazilians (Brazil mentioned!) didn't care much either.
So I don't need to pretend anything about anything.
are you a person of color yourself? Or are you white like the statistical majority of us?
Shitposting aside, i feel like if you feel weird typing it out, you probably care too much about most things in life, though then again, i'm pretty fucking autistic so.
That doesn't make sense depending on the context. New I2C standard switched to controller/target for example. This conveys that one device is controlling the other devices.
My suggestion doesn't make sense in the classic PATA sense either, since there were potentially several "slave" devices, but they weren't slaves so much as dependent on the "master."
A post-doc that occasionally taught one of my electrical engineering classes in the mid-90s liked to call master-slave flip-flops professor-graduate student flip-flops. I later learned he was not making a joke.
If it’s referring to something like a mother/daughter circuitboard, I’ll use that. If it’s a host/client connection, I’ll use that. If it’s a primary/backup redundancy situation, I’ll use that. And those are just a few examples. There is rarely a good reason to use master/slave nowadays, since most situations already have better descriptors to begin with.
You could but he has a point. The last time I used master/slave was for IDE drives which was 15+ years ago, and even then only because I happened upon a really old system using IDE drives.
The only thing I see left is "Master" by itself, like master branch. But that makes me think of like a jujitsu master which sounds really cool lol.
you could, but the connotations of master/slave have been integrated heavily over the years, and changing it willy nilly doesn't really accomplish much since we're talking about moving electrons through wires, or light through glass. So i don't think anybody really cares about it at the end of the day.
Realistically though, very little designed architectures these days operate on a master slave meta. At best there's one "primary" and several "secondary" or "follower" nodes behind it. Or some kind of democratically elected process for handling that.
Primary and secondary are usually peers, where the secondary takes over when the primary isn't functioning. Which isn't the same relationship, as the master/slave terminology indicates that if the master fails, the slave will also fail.
Parent/child is probably a better way to describe this kind of relationship.
Parent/child is probably a better way to describe this kind of relationship.
Not quite as child presumes a ultimate reliance on a parent.
In master/slave (harddrive configurations) you can promote EITHER drive to master and use the other as slave. It doesn't matter which is master. Just that they both configured correctly in regards to the other.
Parent/Child doesn't really accommodate for that quirk.
I mentally replaced cars with boats recently and it's been inducing
nautical terminology everywhere I speak. Cap'n and Crew sounds great
for this usage, it feels honest without the shock of great grandpa's
heavyweight authoritarianism. I usually wind up stepping down to
Spongebob or Pirates to filter out seriousness too, as long as the
packet arrives and the replicas are jolly.
Fair enough. Im in devops and the first thing I thought about was Jenkins, where "server" and "agent" fit quite well.
I dont think master/slave is that good of a naming scheme for fault tolerance either, since the "slave" doesnt do work so that the master doesnt have to, but it's rather an active/reserve kind of thing.
But I also admit that using different terms that fit best for every usecase would only cause more confusion than good.
Remember when we thought being overly politically correct to absurd levels was a bad thing? That said, Dom/Sub, I'd be down for that. Same meaning, different wording, and now it's also a sex reference.
Eh it's just words and they are more common than just computers every time I work on my cars I sometimes might have to bleed the slave cylinder or fill the master cylinder when doing brake work
well, i didn't know that computer hardware could be consenting and engaged with with the BDSM community at large.
Personally i just like master/slave because it's really fucking obvious how things are supposed to work. Outside of that there are some more specific terminologies that work better in specific applications. Leader follower is pretty cringe, but mostly gets the point across. Main and sub is already established lingo in the electrical field from what i understand.
But why master and slave would be a problem to begin with.
I'm still using it in git.
I think people that have problem with it must have serious issues.
It's a US American thing. Makes no sense.
In git the default branch was changed from master to main.
It wasn't. GitHub changed.
In high availability we use primary and secondary, or many other versions of the same idea (main/secondary, etc).
Which is fine because in HA it's about failover, not "who's in control".
There are areas where the master/slave terminology is used because the slave does what the master says. It's "the master has authority" not "if the master dies the slave takes over".
Primary/secondary means they're all doing their thing, but one is preferred. There's no instruction going on between them
If you have a primary and secondary web servers, you'll use the primary first, but the secondary or secondaries are a fallback
If you have a primary and secondary drive, you have two drives, one of which is more important (probably because you booted from it). The secondary could be a copy or just another drive, either way the OS or a raid controller is managing it, one drive doesn't manage another
Similarly, we have dispatch/worker- the difference between that and master/slave is that they're different things. A master should be able to work without a slave, and a slave should be capable of being promoted to master - a dispatcher can't do the work and the worker can't take over if the dispatch goes down
The funny thing is we don't use master/slave much anymore, the whole premise is that the slave doesn't start to do what it does when it starts up. I can't think of any examples of it in the past decade - other paradigms, with a different relationship and a different name, have replaced it
Redis, rabbitmq. There are infrastructure where all nodes work but only one node is responsible for properly and timely synchronizing changes, which is a hard problem to solve in a distributed fashion.
That doesn't really match the master/slave relationship. The distributed instances aren't slaved to the master. They're each doing their own thing, but as part of that they have a hierarchical relationship when it comes to synchronization
Distributed computing gets more into the concept of swarms. Each piece is autonomous, and the swarm self-organizes. We made up a bunch of paradigms around this that were basically obsolete by the time we needed them - I think the relationship here is leader/follower, but I've never heard that terminology outside the classroom
They're sharded. It's like host/mirror, except each mirror is an equally correct part of the real picture
One of them is the leader, but it doesn't control the rest of them. It just coordinates them
When you get into swarm concepts, like sharding or activitypub, it doesn't make sense to describe the relationship between nodes anymore. The relationship between any two nodes is "part of the same swarm". You describe the nature of the swarm as a whole, or the behavior of individual nodes
My user name on all my PC's(non root) is literally Master, my PC's are all Slave, slave1, slave2.
I will fight to keep them that way.
I am also extremely anti slavery for sentient creatures.
Words matter in the context of their intent.
Dumbing down of the language by forcing alternate uses of a word to mean something other than its obvious intended use is evidence of dilusional minds. Pure and simple, they don't deserve a seat at the table.
Weird hill to die on. Language changes. Some people think it's how new ideas are not only shared but how they're formed. You might be interested in Latin.
Embedded systems run into this a lot, especially on low level communication busses. It's pretty common to have a comm bus architecture where there is just one device that is supposed to be in control of both the communication happening on the bus and what the other devices are actually doing. SPI and I2C are both examples of this, but both of those busses have architectures where there isn't one single controller or that the devices have some other way to arbitrate who is talking on the bus. It's functionally useful to have a term to differentiate between the two.
I've seen Master/Servant used before which in my experience just trips people up and doesn't really address the cultural reason for not using the terms.
Personally I'm a fan of MIL-STD-1553 terminology, Bus Controller and Remote Terminal, but the letters M and S are heavily baked into so much literature and designs at this point (eg MISO and MOSI) that entirely swapping them out will be costly and so few people will do it, so it sticks around
There’s the “master” branch in git, often named “main” now. In distributed systems, there’s often “master” and “slave” nodes, often named “primary” and “follower”/“replica” now
The master branch in git isn't the same though. It's closer related to the word "remaster." Master used to mean the original document is still used everywhere in tech and outside of it.
Main makes more sense since a master copy should be something that doesn't change in my opinion. But that's semantics...
I mean master on git is a stretch but honestly it would make way more sense for it to be like trunk given the whole branch thing. I honestly never see master and slave node but rather primary and actually usually secondary.
For IDE drives, Master/Slave is both correct and describes properly the functionality.
Only one device can talk on an IDE channel at a time (one IDE ribbon cable is one channel). The Slave Drive requires the Master drive to be able to connect to the controller. If there is only one drive, it must be designated the Master drive.
We don't share multiple devices on a single channel anymore - SATA, PCI-E, these techs have only one device per channel (or only a certain number of channels dedicated per device).
The old Master/Slave system was a hack to get double the IDE devices connected per controller channel.
We don’t share multiple devices on a single channel anymore - SATA, PCI-E, these techs have only one device per channel (or only a certain number of channels dedicated per device).
Right... This desire to change verbiage on a dead technological concept is kind of stupid. I taught in an R1 institution. This topic DOES come up. And nearly verbatim it was "While it's unfortunate naming convention existed... we simply don't operate that way anymore." It was never a problem.
All this other shit people keep bringing up like git branching... "Master" was a shit name for the main branch, and "slave" doesn't appear at all. So that's not even relevant and I simply don't understand this aversion to words just for the sake of manufactured "hurt".
Others are saying HA... Except that Master/Slave doesn't describe any HA I've worked with. Nor the terms were used in any of them.
I think I could argue that master/slave doesn't describe that functionality. Does the master drive control the slave drive?
I think a better example is the SPI bus, which has a one-controller-many-peripherals bus topology with two data lines often referred to as MOSI and MISO: Master Out Slave In and Master In Slave Out. (in addition to a clock line and one or more chip enable lines) In this case the controller does literally control the peripherals, which aren't allowed to put data on the bus unless commanded to. Newer documentation is using the terms COPI and CIPO, for Controller Out Peripheral In and Controller In Peripheral Out. Personally I prefer MOSI and MISO because there's a definite way to pronounce them; how do you pronounce "CIPO?" See-poh? But it's something for someone somewhere to be uppity about so sure let's expand the glossary.
The activity light on the Master drive will light up in sync with the Slave drive when accessing data on just the Slave drive. At the end of the IDE lifespan, there was a movement to put the names as Primary and Secondary instead. It doesn't really describe the relation to how the hardware works, though.
Do all pf these things still imply some form of ownership, natural hierarchy? Are numbers racist now? Whenever I type 1 over 2, I think about black people getting whipped. :(
We use this terminology in the warehouse I worked at to describe smaller orders that were part of a larger order. So you build all the child orders first, then assemble them into the larger parent order.
I'm not sure we even need that terminology at this point... I knew it from hard drives but I'm either 1) dealing with way more than two drives, or 2) using Linux which I don't even think of as a master/slave so much as a fuck-you-mount-me-or-not-I-don't-care partitions.
I'm not really sure where else it's used, especially since everything else seems to just be primary/secondary. But I'm no CS major so IDK.
Changing terminology also creates a mess and lots of confusion. I always want to check out the master branch but some people now started calling it main. I don’t mind either way but constantly changing it is horrible
I really hope they adopt this. Not just for tech. To me, the world would become a little bit more interesting with a payment card called a DomCard™ in it.
Looking at your self-description in your profile, you don't seem like the type to be a raging MAGA idiot, but saying things like "soyflake" really makes you sounds like one.
Whatever you say. I hate it when people get offended by the most irrelevant things, and the word "soyflake" seems perfect for those kinds of people. My invention btw - it's a combo of soy and snowflake that just came to me as I was writing the above comment.
Also, I don't really like Trump. But I also don't like Harris even more. Trump is also friendlier to crypto. Harris leans way too much into Marxist ideas for my taste and also I hate wars and the deep state (which is more related to the left than the right). But don't get me wrong, I also hate hyper-religious MAGA low-IQ hillbillys. I REALLY, REALLY like Elon tho. And I like how he is fighting the obvious left-wing bias we have in cyberspace.
I'm a neurospicy guy with spicy multidimensional beliefs. Hate me, but that's how I am, at least for the moment. I'm fairly fluid when it comes to my beliefs. I'm for example pretty deep into a conspiracy arc atm, but that might change.
Funny how people get heated over things that don't matter. OK, it has been one way for a long time. But had it been Parent/Child the same amount of time, would it be any different?
As long as you know the meanings of what is used, it doesn't matter what they are. If someone would rather not use master/slave, let them. No one is stopping you from making a choice to keep using it. You also might have to interact with consequences for that choice, but that's what you get for working with other people. 🫠
It’s been primary/secondary and main/secondary in the automotive hydraulics world since at least 2000. I know because my hs car repair class used master/slave and I had to do a double take for a second back in ‘01 looking at the manual before bleeding the brakes on a focus.
Is everything else in the hydraulics world also primary/secondary?
The primary and secondary cylinders are what translate the motion of the pedal into the hydraulic medium and then into physical motion of the calipers. Inside the caliper is the secondary cylinder that moves back and forth when pressed on by the hydraulic fluid.
In brakes it’s usually called primary and piston or master and piston though.
Even the 90 year old guy and the transmission shop didn’t say master and slave cylinder when they were putting new clutch plates in my truck a couple of years ago.
I loathe the "responder" term in "Controller/Responder" but whatever. If learning to use two different words increases accessibility it's fine. I'm pretty good at learning words and what they mean. Been doing it my whole life.