60

I've just had one of my answers edited on Stack Overflow to swap out "black list" and "white list" for "deny list" and "allow list" respectively. There was no comment on the change, but I assume it to be due to those words being racially charged.

I don't mind the change (except for the introduced grammar mistakes), but I do feel like "white list" and "black list" convey my point in a clearer way and so makes my answer more useful to the wider community.

I am going to leave the edit (but fix the grammar mistake), but I am interested to know moving forward how we should be framing our questions/answers, and if there were a list of words we should now substitute? I feel like this is a can of worms, especially regarding any networking (master/slave) or Git (master) questions.

35

We would like to endorse and expand on the answer already given by curiousdannii:

…inasmuch as Stack Overflow and the other technology sites form a sort of documentation of technology, I don't think that there can be any blanket ban on such terminology. Many technology projects have used these terms and you cannot have useful or clear documentation or explanations of these projects if it is forbidden to use the terminology used by those projects.

As projects change one-by-one to avoid these terms, especially if there is a general consensus to do so (which I think will probably happen for a term like 'slave' but I think it's likely will not happen for 'blacklist'), then there will be a reduction in how many posts use these terms here. But as questions can be asked about older technology it will remain a fact of life that these terms will continue to be used here.

We are not going to institute any sort of network ban on the use of these terms, and will leave it in the hands of the moderators and the Community to decide on the appropriate usages of these terms on the different sites throughout the network, both for new content, and for legacy content. If there are changes that we can facilitate making once communities have decided how to act, we are available to assist with that.

As curiousdannii points out and expresses so well, without a generally accepted replacement for a given term, enforcing a general ban will end up in rendering large swatches of documentation and content useless. If and when the terminology changes for a given technology, then the Community will no doubt adopt the new terminology as the new standard for use on the network when talking about that technology. But without this consensus (and the definition of an obvious replacement that is accepted by the community that is the expert on that technology), we feel that an indiscriminate ban on these terms would be inappropriate.

With that said, we are definitely sensitive to the ways in which specific pieces of terminology — which at one time were common and standard in a given technological context — can themselves be offensive and hurtful to different minority groups. And we admit that there is always work to be done in this area. Though removing and adjusting such offensive terminology is itself not an ultimate solution, and should not be used as a replacement for more meaningful actions taken to show solidarity with marginalized groups, this does not mean that this is not a meaningful act unto itself.

For these reasons, we believe that continued use of master/slave and blacklist and whitelist terms should be discouraged wherever possible. In that vein, we would like to announce that we have made the following changes on all user-facing portions of the sites:

  • We can confirm that no instances of master/slave are shown in the UI
  • All instances of “blacklist” have been converted to “blocklist”
  • All instances of “whitelist” have been converted to “allowlist”

These changes affect any text showing up in the user interface, in server logs, on mod pages, on dev routes and dev-pages, and we will work to ensure that these terms will no longer be used moving forward for any new feature work. Additionally, from this point forward, we will use the term “blocklists” instead of “blacklists” when handling requests to block tags, words in titles, and usernames from appearing on the site. We are planning to update the relevant tags on metas network-wide (and will update here when this has been done) and will continue to update our usage of this terminology internally as it becomes feasible to do so.

We thank you in your advance for your continued support and sensitivity towards these important issues.

| improve this answer | |
53

While we wait for an official stance to be explained, I'll say that inasmuch as Stack Overflow and the other technology sites form a sort of documentation of technology, I don't think that there can be any blanket ban on such terminology. Many technology projects have used these terms and you cannot have useful or clear documentation or explanations of these projects if it is forbidden to use the terminology used by those projects.

As projects change one-by-one to avoid these terms, especially if there is a general consensus to do so (which I think will probably happen for a term like 'slave' but I think it's likely will not happen for 'blacklist'), then there will be a reduction in how many posts use these terms here. But as questions can be asked about older technology it will remain a fact of life that these terms will continue to be used here.

For the specific post and edit your raised, I would be asking what the official Lodash documentation says. Does it use the terms 'blacklist' and 'whitelist'? If so, then so should you. If not (or if it changed terminology recently), then at the moment I think it should probably be up to the post's author what terminology to use. I do not think the common vernacular has reached any clear alternative to 'blacklist/whitelist' yet. While it's still common to talk about rental or credit card 'blacklists' I don't think we should be moving to ban them from computing. But if you like the terms 'denylist' or 'blocklist' more, then go for it! But I think you should also consider explaining what that means, because it will not be as easily understood as the idiomatic term 'blacklist' would be.

(I think it's much more likely for the term 'slave' to be retired from computing because it was never a particular apt metaphor in the first place. What does it mean for a database to be a 'slave'? For it to be readonly? For it to be controlled by another server? Maybe, maybe not, it depends on the technology and how it's set up. And I can't think of non-computing contexts where this metaphor is used. So I think it's likely that 'master/slave' technology will be replaced with things like 'master/replica', where the metaphor is more clearly connected to the non-computing uses like the master of a record from which other copies are replicated.)

| improve this answer | |
  • "I would be asking what the official Lodash documentation says. Does it use the terms 'blacklist' and 'whitelist'?" for what it's worth Lodash doesn't use such terms but nor does it use anything to denote whether a list"a list for rejected/accepted" stuff. It stays neutral by just having lists of stuff (documented as paths) and mentioning that _.omit takes the list out ("blacklisting"/"reject listing"), while _.pick only keeps the list ("whitelisting"/"allow listing"). That's been the case for quite a while but I suspect it's done for uniformity of documentation reasons and terseness. – VLAZ Jul 16 at 5:52
  • 1
    @VLAZ Right, I did actually read the Lodash docs after I wrote this, and that style of docs indicates why the supplementary documentation of Stack Overflow Q&As can be so helpful. If you're familiar with Lodash it would make lots of sense, but if you aren't it might be hard to decode. For answers here I think authors should be able to clarify how it works using natural conventional language, which I think includes the use of a term like "blacklist", and probably will include that term for quite a while longer. – curiousdannii Jul 16 at 6:07
  • Yes, Lodash documentation tends to be quite terse. It's quite helpful if you actually know what you need, since it conveys essential information in few words but probably not as useful when you're not certain in that. It's designed to serve more as a quick reference - a step above just "cheat sheet" style. – VLAZ Jul 16 at 6:12
  • 30
    There is definitely going to be a problem if there would be a blanket ban. A somewhat random example: electronics.SE has 969 posts about I2C slaves. The terminology is part of a standard that's decades old and it's hardly the only standard in which slaves are used. Enforcing a blanket ban would cripple communications as long as the standards are what they are. – Mast Jul 16 at 6:33
  • 1
    @Mast See also Another term for “Master Slave” – ChrisW Jul 16 at 11:09
  • 5
    Not to mention pretty much any object language supports method chaining and there are plenty of data binding libraries out there too. And I don't think we have a replacement name for either. – John Dvorak Jul 16 at 16:00
  • 2
    I'm gonna call out "idiomatic understanding" of blacklist vs blocklist/denylist. Just because it's been in your language use for years doesn't make it idiomatic ("using, containing, or denoting expressions that are natural to a native speaker") to a newcomer. There are a lot of native speakers of English that don't know what a blacklist is, but if you said "deny list" they would immediately understand the language. Just because our use of language is wrong doesn't mean we should by rote continue to use it that way. – jcolebrand Jul 31 at 16:20
  • 2
    @jcolebrand There are a lot of native speakers of English that don't know what a blacklist is citation. I know the verb "to blacklist" (will blacklist, blacklists, blacklisted, blacklisting etc.) and the noun "blacklist", I would not use "deny list" ever as a verb e.g. "denying list" or "denylisting"? – Mari-Lou A Sep 2 at 9:56
  • @Mari-LouA should I just run a poll through quinnipiac? I have all of the resources to formalize what I know from anecdotal conversation with people that no, a lot of native speakers do not in fact know what the term blacklist is. You think they do because you do. Additionally, what is wrong with "denylisting a person who wants to apply for a job @ X"? It absolutely connotes the same thing. This feels like a fight looking for a moment. The words simply are not idiomatic, they are contextually learned. – jcolebrand Sep 2 at 16:38
30

Any policy in this effect should also take into consideration non native english persons (many with very weak knowledge).

A "blacklist" is a very common word and has been translated directly into other languages and therefore the english version is easily understable.

A "banlist" is not so common and therefore requires extra cognitive work to understand.

Also the other way - a translation from other languages directly to english will suddenly be bombarded that a "naughty" word has been used.

Also for example the word "master" (as a technical term) has been directly incorporated into some languages.

| improve this answer | |
  • 3
    +1. add to that, a master is, in many useful contexts and in general, an entity that masters (accomplishes, sees to get accomplished, controls to a good end, etc) something, not a person feeling entitled to unduly commanding or harrassing others, whether selectively or not. Mixing these up is a fallacy. Discrimination also goes two ways - as in claiming discrimination used as a weapon against well-meaning other persons fully within their rights (and others'), and has been seen to be very capable of terrorizing by threatening censorship and punishment. Assume Good Faith exists for a reason. – somebody_other Jul 25 at 16:54
  • What's the distinction then between master (sees to get accomplished, in control, authority) and principal (first in order of importance, main; also the person with the highest authority, most important person in an organization or group)? Is there a useful definition of master that is not also met by principal or authoritative? Your account is 53 days old, so I can't tell where your experience lies, but so far your profile seems to be around acceptable word usage and substitution to best fit a given scenario. Hopefully then you can use that expertise to explain to me here? – jcolebrand Jul 31 at 16:24
  • Git has never, to my knowledge, had "slave" branches, and yet the term "master" is now being eradicated from Git because it's considered offensive. This is absolute bull- Bolshevik. A solution in search of a problem. – NobleUplift Nov 23 at 20:37
-38

Another "while we are waiting" answer: embrace change.

In the end, these are just terms that denote something some more complicated concept.

Yes:

  • It is inconvenient to come up with new terms that "work", and it takes time before a broad enough consensus will be found.
  • It costs a certain amount of time and energy to adapt to that.

But at some point, you have adapted, and it will not matter any more to you that you used different terms some time back.

And especially in larger organisations, there is no way to avoid adapting. At least in such places, your option space consists of: accepting what is asked from you, or to ignore it, inadvertently leading to massive conflicts with your management.

And in case you consider such efforts to be completely ridiculous, I suggest you spend a few minutes watching "Malcom X" learn about the usage of the words black and white (see here).

Now: stackoverflow is a community that millions of people turn to. Thus it is primed for coming up with such new terms, and coming to a consensus for new terms.

From that point of view, SE Inc. has two options:

  • trying to be on the side that defines how change look like
  • or to play catch-up with what others are doing

Pick your favorite choice.

My suggestion: when people are writing up new content, there could be some sort of mechanism suggesting them alternative terms. Don't make it mandatory to use them, but support those who are open about this topic.

| improve this answer | |
  • 35
    Question is where does it end? Anyone can find anything offensive. We need to draw the line somewhere. Marking words as offensive when used in totally unrelated contexts and meaning will lead us nowhere. Also it will not really change real underlying problems. If some company/individual want's to use different words, that is fine, but blanket banning and bullying others into meaningless changes is completely different story. – Resistance Is Futile Jul 16 at 13:29
  • 3
    Thanks for the answer (the downvotes seem a little harsh?). I'm totally up for embracing change. In fact, that is why I am asking for a list of words I should lean towards when writing questions/answers in future. If I didn't want to embrace it I could've simply edited the answer back to my original wording. – Chris Jul 16 at 13:37
  • 36
    "these are just terms" Exactly, those are merely technical terms. Changing them doesn't make a significant positive change on anything, IMO. – HolyBlackCat Jul 16 at 13:37
  • 3
    @HolyBlackCat Opinion, not fact. Honesty: I am not convinced that it will have a big positive effect. But: it drives discussion. It gets people to think about language, it gets people to think about their mindset and internalized views. Change always begins when people start thinking about stuff they never thought about before. We should set a timer and come back in 5 or 10 years, then we might be able to assess what positive and negative things came out of such ideas. – GhostCat Jul 16 at 13:42
  • 26
    "embrace the change" is directly colliding with "ability to say what you think". When rename Git master branch movement started, I was not exactly thrilled, but I was almost caught into "what does it cost me" rhetoric. But then in my Twitter feed started popping things like "let's use this as signal for HR to reeducate/fire people" and similar bullying, some coming from prominent developers. And this was huge red flag for me. I don't need to wait 5-10 years to see where this is all going. – Resistance Is Futile Jul 16 at 14:19
  • 22
    And as far as SE is concerned I am strongly against editing posts and removing "offensive" terminology. We already have nice example where such things ca lead Nancy's back, so I'm leaving and taking my money with me Hint, look at edit history. – Resistance Is Futile Jul 16 at 14:23
  • 9
    "Bullies will bully", agreed. But, I don't want to give them additional ammo. – Resistance Is Futile Jul 16 at 15:01
  • 15
    Under normal circumstances I would say that your answer is reasonable. Unfortunately, I have seen "woke" movement operating beyond reason, and I think the only way to fight is to take firm stance now, before it is to late. – Resistance Is Futile Jul 16 at 15:04
  • 2
    This reads like an essay, not like it actually answers the question. – Mast Jul 16 at 15:25
  • 9
    Luckily, I don't work in any organization. So, I feel I have more freedom to speak out and oppose changing terminology "just because it might offend someone". – Resistance Is Futile Jul 16 at 16:47
  • 17
    Right now I am strictly speaking about taking a stand here on SE. I am fully aware that people might not have choice in workplace or whatever other circumstances. I am not even saying that everyone must "join the fight" or do that openly. I am also not saying that we should never ever change any terminology. But I am strictly against any kind of policing, editing or even suggesting that some terms might be offensive. SE should be neutral in all this. Anything else will not end well. – Resistance Is Futile Jul 16 at 21:20
  • 9
    This is not if you are not with me, then you are against me kind of situation and I know many people will have different opinions. That is fine. My greatest fear (because I have seen some hints of that happening elsewhere) is turning terminology into a holy war, ostracizing anyone that objects to changes and/or posts questions or answers using "forbidden" terms. – Resistance Is Futile Jul 16 at 21:27
  • 3
    Change is the only constant. But there is a world of difference between meaningful changes and useless changes. Additional problem in this particular type of change, is that it is political change, not functional, and because it is political, especially because it revolves around sensitive topic, it denies any discussion and criticism. It is not about whether your boss will tell you "we will use xxx terminology from now on" and you using that because that is how it is decided, but that asking "why?" can get you in trouble. – Resistance Is Futile Jul 22 at 8:25
  • 3
    @jcolebrand Yes, the change of terms can and probably will affect how we think, but I expect the positive change to be very tiny, if noticeable at all, especially in comparison to the negative overhead of the change. Additionally, the roots of "black/dark = bad" themes in the language are not in the races; consider e.g. "black magic vs white magic". I assume it goes back to the old times, when darkness was dangerous as it could hide something that could eat you. [1/2] – HolyBlackCat Jul 31 at 17:01
  • 3
    [2/2] "Don't eat the brownie" I'd argue that this is more about a response to a command, rather than a language. A command doesn't have to involve language; it could've been conveyed non-verbally with the same effect, e.g. gestured. "Fox News vs CNN" I'm not an American, not even a native speaker, so this example doesn't tell me much. – HolyBlackCat Jul 31 at 17:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .