6 ms·
Replaced occurrences of master/slave terminology with leader/follower
- wirrbel 12y agothe terms m/s are not even well-describing or giving useful information... its good that projects think of alernatives
- NhanH 12y agoIn that aspect, I don't think leader/follower conveys any more information than the former terms either. It seems like this just opens up a whole lot of StackOverflow question on "Is there any difference between master/slave architecture and leader/follower one".
- seandougall 12y agoHence why they used primary/replica instead.
- herge 12y agoIs there a way to remove comments on your projects pull requests? I'm sure there are places to discuss the politics of this change that are better than posting meme images to a source code repository.
- akerl_ 12y agoNot really. There's some debate on how GitHub could best accomplish this, but so far they've been non-committal about a solution: https://github.com/isaacs/github/issues/38 https://github.com/isaacs/github/issues/38
- Tehnix 12y ago.... this is simply lame, the master/slave term describes perfectly fine the relationship between the parts, and leader/follower is a bit more vague, since a follower is during it voluntarily, while the slave adheres to the masters rules... At least how I see it. I'd say this is just plain being oversensitive...
- seandougall 12y agoLeader/follower isn't what they went with; as noted elsewhere, they used primary/replica instead. Master/slave also doesn't accurately describe it beyond a very superficial level, and its historical usage doesn't make it any more apt. In distributed systems, the primary does not sit back while forcibly delegating all its productivity.
- ben0x539 12y agoGood call. "Leader" and "follower" may not be the most precise, descriptive terms here, but then neither were "master"/"slave" and people got used to that. Edit: "Primary"/"replica" seems like an unambiguous improvement.
- Tehnix 12y ago"Master/slave is a model of communication where one device or process has unidirectional control over one or more other devices. In some systems a master is elected from a group of eligible devices, with the other devices acting in the role of slaves."[0] I'd say that master/slave describes perfectly well the relationship between the parts. [0] http://en.wikipedia.org/wiki/Master/slave_(technology) http://en.wikipedia.org/wiki/Master/slave_(technology)
- rjknight 12y agoIf you're going to replace a term, it might be a good idea to pick a new one which is precise and descriptive, given the opportunity to do so. "Senior" and "junior" might work, or "primary" and "secondary". It might be important to capture not just the fact that authority resides with one server and not the other, but that the secondary server is effectively forced to obey via configuration, to distinguish from clusters whereby leaders may be elected, and so on. Using any anthropomorphic terms at all may end up being misleading - Dijkstra was pretty down on anthropomorphism[1] because he believed that it was a cause of confusion and error. However, if we're going to use anthropomorphic terms then I think it's unwise to choose them based on whether or not those terms, in entirely different circumstances, may have been related to unfairness and harm. The whole point about why slavery is bad is that it involves treating a person like a machine, but this clearly implies that treating machines in such a way is obviously not wrong. Words generally aren't fnords[2] that cause us to become irrationally upset at merely seeing the word itself in print. [1] http://lambda-the-ultimate.org/node/264 http://lambda-the-ultimate.org/node/264 [2] http://www.urbandictionary.com/define.php?term=fnord http://www.urbandictionary.com/define.php?term=fnord
- fiatmoney 12y agoCan someone explain for us non-native-English speakers why it is "racially charged"?
- aaronbrethorst 12y agohttp://en.wikipedia.org/wiki/Slavery_in_the_United_States http://en.wikipedia.org/wiki/Slavery_in_the_United_States
- asdfologist 12y agoIt reminds people of African slavery. Silly argument IMO.
- rjknight 12y agoSpecifically, American people.
- codezero 12y agoChoosing not to use the term doesn't mean it reminds people of slavery, it simply means that they choose not to perpetuate a term with negative connotations when an alternative term without them suffices.
- q3k 12y agoYou can find negative connotations for a lot of common-use terms.
- akerl_ 12y agoThey've since changed to a combination of primary/replica and master/slave: https://github.com/django/django/commit/beec05686ccc3bee8461f9a5a02c607a02352ae1 https://github.com/django/django/commit/beec05686ccc3bee8461...
- codezero 12y agoit looks like primary/replica and master but not slave. Master is used in the documentation and was probably incorrectly or hastily replaced with leader.
- reitzensteinm 12y agoI nearly spat my coffee out when I read that it was to be replaced by "leader/follower". That would be a bad idea, IMO, and what most people here and on the Github thread are commenting on. But actually, the terminology being used is primary/replica, which is if anything more descriptive.
- staticelf 12y agoIs it, really? Please elaborate why it would be more descriptive. I think this is a nonsense change and just the fact that they did this change without hesitation makes me question if Django is a good choice for future projects. You can't make changes to established naming without consequences, what about classes? Don't they offend people who does not come from money? Django is full of them, dividing stuff into different classes. That is just disgusting. They must stop to use classes now! I would have no objection if they changed to primary/replica for a good reason, but this is a shit reason.
- bostik 12y agoPolitical correctness strikes again - and yes, it's not the first incident of this exact sort. [1] [1]: http://www.snopes.com/inboxer/outrage/master.asp http://www.snopes.com/inboxer/outrage/master.asp
- codezero 12y agoIn that page, it doesn't describe it as political correctness run amok. Those cases are reserved for the correct usage of a word that merely resembles some inappropriate term. Master/Slave as a relationship originated before computers and refers to possessing another person as property, so it's negative connotations are inherent in the phrase and rejecting them is a linguistic choice. Contrast that to using the phrase retarded in Physics, which originally was just a term used to describe a time delay, and was ultimately applied to people who had delayed development, and is now considered inappropriate, though it is still used in physics from time to time.
- bostik 12y ago> Master/Slave as a relationship originated before computers and refers to possessing another person as property Yes, and slavery is any form is heinous. But if we're talking about terminology... master and slave terms in computing have become to describe a certain kind of logical topography. For me, a term being somehow inappropriate is not alone enough to warrant finding euphemisms. There are terms like that all over the place. Your example, "retard" is used at least in cooking to describe a component inhibiting a desired process. I wouldn't be surprised if someone found bridge building to be inappropriate ("erection sequence"), and people in corporate security business are doing pen-testing all the time. There is something in the need for euphemisms that rubs me the wrong way. It depletes a language and nibbles its users of variety. Come to think of it - one of Agatha Christie's novels was renamed twice due to insensitivities. The current name is, I believe, "And then there were none".
- dvl 12y agoI loved the non-intuitive names.
- jiggy2011 12y agoSlavery is bad when it is applied to humans, you can't really oppress a Mysql instance.
- asdfologist 12y agoNext: let's ban calling electrical power connectors "male" and "female", because think of the children.
- codezero 12y agoIt wouldn't be terribly difficult to refer to them as plug and socket.
- q3k 12y agoExcept plugs and sockets don't always translate directly into male/female - ie: D-Sub connectors, XLR connectors, cinch connectors, ...
- mercer 12y agoA big difference is that there is consensus that slavery is altogether a bad idea (at least among the people using the term master/slave in the current context), while there is no such consensus concerning sex. At first I thought this commit was a joke, then I felt a slight annoyance at this political correctness, only to finally realize that it's not really such a bad idea, since we all agree slavery is bad, and it can be quite awkward to use the terminology around people that don't hear it often.
- goblin89 12y agoIf we don't want our jargon to sound awkward to laymen, we've got to replace a lot more words than master and slave. Industry terms are valuable, though, aren't they? They allow expressing complex concepts unambiguously, and can be expected to be used consistently across given field. Personally I think that trying to control jargon and have it conform ever-changing politics and common language is detrimental to the industry and hinders knowledge transfer. I suspect (or hope) it's just trolling on the part of Alex. (Disclaimer: English is not my native language, I wonder if saw this differently if it were.)
- mercer 12y ago
- drawkbox 12y agoI was thinking parent/child would be a better fit, but upon further thinking about it, leader/follower is pretty good. It is also a bit more distributed friendly, in that you can follow a new leader or switch. Where parent/child, master/slave are more locked. It is a bit silly though to change, in that human history has had slavery throughout history and to this day. Better to know about the problems than to overlook them. Also, throughout history, slavery wasn't always on racial lines, it was usually class based or wealth/monarchy based.
- zeroflow 12y agoIt also wouldnt be a good fit. - Master / Slave systems are typically locked in. One slave if a database system can only be a copy of one master and cant just switch freely between masters. - Leader / Follower is coupled to loosely in my opinion. When i hear leader / follower i'm more thinking of a system where the followers follow the state of the leader (e.g. if the database goes down, the web frontend is shutting down / displaying an static error / ...) [sarcasm] - Parent/child could be offensive to people who cannot have kids or whose kids have died! Have you thought about THEIR feelings aswell? [/sarcasm]
- zeroflow 12y agoReminds me of poe's law... http://en.wikipedia.org/wiki/Poe's_law http://en.wikipedia.org/wiki/Poe's_law It could be a parody or not, but until the writer states so, you cant be sure. From my point of view, its a pretty bad idea. Master / Slave is used in nearly every system ranging from basic integrated circuits using a bus (SPI, I2C, ...) up to multi cluster database systems. It has a clearly defined function and and everyone in tech knows what it means. It doesnt matter if youre from USA, England, Germany oder Iran. A master/slave system has a clearly defined behavior. Trying to bring feelings into the clean technical world it one of the most stupid things i can think of. In this case, it only affects the documentation of a project, but in other cases, trying to be politically correct has destroyed lifes of people. http://www.wired.com/2013/03/richards-affair-and-misogyny-in-tech/ http://www.wired.com/2013/03/richards-affair-and-misogyny-in...
- lotsofmangos 12y agoI always thought the use of master/slave terminology on ide hard drives was amusing because of the s&m connotations, but then I was a bit of a weird kid. I guess that is one of the few instances where thinking about s&m is the more innocent option. Leader/follower is not a bad change, it is perfectly understandable for people used to the existing terminology and has less distracting connotations.
- andrey-p 12y agoI was actually thinking about the s&m angle just before I read your comment. I wonder if there's a similar debate raging on in the s&m community?
- cheerio 12y agoI think this is an awesome patch. Hopefully more people will follow suit. The first time someone was trying to describe a configuration using 'master' and 'slave' to me, the terminology was really distracting, and I could barely pay attention without remembering all of the lessons about U.S. history from 8th grade. I hope this change in terminology will help make software development more welcoming and accessible to more people.
- danbruc 12y agoThat's not any better at least if you are like me from Germany and unconsciously translate it. http://en.wikipedia.org/wiki/F%C3%BChrer http://en.wikipedia.org/wiki/F%C3%BChrer
- lstamour 12y agoPrimary/Secondary aka Master/Slave already happened with DNS... e.g. http://www.zytrax.com/books/dns/ch4/ http://www.zytrax.com/books/dns/ch4/ and since you can have Master-Master relationships in databases as well as "equal" relationships where two masters can each be slaves to the other for redundancy... it's messed up however you look at it. Personally I prefer Primary & Secondary but I'll use the language the manual uses for whatever product I'm configuring, since it makes life easier.
- wcummings 12y agoReminds me of this [1]. Funny since the historical meaning of plantation (as intended by Rodger Williams) has nothing to do w/ slavery. [1] http://www.huffingtonpost.com/2010/11/03/rhode-island-keeps-planta_n_778085.html http://www.huffingtonpost.com/2010/11/03/rhode-island-keeps-...
- deleted 12y ago[deleted]
- cheekyAndFun 12y agoHow about "underling/overlord" or "dictator/subjugant" or "enforcer/oppressed"? What about "worker/parasite"? Mayhap "strongman/peasant" or "oligarch/human rights violation"? I know, let's all use "duckspeaker/thoughtcriminal"!
- tragicAndCruel 12y ago> dictator/subjugant Actually, I think "exigent/subjugant" would make a better pairing.
- JetSpiegel 12y ago- Offensive to underlings -Offensive to people that lived in dictatorships -Offensive to oppressed people -Offensive to insects, or Social Security beneficiaries, you are politically correct AND recognize that words can have multiple meanings -Offensive to farmworkers -Offensive to people whose human rights were violated (eg US Citizens, Iraqis, etc) -Offensive to former USSR residents, if you go beyond multiple word meanings into allegory
- MyGod 12y agoI disagree with "duckspeaker/thoughtcriminal". IMO in newspeak we should use more doublespeak and use "duckspeaker/duckspeaker" to make it more clear.
- angersock 12y agoI for one would prefer dom/sub, if we're going to go about rewriting perfectly good terminology that has been around for near a hundred years, but I don't think people are quite that open-minded yet (even though it helps remove the troubling idea of property rights on sentient beings). Naming is hard! Master/slave implies that there may be many slaves for one master, that the master tells the slave exactly what to do, and that slaves will not switch between masters on a whim. Leader/follower implies that there is no major difference between the two classes and that perhaps the "leader" is just a promoted follower ("leader election", etc.), that the leader is the first to hit a request or command, and that the followers may spontaneously decide to follow a different leader. Primary/secondary implies that the roles are equivalent, that requests are handled by the primaries, that there may be more than one instance of each role, and that secondaries are only used if a primary cannot deal with its task. Note that each use case is equally valid: m/s could be a read/write architecture for a database or electrical communications bus, l/f for a distributed simulation system spanning many nodes or a swarm of agents, and p/s for a redundant storage system. But, changing nomenclature seemingly for the hell of it is not usually a good idea. EDIT: "primary/replica" fits nicely as well.
- emilssolmanis 12y agoWhile we're at it, we should rename "web servers" to "web attendants".
- deleted 12y ago[deleted]
- Sir_Cmpwn 12y agoThis is absurd. I have a hard time beliving that the maintainers of Django took this seriously. I hadn't gotten into Django yet, but it looks like I won't bother.
- vezzy-fnord 12y agoOnce again reinforcing the stereotype that Americans are culturally ignorant. At least they settled on primary/replica, which actually kind of makes sense.
- joshu 12y agoTrigger warning.
- aaron695 12y agoSo all/most of the thumbs up/thanks/short positive replies are sarcastic? I really can't tell. I assume so?
- chippy 12y ago> merged 1 commit into django:master The branch is called 'master'.
- lucasnemeth 12y agoBut it lacks a Slave, so it does not contains the same connotation.
- lpinca 12y agoSilly.