On “Master/Slave” and How Godot Developers Handled Calls to Change The Phrase
by Mariken S.
I've been making games for a while, and I've been sitting on some finished—but unreleased—Binky games since 2018. They were all made in the Godot game development engine, which because of what I will elaborate on in this essay, I can no longer use consciously. I really would have tried to finish this essay which I felt was necessary to include alongside the games sooner, if it were not for my depression, the banal pressures of university, and the ongoing COVID-19 pandemic among others. I would like to heavily thank my friend Nikki for revising and editing this essay.
As full disclosure, I am a white woman who lives in the USA. Thus I do not have a lived experience of racism and the legacy of slavery. If you find issue with this writing, feel free to message me on Glorious Trainwrecks or other avenues. My page is found here: https://www.glorioustrainwrecks.com/user/24039
You will need to make an account in order to message me.
The event as described happens in March of 2017. On the development website Github, user Hikari-no-yume spoke up on the word choice for Godot's scripting language. She states that the word choice of Master/slave "may be unfortunate..." and that "At the risk of starting a flame war, it might be worth changing them." And well, a minor flame war of sorts did begin in which some of Godot's developers revealed their true characters.
The entire conversation can be found here:
https://github.com/godotengine/godot/issues/7986
An archived web page defines master/slave as "a model for a communication protocol in which one device or process (known as the master) controls one or more other devices or processes (known as slaves)"[1]. Said page now redirects to
https://www.theserverside.com/opinion/Master-slave-terminology-alternatives-you-can-use-right-now
In contrast to attempting to defend the term, as some Godot developers did, the authors of this website seek to provide alternatives in language.
I think it is clear: Master/slave is an inappropriate and racist term. These 'slaves' are not people, they were never taken from their homes and forced to work in unbearable conditions. They have never had to suffer the innumerable accounts of life under slavery that can be read or watched. This linguistic metaphor trivializes the centuries long experiences of victims of slavery and their descendants. These so called "Master and slaves" are pieces of hardware, of plastics and metals, of zeros and ones. Though in regards to the last sentence it should be known that many electronic devices and their components (see: conflict minerals) are created in unethical and unbearable conditions. But that is another essay. Furthermore, the problem of Master/slave is not just one that is exclusive to the Godot engine, but the field of Computer Science as a whole.
Going back to the issue as brought up on Github, some seemed receptive to Hikari’s request, but one person in particular gave a strongly dismissive response. Said person is Reduz [Juan Linietsky], a head developer of the Godot engine alongside Ariel Manzur. His objection is as quoted:
"Sorry, I think this is stupid, slavery has been erradicated centuries ago and there is no one alive that could be offended or discriminated by such condition.... I understand there are a few retrograde countries still around, but i think naming convention in a game engine is the least of their problems. ...I'm all for stuff like inclusion, equality, human rights, etc. But using less clear and accepted technical terminology for groundless cause (IMO) is not a good idea."
I think this is an incorrect reasoning. Slavery has been ceased in the manner of the USAmerican plantation (chattel slavery), but still there is human trafficking, the prison-industrial complex, and other atrocities. The memory lives on in many a people's consciousnesses. There is even discussion of trauma that can be passed down to generation to generation. The scars of such deep atrocities do not heal easily as this Reduz could think. He does not consider the feelings of people who are different from him. Reduz mentions "retrograde countries" but does not really elaborate on this concept. Does this imply that Reduz believes the fact that slavery is a problem in the global south is a reason that the global south is how it is? It is a circular logic that does not think of the etiology, the origin, of the problems of the global south. Does one not remember the hundreds of years of colonialism and imperialism of the Global North (mainly the European powers) upon Africa, North and South America, and Asia? The Global North exploited these areas for their labor force and natural resources among other things. This statement is merely scratching the surface of why the Global South is how it is. This further ties into Conflict Minerals, where most of the conflict is in the Democratic Republic of the Congo (A former colony of Belgium until 1960). This website seems a bit outdated but it is a good starting point if one wants to research conflict minerals in the DRC: https://conflictmineral.wordpress.com/
Another one such complaint by "freemanfromgodotengine" says more of the same:
"I checked. Original text by Global Language Monitor[1] says clearly, that it's all about Political (in)Correctness. So, imho, if we are not making politics here with Godot - and we are clearly not, because it's a game engine for all - we should stay with the most logical terms and meanings of words..."
Game engines and politics!? In the circles I orbit I have seen some mockery of such behavior, of thinking that games can be without politics. And the phrase 'Political Correctness' is a dog whistle to reactionaries. It is often used to either point to the antisemitic conspiracy theory called 'Cultural Marxism', or simply to mock anyone who supports leftist or liberal policies. It is a dangerous phrase to use. I think the fact that the Godot Engine is “free and open source software released under the permissive MIT license” https://godotengine.org/license entails an anti-capitalist political bent in a world full of computer program subscription licenses. It is to go against the almost monopoly-like nature of proprietary software such as Microsoft and Adobe. Free and Open Source Software is, in many cases, a community effort. Godot is one such example. Does freeman’s use of “for all” not entail a collective use? Is Godot not for people who object to the use of "master/slave" terminology? Because of this fiasco I feel excluded from using this engine to make games! I do not feel comfortable working on games if the lead creators of the game engine have such a dismissive world view of such issues.
There is some more talk of it not really mattering, and then a few days later the administrators close the issue. However, on Godot's official IRC channel, a less visible but still public space, further discussion continues.
Reduz acknowledges other’s experiences by saying “Where I live, racism pretty much does not exist, so I am completely indifferent to master/slave terminology, but I can understand if this was more offensive somewher[sic] else like in the US”. What proof does Reduz have of racism not existing in his publicly listed location of Buenos Aries? A cursory internet search gives discussion of racism and the likes in Argentina. Continuing the conversation, the community members make light of the debate, with Reduz joking that “Also, I suggest we replace master/slave with slug/human”. This trivializes and turns the traumas of slavery into science fiction tomfoolery. He further invokes a foolish straw man to replace “master/slave by sjw/whitemalecis” with no understanding of power dynamics, the benefits of being white as opposed to being black, the benefits of being a man as opposed to a woman, and benefits of being cisgender as opposed to being transgender.
As of 2018, Godot now uses the word "puppet" as opposed to "slave", shown here: https://github.com/godotengine/godot/pull/22087
Regardless, when discussing the change in a separate thread, now only open for comment to developers of the Godot engine, Reduz's behaviour still comes off as dismissive, arrogant, and heedless of the reasons for such a change being demanded. His responses can be found here https://github.com/godotengine/godot/issues/7986#issuecomment-421185969
To highlight an excerpt from Reduz:
"I hope you understand that, even though the majority was in favor of this change, most of Godot contributors are not from regions where the "slave" word (still) has a strong negative connotation (case in point, most contributors are not from the US). The world is more complex than many believe it to be."
Perhaps this has a tinge of calling feminism and civil rights movements as 'western propaganda'. It echos of freeman's comments of 'Political (in)Correctness'. It makes it seem as if the legacy of racism in South America is not as damaging as it is in the United States, Canada, etc.
To conclude this writing here are excerpts of further evidence of the Godot development community's problems from the IRC chat logs, publicly available, and my commentary:
[15:00:31]
[15:01:56]
Windfisch's words come off as indifferent to the feelings of those upset by the use of the "slave" term! They think of a few developers, who may or may not even care about the issue, before the good of the community. They value the right of the lead developer to be argumentative over creating a positive and welcoming space. What entails a "more valuable developer"? Does Windfisch find white people who are indifferent to racism in terminology more valuable then people of color, or anyone who takes offense to the "master/slave" term? I think that is what this user is getting at.
[14:52:23]
[14:54:20]
[14:54:36]
Again Reduz accuses the act of correcting the language as being of an USAmerican centrism. And again the reactionary phrase `politically correct` is used. Does he really believe that USAmerican colleges are centers of Marxist indoctrination?
[15:08:12]
[15:11:23]
Just as the theory of intersectionality can be used to describe an interlinking of oppressed people, it can also be used to describe how oppression under slavery and bondage is interlinked with oppression as a lgbtq person. It is reductionism to dismiss anti-racist language as simply lgbtq persons being 'frivolous'. It is dismissive of the decades of work by civil rights activists.
As mentioned, these IRC logs are publicly available, and logs I quoted from can be accessed from the link below. There is much more evidence of harmful remarks and debates within.
http://godot.eska.me/irc-logs/devel/2018-09-13.log
http://godot.eska.me/irc-logs/devel/2018-09-14.log
In conclusion, the behavior of Reduz in regards to the “Master\Slave” situation is my primary motivation to stop using Godot Engine. I do not seek to shame anyone continuing to use the engine to make their games. I am simply a person with a strong conscious. Thank you for taking the time to read this.
[1] https://web.archive.org/web/20170204003218/http://searchnetworking.techtarget.com/definition/master-slave
[2] A word of caution: As of writing, the website for the Global Language Monitor seems to have real life gore on the sidebar. We can conclude that the website is biased to the reactionary right wing by its' use of the phrase 'political correctness' and claiming words such as cisgender are 'politically incorrect'.