BLM Effect: Linux Kernel to Adopt an Inclusive Code Language, Blocks Terms like Blacklist-Whitelist and Master-Slave

You probably are aware of the Black Lives Matter (BLM) movement that started in the US. After the George Floyd case, the BLM movement has gone global.

This recent wave of BLM movement has inspired people to erase terms, names, statues that have racist legacy.

Some businesses have change their product names. Aunt Jemima, Mrs Butterworth’s, Uncle Ben’s, Eskimo Pie are some of the examples.

Movies trivializing or casually bypassing racism are being removed from the streaming websites. That includes classic movies like Gone With the Wind.

The tech industry is not behind. They have started to adapt for more inclusive language, even in their coding style.

What is inclusive language?

Kernel Inclsuive Guideline

Inclusive language aims to avoid expressions and terms that are racist, sexist, biased, prejudiced or demeaning to any particular group of people.

Inclusive language encourages the use of terms like staffing instead of manpower, homemaker instead of housewives, differently abled instead of disabled, health care consumer instead of patient, pet parent instead of pet owner.

Inclusive language in tech industry

Using inclsuive language in code in not a recent phenomenon. Open source Drupal has replaced master-slave with primary-replica four years ago. Python also dropped master-slave terminology two years back.

But thanks to the BLM movement, more organizations in the tech industry are considering to change their policies to adopt the inclusive language.

Microsoft’s GitHub is replacing terms like master-slave, blacklist-whitelist. Twitter has gone ahead and shared a list of their list of inclusive language that even replaces terms like ‘sanity check’.

Calls for replacing the blackhat, whitehat, man in the middle terms in hacking industry is also gaining momentum.

Linux kernel is implementing inclusive coding language

The Linux Kernel is not behind in adopting the new industry trend. Linux kernel maintainer from Intel, Dan Williams, has shared a proposal to introduce inclusive terminology in Linux kernel’s official coding-style document.

The guideline suggests avoiding terms like slave and blacklist. The suggested replacement for the term slave are secondary, subordinate, replica, responder, follower, proxy or performer. Recommended replacements for blacklist are ‘blocklist’ or ‘denylist’.

The guideline will be applicable to the new code being pushed to the kernel with hope of changing existing code to remove noninclusive terminology in the future.

Exceptions for introducing new usage is to maintain a userspace ABI, or when updating code for an existing (as of 2020) hardware or protocol specification that mandates those terms.

The proposal is already signed off by senior kernel maintainers Chris Mason and Greg Kroah-Hartman.

Update: Linus Torvalds has also signed off to the change. It means that it is now part of Linux kernel development code of conduct to use inclusive language.

Blacklist? Is it really a racist term?

People do wonder if blacklist is really a racist word. As Dan Williams point out in the proposal, etymologically, the term doesn’t have a racist connection. He points out:

Realize that the replacement only makes sense if you have been socialized with the concepts that ‘red/green’ implies ‘stop/go’. Colors to represent a policy requires an indirection. The socialization of ‘black/white’ to have the connotation of ‘impermissible/permissible’ does not support inclusion.

This is true. If you look deeply, it indirectly implies black = bad, white = good. Black magic is bad magic, white noise is good noise, black hat hacker is an evil person, white hat hacker is a good person. Of course, this is more to do with darkness rather than the color itself.

Changing the words alone won’t help

Changing names only won’t make a difference. Just changing the term physically disabled to differently abled won’t make the lives better for people with wheelchair if the buildings and streets don’t provide accessible infrastructure.

Big corporate and organizations are more focused on improving their image by changing their brand names and dropping supposedly noninclusive words. This is being pointed by activists as well:

What do you think?

I wonder if one day someone starts a proposal to change man page to people page in order to make it more inclusive by removing the gender-specific term ‘man’.

The only problem is that the ‘man’ in man page doesn’t indicate a man. Man is short for manual and that word originates from Latin word manus meaning hand.

What are your views on adapting inclusive language in coding guidelines? Do you think it’s a step in the right direction? Will it help bring equality and inclusivity? Do share your views in the comment section.

I understand that it is a controversial topic. When you are expressing your views in the comment section, please don’t use abusive words, don’t use racist slurs. Let’s keep the discussion civil.

Similar Posts

  • The funny thing is the slavers may have been less racist than we are in many ways. Africa was mostly unexplored then, the slaves were captured and sold by Africans. Slavers were also active in South America capturing American Indians while the Jesuits sought to protect them. Jim Crow law in the US meant some slaves were what we would consider white. Black overseers were used. They were exploiting cheap labour without much regard to race, “master” and “slave” could refer to any ethnicity, it was more about status. The original Communist manifesto dating from the mid 1800’s talks about slavery but on the basis of class, not race. Current discussion draws on later events – the US civil war, segregation, apartheid, WW2 and the idea of the ubermensch. Specifically associating people of African ethnicity as being slaves is historically inaccurate, and racist in itself I think. If you go back that many generations to the times of slavery you have thousands of direct ancestors, and many more indirect ones, to say my ancestors were this or that is pointless as probably most aspects would be in there.

  • Hey does anyone know where to find a patch to fix the terminology change? I don’t want my OS to be running politically correct. I’ve stopped updating to avoid the changes.