“The terms ‘allowlist’ and ‘blocklist’ describe their purpose, while the other words use metaphors to describe their purpose,” reads a change description on the source code for Android – from over a year ago. 9to5Mac calls it “a shortened version of Google’s (internal-only) explanation” for terminology changes which are now becoming more widespread.
And Thursday GitHub’s CEO said they were also “already working on” renaming the default branches of code from “master” to a more neutral term like “main,” reports ZDNet: GitHub lending its backing to this movement effectively ensures the term will be removed across millions of projects, and effectively legitimizes the effort to clean up software terminology that started this month.
But, in reality, these efforts started years ago, in 2014, when the Drupal project first moved in to replace “master/slave” terminology with “primary/replica.” Drupal’s move was followed by the Python programming language, Chromium (the open source browser project at the base of Chrome), Microsoft’s Roslyn .NET compiler, and the PostgreSQL and Redis database systems… The PHPUnit library and the Curl file download utility have stated their intention to replace blacklist/whitelist with neutral alternatives. Similarly, the OpenZFS file storage manager has also replaced its master/slave terms used for describing relations between storage environments with suitable replacements. Gabriel Csapo, a software engineer at LinkedIn, said on Twitter this week that he’s also in the process of filing requests to update many of Microsoft’s internal libraries.
A recent change description for the Go programming language says “There’s been plenty of discussion on the usage of these terms in tech. I’m not trying to have yet another debate.” It’s clear that there are people who are hurt by them and who are made to feel unwelcome by their use due not to technical reasons but to their historical and social context. That’s simply enough reason to replace them.
Anyway, allowlist and blocklist are more self-explanatory than whitelist and blacklist, so this change has negative cost.