Twitter becomes the latest firm to ditch problematic coding terms


Bobby Hellard

3 Jul, 2020

Twitter is dropping the terms «master», «slave» and «blacklist» in favour of more inclusive language in its programming. 

The social media site is following in the steps of a number of tech firms that have already pledged to ditch the terms in light of the black lives matter protests.

The terms are very common in programming, with «master» referring to the main version of code that often controls other «slave» protocols. «Blacklist» is a label for items that are automatically denied or for forbidden websites. These were included in a set of words posted by Twitter’s engineering division that it will remove on the recommendation of two of its black engineers, Regynald Augustin and Kevin Oliver.

DevOps specialist The Scale Factory removed references to master and slave in its code a few years ago. The company’s CEO and CTO Jon Topper told IT Pro that it was fairly straightforward to change the names of variables and methods in its own code and configuration files, but it wasn’t possible to entirely remove this language.

«If you’re working with MySQL replication, for example, that software itself uses master/slave terminology and so it has to appear in your code too,» Topper said. «Renaming Git branches from «master» to «main» is similarly straightforward, though might require changes to CI servers and other systems you work with.

«The real question here is whether, as an organisation, you’re also working on the human side of the problem. Dismantling structural racism in our organisations will take more than just a couple of cosmetic code changes… I’ve heard black voices say that it’s good to challenge our use of this language in tech, but way more that say this isn’t enough on its own. We all need to do better.»

There have been calls within the tech industry to drop the terms long before the death of George Floyd and the black lives matter protests. In 2018, Red Hat programmer Victor Stinner issued a change request for avoiding the terminology in Python, which is often thought of as one of the world’s most popular programming languages.

«For diversity reasons, it would be nice to try to avoid ‘master’ and ‘slave’ terminology, which can be associated with slavery,» he wrote, also citing a number of complaints in the thread.

Despite a heated debate breaking out, with some Python developers suggesting that only «slave» should be removed because they didn’t deem «master» an offensive term, Stinner’s request was upheld. «Slaves» was subsequently changed to «workers» or «helpers», while «master process» was changed to «parent process».

CNN reported back in 2003 about a discrimination complaint concerning the use of the words «master» and «slave» on a videotape machine in Los Angeles. The complaint led to a request from County officials for electronics manufacturers to remove the terms from their products when doing business in the county.