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.
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?
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.
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.