Paper: Feminism in Programming Language Design

Uncategorized5 Comments on Paper: Feminism in Programming Language Design

Paper: Feminism in Programming Language Design

Next week I will visit SPLASH to present a paper titles “A case for feminism in programming language design”, co-authored with Ari Schlesinger. A preprint of the paper can be found at the end of this post, if you want to check it out, or in the ACM digital library.

I fully understand that this paper title will create friction, people will surely be upset at the mention of feminism in the space of programming languages, and evenmore so because we suggest that PL design can use some feminism, but I hope this short post will help people understand how to read the paper, and what the back story is, so that they can understand better where we are coming from.

Rejecting feminism

Last year, I gave a talk about this idea for a group of young female CS students, and I asked who of them identified as feminist, and almost all of them raised their hands. When I was their age, I surely would not have identified as a feminist (so I guess we are making some progress), and to be honest I am not even sure why.

I think it was mostly that feminism was presented to me as a group of whiners. We had education, abortion, voting rights? What more could they want really? I bought into the ‘lean in feminism’ of the 90 and zeroes: if you simply work hard, you have the same opportunities as men, so just keep your head down and work. Of course it did not help that in my CS program there were, literally, only a handful of women (I was one of 2 out of about 120 students), so I already stood out like a sore thumb, I was surely not going to attract more attention by complaining about that.

So it people reading this and reject the whole idea of feminism and ‘complainism’, I get that!
But over time, my thinking changed.

By the way, the image of feminists being complainers is not something that appeared out of thin air, but was constructed by people opposing feminism, as you can see in imagery from those days, for complaining about the vote, something most people would now feel is… a reasonable thing to want.

Source: National Women’s History Museum

Feminism is about examining systems

A thing I do, naturally, is to ask why things are the way they are. Maybe that is a result of my upbringing, where my dad’s parenting slogan was: “We will decide that for ourselves”, when people would have opinions of what we should or should not do. I also hate injustice and inequality.

Over time, I learned that a core tenet of feminism is to ask why things are the way they are, and by that to examine how we can make them more fair.

Now, that really resonates with me, because over time I have developed a few questions about why the PL community is the way it is. The question that I had did not have so much to do, per se, with the lack of women in PL, but about systems: what do we value and why?

Turns out, feminism has a lot to say about systems of power, because systems of power are exactly what feminism has been studying and changing (like: who gets to vote, have a bank account, have power over their own bodies etc.)

What is a programming language?

One of the PL community questions that has been bugging me for a long time is what is and what isn’t a programming language. As long time followers know, I used to work on spreadsheets—I did very cool things like build refactoring tools for spreadsheets—but the only thing people generally cared about was telling me over and over that spreadsheets are not programming languages. And it never became clear why that is. Argumentation that could easily be refuted (yes, spreadsheets are Turing complete, thank you very much) did not help in any case: Saying that spreadsheets are code is outside of the Overton window of acceptable PL opinions, I learned over and over again.

But why? In many other cases, the definition of programming languages is fluid, I remember when Python was not a programming language, but a scripting language, very different. And UML is, I think, universally not seen as a programming language, but it is featured in the book Masterminds of Programming which features “exclusive interviews with the creators of several historic and highly influential programming languages.”

So the way we construct what is a programming language is social, groups decide what is in and out, and if you are out, like spreadsheets, and thus like in early in your career, you cannot participate in the world of PL. If we want to study this phenomenon, we cannot do that in the realm of PL itself, you will need theories about how social constructs work, and that is where feminism can help!

How do we study programming languages?

The other question that has been rolling around in my brain for years, is how we study programming languages. Ever since I met Stefan Hanenberg at ECOOP 2010, when he was working on attempts with Andreas Stefik to get PL to do more user studies, I have wondered why studies with human subjects are so rare in PL. In software engineering (at least before the field was eaten by LLMs….) a broad variety of research methods were in scope, from formal proofs to corpus analysis of code and issue trackers, to observations, interviews and theory building. PL is arguably similar to software engineering in that they both aim to improve te state of software by creating things that people could potentially use to improve that state with. Why are the research methods then so different?

My exploration of feminism has helped me, more than anything else I have tried in the last decade, including explaining to many people that yes qualitative work is also hard and valuable. If you do not understand where they are coming from, what systems of power their beliefs are rooted in, this does not do a lot.

I hope this intro will help people that were confused about this work to place the paper better and to enjoy reading it more!

5 thoughts on “Paper: Feminism in Programming Language Design

  1. > yes qualitative work is also hard and valuable

    Thank you Félienne for this great post. I distinctly remember that a senior member of the research community told me after I had presented my qualitative research at ICSE (and had already earned my PhD for it) that it wasn’t really *real* research.

    (Because only quantitative was *real* research, obviously.)

    🙄

  2. This is amazing, Felienne! As a young woman in PL (an undergrad), I felt heard when you spoke about the nature of PL and how it affects women. I’d love to connect with you during the dinner today. My name is Olohi.

  3. Thank you for this article (not read the paper yet but definitely will). Thank you for questionning the status quo. Feeling that « I do not mind who you are, I am only interested in technical aspects » or « We are not here to dicuss such topics, only technical aspect » are bullshit answers from persons who fear the system evolving and maybe realise / loose their implicit privilege (whatever about gender, skin, origins and so on).
    Take care
    Note : I am a white cis dude who spent 15 years in academia / research, and I am far from perfect.

  4. Thanks very much for your talk and this paper. I’m not a PL designer but I’m a Haskell programmer and I have had that “not at home” feeling a lot. I think, as a computer nerd from a young age, I really internalized that “hard = worthwhile” ideology – it’s what attracted me to Haskell in the first place. But once I started programming for work instead of fun/learning, I started feeling like my work didn’t fit in – it didn’t feel relevant to anything people in the community were talking about. Not new or innovative or academic. It’s such a trap. I wanted to do the hard thing because I had internalized that value system, but once I started to do the same boring work as the average male software developer I still felt that I had more to prove. A tool that your paper/ feminism gives me is a way to label that feeling and maybe challenge it instead of being intimidated or isolated by the feeling. The feeling comes from something real even if it can’t be quantified. This reminder/affirmation is super valuable and important and I thank you for it.

Comments are closed.

Back To Top