2 ms·
I think that “cargo cult” in how it’s commonly used encapsulates a certain kind of behaviour pretty well. If it was to be moved away from, then I’d at least lik
by KronisLV 2y ago
I think that “cargo cult” in how it’s commonly used encapsulates a certain kind of behaviour pretty well. If it was to be moved away from, then I’d at least like a similarly concise alternative.
Though I will admit, especially as a non-native English speaker, that there have been cases where changes in the terminology used have actually made more sense than the prior alternatives.
For example allowlist/deny list feels more concise and simpler to understand than whitelist/blacklist.
Also, naming the main version control branch “main” is also really obvious and clear, at least a bit more so than “master”.
Though once you start talking about further historical context, you’re going to lose some people along the way, who have not once considered it with much attention. A bit like some who used .io domains had never really heard much about Chagos.
- bad_user 2y agoI'm also a non-native English speaker. Blacklist is a word that stands out, an interesting combination like other English words or phrases and I had no issues with learning it. It's also a word with a rich history that doesn't seem to have had a racist origin. And because it was used since 17th century and is still in use, non-native English speakers have to learn it anyway. "Master" was more legitimate as a target for change, but again, I don't think anyone had issues with understanding it. This is like when mother-father or male-female is used to describe electrical connectors. And also, the bigger problem with changing "master" to "main" is that "master" was a standard and the change was painful. At work our branch is still called "master", any change won't happen soon, as people have better things to do (needing to reconfigure CI, plus red tape due to policies and ACL policies) . So now people have to be aware that the default can be both "master" and "main", increasing the knowledge one has to possess for no good reason. It's not like the change from "master" increased the quality of life for anyone. Note that I have no issues with changes that are made for clarification. For example, in database replication, maybe it's better to talk of a primary database and of replicas, which seems more descriptive and aids learning. But I don't think many such changes were motivated primarily by the need to clarify, but by the need to sanitize the language and I disagree with such a motivation.
- bdangubic 2y ago[flagged]
- KronisLV 2y ago> Blacklist is a word that stands out, an interesting combination like other English words or phrases and I had no issues with learning it. Sure, though I think that if there's a term that conveys more or less the same thing and is even more obvious, then there's probably some utility in using it! Though maybe that's from a programming perspective, where accidental complexity compounds somewhat. > And also, the bigger problem with changing "master" to "main" is that "master" was a standard and the change was painful. This is a good argument, especially if it was done in a top down fashion and a bunch of people suddenly found themselves needing to change things in addition to an already significant workload. In the case of the teams that I worked on, the projects that already existed often saw no changes (because the impact of it being either way was non-existent on a day to day level), but for new projects the main repo branch often defaulted to "main" and there wasn't much past "Oh hey, that's neat" to consider. I can't say that it actually caused me any difficulties, because both Git on the CLI and in my GUI tools helpfully shows the branch names and it's not like we copy the CI configuration without reviewing it on a case by case basis (then again, in some projects the branching strategy is such that master/main isn't even used since there is no canonical main branch).
- jandrewrogers 2y agoThe problem with “denylist/allowlist” is that the semantics of “blacklist/whitelist” are broader in practice than what that can convey. In the general case, blacklists and whitelists relate to operations on non-enumerable sets. In particular, blacklists and whitelists are not invertible, due to that non-enumerability i.e. you can’t generate a blacklist from a whitelist nor vice versa. So whitelists exclude a non-enumerable set and blacklists include a non-enumerable set. It is a useful concept separate from purely enumerable sets. Many uses of whitelist/blacklist in practice have nothing to do with “allowing” or “denying”. You can use some explicit set inclusion/exclusion term but that isn’t nearly as concise and everyone already knows what a whitelist/blacklist is.
- jwkpiano1 2y agoI mean, if that’s true I imagine they also don’t have much to do with the colors “black” or “white” either, right? Language changes all the time. I think for most software folks, who aren’t dealing with set theory, allowlist and denylist work pretty well. That’s been my experience, anyway.