Blog Post

A Feminist & A Programmer

Feminism is a polarizing ideology, a commanding word, and is a transformative concept. I am proud of my feminism.


Computer science is an amazing platform, a pervasive idea, and a space for creative problem solving. I am proud to be a computer scientist.


An important question then becomes, what does it mean to be a feminist and a computer scientist? To be a feminist and a programmer? How can we combine these disciplines? 


It might help to talk about what feminism means to me, as feminism means different things to different people. bell hooks defines feminism  as “ a movement to end sexism, sexist exploitation, and oppression.” I want to live in a world where people are not marginalized based on their appearance, birth, beliefs, or spirituality. 


While people might have different areas of focus, computer science has a centralized definition. Computer science is a field that relates to computation and the applications of computers. In the article Making Programming Masculine, Nathan Ensminger explains how in the past computation was a field where antisocial individuals were sought out using personality profiles.  Even though computer science involves a lot of quality time with your machine, there is no reason more socially minded individuals should be kept out of this field. Just as there is no reason that women should be kept out of computer science, or any other field for that matter.


Our globalized, networked world is entangled and chaotic. We live in the Information Age where the social impact technology, programming, and computer science have can be seen all over the world. This is part of why I work in computer science and feminism. When the code we write is changing the world, we have responsibilities to the people our code affects. 


Feminism and programming languages get right to core of this idea. Batya Friedman edited a collection of essays titled Human Values and the Design of Computer Technology that demonstrates how values and biases are perpetuated through a variety of computer systems. My research is to explore how we can combine feminism and programming languages in a way that makes social responsibility, equality, and accessibility an effective part of the programming process. 


So, what is a feminist programming language? I will be posting updates throughout the research process as I pursue an answer.  








Hi Arielle, 
I love this topic.  There is much work that needs to be done in this area.  I look forward to following your research.

On a side note, you may be interested in joining us next year for the Feminist Scholars Digital Workshop. (Information for next year’s workshop is forthcoming.)  FSDW could be a good place to share and receive feedback on your work in a friendly, supportive environment. 
Lori Beth 

Hi Lori Beth,

Thank you so much for the interest. I'm excited to continue this research and I’m glad you'll be following along.

FSDW sounds like a really great opportunity, I look forward to more information. I love how the structure of the workshop reflects the nature of digital, connected communication. Thanks for sharing.



Hi Arielle, 

I am writing from outside the world of feminism, that is to say I do not choose to use the word feminist to describe myself, but humanist and preferance for equality for all people would be my preference. I also do not study the humanities much, but I am very much in computer science.

With my background out of the way, I found the idea of a 'feminist programming language' to be very confusing because the purpose of a programming language is to communicate logically with the computer — which should be strictly gender neutral at its core.

So while I cannot see any application of feminism to while loops, functions, and such; the rest of the process certainly can — the final product, the engineering process to get there. Is it possible that software engineering an area where this line of thought might be more applicable?

- Jeffrey.


"the purpose of a programming language is to communicate logically with the computer" in the same way that "the purpose of a natural language is to communicate logically with other people."

However, according to certain schools of thought, language is not merely an impartial means of communication but an active ingredient in shaping culture. Did you ever read 1984, and how the Ministry of Truth was developing "newspeak", an intentionally convoluted language designed for the express purpose of making subversive thoughts impossible to communicate? Have you ever tried to talk to someone who constantly tries to correct your grammar ignoring your larger point? People claim intelligence when they know all the ins and outs of a language as if that has any value at all. If language is so passive, why do we place such emphasis on "getting it right"?

One thing that we, as programmers, often forget is that programming languages are designed. They are designed explicitly, by people, to make some things easy at the expense of making other things difficult. While we are free to build our own vocabulary (creating functions and libraries), if others do not adopt our libraries, we have to return to the initial language to communicate.

The language may or may not have biases in it, perceived or actual. They might be cultural biases (actively misogynistic or racist) or they may be biases purely within the field of computer science (functional vs object-oriented).

The word "humanist" makes no sense from a critical theory perspective. While I don't mean to speak for Ari's research, this research towards a "feminist" language isn't about a preference for creating equality or (in the words of a wise Facebook commenter) "painting programming languages pink". It's looking at the discipline from the perspective of the inequalities and power structures that already exist.


Hi Arielle,


Interesting topic - one as a Computer Scientist I've heard brought up a time or two. In my experience, I have seen a bit of this masculinity, but it hasn't been apparent to me beyond describing functionality in a culturally relatable way. The most poingant example that comes to mind is the UNIX Manual command - "man". Seemingly masculine in nature, the origin is in the original UNIX tradition of extreme shortening of commands - sometimes nonsensically. Now I can grant that commands can occassionally sound "harsher" and thus more masculine - "grep" and "malloc" come to mind - sounding like something straight out of a toolkit manual. However, while I have no concept of what grep actually means, malloc is again in the shortening tradition for "memory allocation" - and I'm sure grep is some shortenign of something.

The masculinity I believe lies more inherently in this utilitarian shortening in some older, especially hardware based languages. As languages abstractify and become more object oriented, I feel they become more gender-ambiguous. Object oriented programming seems to use more adjective-based, "softer" terminology that seems more easily female-relatable, and extends programming languages in my eyes to become a mroe universal, male and female language set.

Then again, this is just the two cents of a programmer - and this is not particularly a field I've much study in other than a few conversations - so I'm sure there's much more I could learn about this!

PS: As you speak of feminism and Computer Science, have you heard of the Grace Hopper Celebration? It's a fantastic opportunity for women in STEM, particularly CS/Technology fields to connect and learn :)