Thanks to the people who donated between 3:00 PM September 17 and 6:00 PM September 18 who gave permission for their names to be used and/or tweeted saying that they donated; if your name is not on the list and you donated, then you either didn't give permission, didn't use the ?campaign=lambda URL suffix, or something somewhere got messed up; if so, email me (catamorphism at gmail) and we'll fix it.
AlephCloud Systems -- our first corporate donor! (We'd love more.)
Corey "cmr" Richardson
Eric Kow kowey
As well as those who donated earlier, but whose names got left off the first list somehow:
Aaron Tomb atombeast
algebraic affects joshbohde
Bob Atkey bentnib
Maggie Litton MaggieLitton
And finally, thanks to haskellnow, haskellorg, and lambdaladies for help publicizing!
Giving money is a good start, and I hope that at least some people will be moved to collaborate with the Ada Initiative in other ways. In any case, it shouldn't end there. Here are 12 other things that functional programmers who want to support and include women can do:
- Know what intersectionality is
This is tricky to talk about, because TAI and the loosely affiliated Geek Feminism Blog and Geek Feminism Wiki are all run mostly by white people (like me). We all know there's a problem here; we talk about how there's no excuse for companies and open-source communities to be 100% male, yet we're almost 100% white.
With that said, to be an ally, being open to feminist perspectives isn't enough. Intersectionality, a term coined by Black feminist scholar Patricia Hill Collins, refers to the ways in which membership in multiple oppressed groups is not compositional. That is, a Black woman's experiences (for example) are not merely the result of composing a prototypical white woman's experiences with a prototypical Black man's experiences; rather, multiple marginalizations compose in a more complicated way. When it comes to understanding a concept like intersectionality, functional programmers have an advantage: like intersectional feminists, we are often criticized for using too many long and unfamiliar words. So we should know as well as anyone that sometimes, technical language is necessary for clarity. (Insert pun about intersection types here.)
- Attend an Ally Skills workshop
The Ada Initiative runs workshops that teach men how to better support women in their workplaces and other communities. I participated in the Ally Skills track during this year's AdaCamp in Portland, and I appreciated that it was designed primarily around small-group discussions of hypothetical but realistic scenarios. For a reasonable fee, TAI will hold one at your workplace, and one thing that donations finance is holding them at nonprofit organizations for a reduced cost. You just have to ask.
- Listen to women
When a woman talks about her experiences, and you have never had the experience of being perceived as a woman, try something: assume she is reporting on her own experiences accurately. Almost all the time, your assumption will be correct. But more than that, it's an important skill to be able to temporarily suspend your programmerly desire to find edge cases and point out errors, and just listen. Listening doesn't always mean shutting the heck up, although sometimes that's what's needed too. Rather, active listening means acknowledging that you understand what's being said: you can do this non-verbally (for in-person discussions) or by rephrasing what the person said in different words to indicate your comprehension and validate what she is saying. In light of point 1 about intersectionality, the more intersecting oppressions somebody has, the more important it is to listen to and let them know that you hear them.
This doesn't mean you have to believe everything all women say all the time. Rather, it means that there are already enough men in the world automatically casting doubt on everything a woman says, and you don't need to be one more. Indicating that you hear what somebody is saying doesn't mean agreeing. It means that for the moment, you prioritize understanding their message ahead of showing off how much you know or how good you are at debates. You can decide offline whether to agree.
- Believe women
But I just said you didn't have to agree! Well, yes, you don't have to, but in a world that bombards more or less all women with gaslighting, believing a woman is a radical act. In particular, if a woman is talking about her experience of harassment or another adverse experience that typically involves men mistreating women when no other men are present, assume she's telling the truth (and if anything, understating how bad it was). You will almost never be wrong if you believe her, and it's better to have a vanishingly low chance of being wrong than to contribute to the systematic psychological torture of women who are honest about their lives.
- Help women get heard
Say you're in a meeting and a woman says something; it's ignored, and 15 minutes later, a man rephrases the same idea and gets praised for it. At that moment, you can speak out by saying, "How does that compare to the idea that [woman's name] proposed?" This is a non-confrontational way to re-center the woman as originator of an idea. In general, if you're in a conversation and other people are steamrolling a woman or women, say something -- you don't have to say "you sexist pigs, why don't you listen to her?" unless you want to, but there are many different ways to indicate that, if nothing else, you heard her.
- Hire women
If you work at a software company and have any influence over hiring, hire women. The same goes if you work at a university, even if the hiring process is a bit more byzantine. In computer science or in software, anybody who is not a cis man is more qualified than an imaginary person who is identical except being a cis man. Isn't that "reverse sexism"? No, for the same reason that it's harder to do a pull-up with 50 pounds of weights strapped to your ankles than without. Give women (as well as people of color, disabled people, trans people, queer people...) credit for the enormous amount of work they've had to do just to be seen as equally competent to a given man who is actually less competent. In functional programming, nobody would do this work just for fame and wealth, because there is very little of that to be had; someone purely interested in a high-paying job or other extrinsic motivators would never choose our field if they also had to deal with others' bias along with the risk of not getting rewarded at all. The people who do persevere do it because they love the work they do, probably more than you do.
- Practice your empathy
If you have lived your entire life in the Western Hemisphere being seen as a white, cis, abled man, you probably have some work to do here. It's not your fault: it's likely that you've rarely been rewarded for taking the perspective of someone unlike yourself, and indeed have been coddled for solipsistic thinking rather than being encouraged to think of others' feelings. Fortunately, empathy is a skill that can be learned. Kronda Adair's talk Expanding Your Empathy (from Open Source Bridge 2013) is one place to start.
- Encourage double-blind reviewing
This one applies to those of you who review for and/or help organize academic conferences. It is documented beyond a shadow of a doubt that innate bias affects decisions about people's work: when evaluators know that a particular article is by somebody with a name they interpret as female, they grade it more harshly than if all of its authors had male-coded names. Most people don't want to exercise bias against women, but they do anyway, subconsciously. Concealing author names during reviewing goes part of the way towards addressing this problem. It's not perfect, but someone claiming that it doesn't reduce bias is making an evidence-free claim.
Non-academics can try applying this one by having their recruiting team (if they have one) redact names from resumes during the first round of candidate evaluation.
- Show fallibility and humility
This one has to be exercised carefully, but if you are someone with a relatively high amount of power (for example, if you're a white cis man who has a tenure-track or tenured academic position, or are a manager in an industry position), it's helpful to others around you if you say "I don't know" when you don't know, admit mistakes when you are wrong, and acknowledge when you're finding something difficult. Sometimes people underestimate just how much influence they have. If you're white, cis, and male, whether you like it or not, the people around you will tend to believe the things you say. With that increased power comes increased responsibility: to scrupulously distinguish what you believe to be facts from what you know are your opinions.
- Volunteer to mentor women
For example, the GNOME Outreach Program for Women matches promising women getting started in open source with mentors from various projects. This is one of the most direct, personal ways you can help. If you don't work on an open-source project, find out what your company can do in the way of outreach at local schools, or if you're a faculty member, figure out what your department can do to support women in undergrad and graduate CS programs instead of just tallying up your admission numbers and cheerfully declaring diversity a done deal while all the women get constructively dismissed.
If you do this, though, be prepared to learn as much from your mentee as vice versa.
- Try to be kinder than you have to
I don't mean that you need to be kind to people who are abusing or oppressing you; you don't. What I mean is that you have the affordance of being patient when somebody asks the same beginner question for the nth time on a forum you're on, or when somebody makes a wrong assumption based on their knowledge of a different programming language. It's easy to lose patience with people who don't know as much as you do; I've done it a lot myself. But it takes very little to make somebody give up on a community that is new to them, and I've personally seen that happening with functional programming. When somebody else genuinely seems to be acting in good faith, even if they're confused or seem to be slow on the uptake, just remind yourself that you have a privilege that they lack (knowledge) and give them the benefit of the doubt.
- Remember that functional programming is a part of programming, and programming is part of the world.
You might react to some of these suggestions with, "what does that have to do with functional programming? That happens everywhere." Indeed. Most of these bullet points are not specific to our field. But global problems must be addressed locally, in the community that you're in. The good news is that everything you do to make functional programming a safer field for women, and genderqueer and non-binary, people to be in will also make programming as a whole that much safer, as well as the world as a whole.
Don't forget to tweet to #lambda4ada when you donate! Suggested tweet, though you're encouraged to use your own words:
I donated to @adainitiative b/c I want @TheOfficialACM events to announce their anti-harassment policy. https://supportada.org?campaign=lambda #lambda4ada