Trying to get paid to work on diversity in tech? Read this

Do you want to get paid to work on increasing diversity in tech? This post is for you. In this post I focus on aligning your funding with the work you want to do.

TL;DR: The majority of your funding should come from sources who are fairly directly rewarded by your work. Specifically, be aware most for-profit corporations prefer to fund work that has a direct connection to increasing their profits without significantly benefiting their competitors.

If you want to pay people to do this work: Donate to Ashe Dryden, Shanley Kane, Black Girls Code, or organizations people suggest in the comments. Set up a recurring donation if at all possible: recurring donations have the lowest fundraising cost and allows people to do long-term, more effective projects.

What do I know about getting paid to work on diversity in tech?

For the last 3 years, increasing diversity in tech has been my full-time job at the Ada Initiative. I’m delighted that more people are looking for ways to make improving diversity in tech their day job. My co-founder Mary Gardiner and I spent the last few years figuring out how to pay ourselves and others to do this work, and I think we’re starting to get the hang of it. We also made a lot of mistakes and learned a lot of things along the way.

I want to share specifically what I learned about aligning funding sources and activism work so hopefully other people can make fewer (or at least different) mistakes. (Note that in this post I’m speaking as an individual rather than as a representative of the Ada Initiative.)

Funding model #1: Get a job at an existing organization with diversity in tech as part of its mission

This is the simplest method, and probably not one I need to go into in detail. Look at the work the organization is currently doing, and that’s probably the kind of work you would be able to do. Keep reading to understand the impact of the organization’s funding sources on the work they are able to do, so you can set your expectations appropriately.

Funding model #2: Corporate sponsorship

The first funding theory people often come up with (and I was no exception) goes something like this: Software companies have lots of money. They benefit from increasing diversity in tech because they can hire more people and produce better products. Let’s ask software companies to fund our work.

Where this model works is: your work provides recruiting services to the companies funding your work (usually at or below market cost). Examples include Anita Borg Institute, the Outreach Program for Women, sponsorships for conferences that attract a lot of skilled tech folks, and scholarships for Hacker School-style training programs. This kind of diversity work matches up open tech positions with early-career people who are already trained to do the work, or almost done with their training.

Funding this kind of work is attractive to companies because the amount spent on sponsoring a conference or an internship is a cost-effective alternative to regular recruiter or referral fees (often tens of thousands of dollars per successful hire), the people they are hiring are generally early career and therefore cheaper, and internships often serve as both extended interviews and a way to produce code the company can use.

Where this funding model doesn’t work: working with people who need more than a few months of training before they can be hired (more expensive), focusing on retention of existing employees (more expensive, requires culture change and letting go of privilege), encouraging industry-wide cultural change (because it doesn’t give a competitive advantage to individual corporations), and anything critical of the industry status quo (because nobody likes paying money to be publicly criticized).

Funding model #3: Work as an employee for a tech company

Another popular funding idea is to become an employee of a for-profit tech company and include diversity in tech work in your job description, either part or full-time. This sounds great but is tricky to do in reality.

My experience and observation is that if you are hired primarly to do job X, with, say, 10% of your time allocated to diversity in tech work, it quickly becomes 10% in addition to the 100% time you spend on your main job – unless you can show a direct connection between the company’s profits and your diversity in tech work. (In most cases, it should be connected to your division’s quarterly or annual goals in a measurable way.) The same advice to show a connection to the company’s profits goes for a job doing diversity work 100% of your time.

Imagine you’re a director, and you’re sitting in a yearly review meeting, looking at your department’s budget and your goals. You see the line item for diversity in tech work. How does this get you closer to that promotion? It doesn’t. Don’t expect people to support your work in the context of a system that punishes them for doing so. This goes double for full-time tech diversity jobs.

The second issue is that you can’t do anything controversial (read: effective) without endangering your job. When SendGrid fired Adria Richards for blogging about about PyCon attendees making sexist jokes, it was just one example of the risks tech employees face for speaking up. It is a very rare corporation that will not at least pressure employees to “keep your head down.”

Where this model works is: your work is not controversial, it does not publicly criticize either your employer or any of its competitors or partners, it does not significantly benefit your competitors, and it contributes measurably and directly to an important, specific company goal linked to profits. (You can’t criticize your employer’s competitors because you will be open to accusations of bias.)

An important exception to the rule that for-profit companies only fund work that contributes directly to the bottom line is companies that are owned and controlled largely by a person (or a few people) who care(s) deeply about diversity in tech and who will devote money to it whether or not it increases their company’s profits. These people and companies are wonderful but too rare to build an entire funding base on.

Funding model #4: Crowd-funding

The next model is can be summarized as “crowd-funding” – a new name for an old concept that is getting easier to execute with Internet services like Indiegogo and Gittip. In this model, funding comes from a large number of individual donations by people who care about increasing diversity in tech for personal reasons: a commitment to social justice, a desire to help people close to them, or wanting to make their community a more pleasant place, to list a few. I personally love this kind of funding because it aligns the most with the kind of work I want to do: controversial, effective, high-leverage culture change.

Where the crowd-funding model works: Work that has continuous short-term outputs that satisfy individual people’s desires to see improved social justice. Like all funding methods, it requires a fair amount of fundraising effort, especially after the first round. Obviously you also need an extensive personal network to make this work, but that is true for any diversity in tech work I’ve seen.

Funding model #5: Grants

Frankly, I have almost no experience with grants, but did a lot of research and talked to a lot of people who do. Grants (either government or private) have enormous overhead and are out of the reach of most individuals and small corporations. At this point in the game, grants only make sense for large organizations except in very unusual circumstances (Wikimedia Foundation’s extremely lightweight community grants programs is one example).

To non-profit, or not to non-profit?

Is it worth creating a non-profit corporation and getting tax-exempt status in the U.S.? If your organization would consist of just one person doing diversity work, probably no.

The benefits of becoming a tax-exempt non-profit include potentially increased donations if donors can deduct them from their taxable income, qualifying for corporate matching gift programs (huge!), increased donor confidence, and various free or discounted services (like hosting and CRM services). The costs are incredibly extensive paperwork, accounting, reporting, oversight, compliance, etc.

Interestingly, my experience is that individual donors to diversity in tech efforts are fairly likely to donate to a non-tax exempt cause anyway. In my opinion, going for the full tax-exempt non-profit status is only worth it if you are funding more than one person’s work (and have either a deep interest in accounting or iron self-discipline).

Fiscal sponsorship is another ball of wax: basically, you pay part of your donations to an organization that does part of the accounting and due diligence for you, and in return it funnels tax-exempt donations through to your organization. You need to find a fiscal sponsor whose mission encompasses yours, and you are then potentially subject to pressure on your fiscal sponsor if you do something unpopular. It works for many organizations (feminist makerspaces like Seattle Attic and Double Union, for example) but I haven’t seen it in use to fiscally sponsor a single person’s work.


Getting paid to do diversity in tech work as your day job is really fucking hard. Think carefully about your funding model from a systems point of view: What are the incentives? Who benefits? What are the trade-offs? Then go out and make it happen.

Posted in Uncategorized | 1 Comment

Two cold tips for 2014

I used to take a fatalist view of cold prevention and treatment: you can’t stop getting them without becoming a hermit, and the drugs usually make you feel worse, so why bother doing anything about them other than settling down to watch a lot of Netflix?

Two things happened to change my mind: I started traveling internationally again, and I got a cold three days before some important major surgery that would have been hell to reschedule. I had never in my entire life gotten over a cold in only three days, but I gave it a shot and did ALL THE THINGS – and had my surgery as scheduled.

Here are the two biggest things I learned about colds this year, one for prevention and one for treatment:

Prevention: Before flying, coat the insides of your nostrils with petroleum jelly (I use a q-tip, other people use their pinky). I have not caught a cold on a flight since I started doing this in July, based on the advice of a CEO friend who travels extensively. Viruses like to get into your body by landing on the mucus membranes just inside your nostrils. I don’t think you even need an antibacterial petroleum jelly as Daniel Pink recommends, I suspect the physical barrier is sufficient.

Treatment: If you get a cold, use an oxymetazoline nasal spray with menthol and/or eucalyptus (like Zicam or Afrin). Not only does it clear up your sinuses and prevent secondary infections, it also FEELS GOOD OMG => no pain => sleep better => get well sooner. Just be sure not to use it more than the recommended number of days because you’ll become dependent.

I just picked out the two most effective things I changed in cold management this year, but here are all the things I did in my panic to get over that cold I got before surgery:

  • Oxymetazoline nasal spray with menthol and eucalyptus (decongestant, pain relief)
  • Zinc tablets every few hours (ends cold sooner, read the directions carefully)
  • Acetaminophen (wow, really works for pain and therefore sleep)
  • Pseudoephedrine (decongestant, I hate it, makes me wired, probably unnecessary with oxymetazoline)
  • Guafenesin (expectorant)
  • Azithromycin (prophylactic antiobiotics because I didn’t want to miss the surgery – would normally never do this)
  • Zolpidem (for sleep)
  • Occasional nasal saline rinses (evidence is not good for this as a long-term practice but feels nice in the mornings)
  • Humidifier (reduce pain, speed healing of nasal passages)
  • Many hot baths
  • Vitamin C (evidence for this is not good but Emergen-C tastes yummy)
  • Lots of herbal tea

And now I’m going to remember to look at this blog entry every time I get a cold so I don’t forget to do all the things.

I’m turning comments off but leaving pingbacks on because this is the worst kind of blog post for comments (but good for follow-up blog posts).

Posted in Uncategorized | 1 Comment

Here’s my favorite operating systems war story, what’s yours?

Val in her Dr. Pepper days

Val in her Dr Pepper days

When I was working on my operating systems project in university, I stayed up all night for weeks feverishly rebooting my test machine, hoping that THIS time my interrupt handler changes worked. I survived on a diet of raisin bagels, baby carrots, and Dr Pepper, and only left the computer lab to shower and sleep for a few hours before stumbling back in and opening up EMACS again. I loved it.

Julia Evans‘ blog posts about writing an operating system in Rust at Hacker School are making me miss the days when I thought everything about operating systems was magical. Julia is (a) hilarious, (b) totally honest, (c) incredibly enthusiastic about learning systems programming. (See “What does the Linux kernel even do?“, “After 5 days, my OS doesn’t crash when I press a key“, and “After 6 days, I have problems I don’t understand at all.”) I’m sure somewhere on Hacker News there is a thread getting upvoted about how Julia is (a) faking it, (b) a bad programmer, (c) really a man, but here in the real world she’s making me and a lot of other folks nostalgic for our systems programming days.

Yesterday’s post about something mysteriously zeroing out everything about 12K in her binary reminded me of one of my favorite OS debugging stories. Since I’m stuck at home recovering from surgery, I can’t tell anyone it unless I write a blog post about it.

VME crate (CC-BY-SA Sergio.ballestrero at en.wikipedia)

VME crate (CC-BY-SA Sergio.ballestrero at en.wikipedia)

In 2001, I got a job maintaining the Linux kernel for the (now defunct) Gemini subarchitecture of the PowerPC. The Gemini was an “embedded” SMP board in a giant grey metal VME cage with a custom BIOS. Getting the board in and out of the chassis required brute strength, profanity, and a certain amount of blood loss. The thing was a beast – loud and power hungry, intended for military planes and tanks where no one noticed a few extra dozen decibels.

The Gemini subarchitecture had not had a maintainer or even been booted in about 6 months of kernel releases. This did not stop a particularly enthusiastic PowerPC developer from tinkering extensively with the Gemini-specific bootloader code, which was totally untestable without the Gemini hardware. With sinking heart, I compiled the latest kernel, tftp’d it to the VME board, and told the BIOS to boot it.

It booted! Wow! What are the chances? Flushed with success, I made some minor cosmetic change and rebooted with the new kernel. Nothing, no happy printk’s scrolling down the serial console. Okay, somehow my trivial patch broke something. I booted the old binary. Still nothing. I thought for a while, made some random change, and booted again. It worked! Okay, this time I will reboot right away to make sure it is not a fluke. Reboot. Nothing. I guess it was a fluke. A few dozen reboots later, I went to lunch, came back, and tried again. Success! Reboot. Failure. Great, a non-deterministic bug – my favorite.

Eventually I noticed that the longer the machine had been powered down before I tried to boot, the more likely it was to boot correctly. (I turned the VME cage off whenever possible because of the noise from the fans and the hard disks, which were those old SCSI drives that made a high-pitched whining noise that bored straight through your brain.) I used the BIOS to dump the DRAM (memory) on the machine and noticed that each time I dumped the memory, more and more bits were zeroes instead of ones. Of course I knew intellectually that DRAM loses data when you turned the power off (duh) but I never followed it through to the realization that the memory would gradually turn to zeroes as the electrons trickled out of their tiny holding pens.

So I used the BIOS to zero out the section of memory where I loaded the kernel, and it booted – every time! After that, it didn’t take long to figure out that the part of the bootloader code that was supposed to zero out the kernel’s BSS section had been broken by our enthusiastic PowerPC developer. The BSS is the part of the binary that contains variables that are initialized to zero at the beginning of the program. To save space, the BSS is not usually stored as a string of zeroes in the binary image, but initialized to zero after the program is loaded but before it starts running. Obviously, it causes problems when variables that are supposed to be zero are something other than zero. I fixed the BSS zeroing code and went on to the next problem.

This bug is an example of what I love about operating systems work. There’s no step-by-step algorithm to figure out what’s wrong; you can’t just turn on the debugger and step through till you see the bug. You have to understand the computer software and hardware from top to bottom to figure out what’s going wrong and fix it (and sometimes you need to understand quite a bit of electrical engineering and mathematical logic, too).

If you have a favorite operating system debugging story to share, please leave a comment!

Updated to add: Hacker News had a strangely on-topic discussion about this post with lots more great debugging stories. Check it out!

Posted in Uncategorized | Tagged , , , | 12 Comments

Hey Safeway, your response to harassment in stores sucks

Today, at the Safeway #0995 at 1335 Webster St. in San Francisco, I had to yell “HEY, THIS GUY IS HARASSING ME. IS ANYONE GOING TO DO SOMETHING ABOUT IT?” I was so loud that everyone for 50 feet around me turned around to look. At this point a store employee finally came over and asked the man who had been repeatedly harassing me and another woman for several minutes to leave. Later, the other woman he was harassing found me in the chips and snacks aisle and thanked me profusely.

Harassers hate it when you take their photos

Harassers hate it when you take their photos

I’m writing this blog post because of what this woman told me next to the tortilla chips. She said that men harass her in this store all the time, and the employees never do anything about it. That they treat her like she’s causing the problem, and it’s a “fight” between the two of them. That the only reason they did anything this time was because two women had complained. This young woman was grateful to me – another customer – for being the first person to stand up for her and get her harasser kicked out of this Safeway. And I had to be willing to shout at the top of my lungs before anything happened.

I believe her, because until I got involved, that’s exactly what was happening. When I first saw her, there was a store employee standing between her and a man acting aggressive and verbally abusive. I decided to stand next to her and watch. Naturally, the man started harassing me too – can’t have the women standing up for each other!

Despite this, the store employee kept focusing on the victim, trying to get her not to call the cops. They told him to “keep shopping” and that they would “talk to her” and talk to me. I could not see why this was necessary since he was harassing us right directly in front of the employee. Meanwhile, the harasser would come back and say more nasty things to us as the employee talked to us.

This went on for several minutes, store employee talking to us, man coming back to harass us both, me asking them to kick him out. The store employee eventually went for help, leaving us alone with this dude and his equally scary friend. When he came back for the third time to harass us, that’s when I shouted “HEY, THIS GUY IS HARASSING ME. IS ANYONE GOING TO DO SOMETHING ABOUT IT?” Finally, another employee came over and kicked the guy out of the store.

Harassment is not between the harasser and the victim

I called the store manager when I got home and discovered that she was the exact employee who had been acting like the problem was the woman complaining about harassment and not the guy doing the harassing. I told her what the other woman had told me and what was wrong with the manager’s approach to harassment, that harassment isn’t “between” two people. It’s the store’s problem and they are clearly not handling it well and their staff need more training. Her response? “I told you I was taking care of it.” “That’s the first time I ever heard about her being harassed.” “I was trying to calm things down.”

Hey! News flash! If you’re the store management, I don’t want you to calm things down! If you are standing there as a witness to someone harassing people repeatedly right in front of your eyes, I want YOU to be the person who yells, “HEY! GET SOMEONE OVER HERE TO KICK THIS GUY OUT, PRONTO!” It shouldn’t take some random street harassment vigilante to risk her physical safety to make your store a place where women aren’t afraid to shop. I called Safeway’s national complaint phone number next; maybe that will get somewhere.

The ridiculous, victim-blaming, self-defeating response of the store manager – and the previous 4 times I was harassed today – made me write this blog post. As I was walking back home, I looked down the length of Geary Street and marked out all the places I was harassed this morning. I thought, “I want to own this street. I want to walk down it and never be harassed again. I deserve that right.”

Fighting street harassment

I know that I’m going to get punched or stabbed or seriously hurt someday for fighting back against street harassment in person. I don’t think people should have to risk their health and lives to fight street harassment. Hollaback harassment reporting appThat’s one reason I recently gave $250 to Hollaback, a non-profit fighting street harassment with some pretty cool ideas. The latest is a harassment reporting phone app for New York City that sends your harassment report directly to the City Council and mayor’s office – which is brilliant, send the report to the people who can do something about it. I’ve supported Hollaback since their first Kickstarter campaign and I’m excited to see their work growing and improving each year. Please join me in fighting street harassment the smart way.

Posted in Uncategorized | Tagged | 1 Comment

Meet Double Union, a new feminist makerspace in San Francisco

The Bay Bridge and a tugboat in the foreground

View from Mozilla SF

This upcoming Tuesday, September 17th, 2013, from 5:00pm to 6:30pm, the Double Union feminist makerspace is hosting a Tea Social and Lightning Talks at the Mozilla SF offices. Learn more and register here!

What is Double Union? Since the last AdaCamp, a group of open tech/culture feminists in San Francisco have been organizing what I think of as “AdaCamp year-round”: a feminist makerspace here in San Francisco. The idea of Double Union is to have a space where women can work together on fun, creative, and feminist projects in a supportive and women-friendly environment. I plan to work on projects like uploading my e2fsck parallelization patches to GitHub, sewing skirts that fit me well, and making clever, funny feminist propaganda. (Insert evil laughter here.)

Historically, makerspaces and hackerspaces have had difficulty attracting and recruiting women to their spaces. In my day job at the Ada Initiative, I spend a lot of time helping people create a culture and environment that is more welcoming to women. I’m excited to test out that knowledge at Double Union.

So if you’re a woman who has visited a hackerspace before and thought, “Nope, not for me,” come join us for some seriously good food, funny talks, and good company. Or if you are any gender and think a feminist makerspace sounds intriguing, or know someone who might be interested, please come too!

(Just in case it isn’t clear: Double Union is my hobby and Ada Initiative is my job, and they are not related to each other, other than being awesome feminist projects for women in open tech/culture.)

Posted in Uncategorized | Tagged , , ,

I am much less disabled!

I wrote a difficult post a year and a half ago in which I accepted that I was actually for real disabled, not just the unlucky victim of a series of unrelated injuries for 7 years straight. (This was probably around the time I bought a second cane in case one cane wasn’t enough to get me the 15 feet from the couch to the bathroom during one of my bad times.) Well, I’ve been waiting to write this post until I was sure, but I’m sure: I am now mostly abled again!

What happened? I stopped eating wheat. Yeah, the whole gluten-free thing? Is trendy because it works for many people. I hesitate to use the term “gluten-free” for myself because I honestly don’t know which part of the wheat I’m sensitive to, but since there’s basically only one wheat product that doesn’t have gluten (purified wheat dextrin, a laxative) it doesn’t matter at a practical level. I’ve had the celiac test and I don’t have the gene for that specific gluten allergy (there are several kinds of gluten and other wheat parts that can cause allergic reactions, celiac is an allergy to a specific one).

I have a lot more details in my Dreamwidth journal about the various weird health problems that cleared up when I stopped eating wheat, but the major one is that my whole body no longer hurts. It was weird when the first major pain center cleared up – it felt like there was an empty hole in my body where the pain had been. I had gotten used to using pain to tell where my body parts were and how they were moving, instead of proprioception. I’m slowy redeveloping that sense, but I still catch myself being surprised when I make a movement and it doesn’t hurt in the way I expect.

I’m not entirely sure what the future holds, other than change. I still have hypermobility problems and I’m working with a sports massage therapist to uncramp the muscles that got injured during this time. While I’m not depressed right now, I fully expect that to change again in the future. My family has a lot of genetically-linked health problems and I already know I have two of them. So I’m not taking my current relatively good health for granted but I plan to take advantage of it while it lasts.

I would love love love to get back to serious hiking but I still feel afraid after years of being unable to even sit up for 2 hours at a time. Today I walked 4 miles like it ain’t no thing, and a couple of weeks ago I went 16 hours straight without lying down. I’m definitely never hiking Mount Whitney again, but the Grand Canyon with an overnight at the lodge at the bottom? Maybe in a year or two.

Posted in Uncategorized | Tagged | 5 Comments

2013: Tipping point for the Linux kernel community?

As the last days of the Ada Initiative fundraising drive come to a close ($103,000 so far!), I’m reflecting on what’s changed for Linux in the last 2 and half years. And it’s pretty awesome.

This is the year I’ve been waiting for in the Linux kernel community: the year that 7 new women are learning kernel development at once, the year that kernel developers directly called out the leader of the Linux kernel for fostering a hostile, shitty culture, the year that we as a community realized that the “graying of Linux” is a serious threat to the future of the kernel.

Back in 2011 when I quit my Linux kernel job at Red Hat and co-founded the Ada Initiative, making the Linux kernel community less hostile and more welcoming to women (and all people) seemed like an impossible task. Many Linux developers, past and present, donated to the Ada Initiative anyway, in an act of what I can only call rampant optimism. I decided to focus on more achievable goals, like never getting groped by another Linux kernel developer at a conference again. (So far, so good!)

So I was thrilled to hear about the 7 Linux kernel internships, and the call for civility, and the recognition of the lack of new kernel developers, but I didn’t think the Ada Initiative was directly involved in any of them. But then I kept learning more about ways that the Ada Initiative played an influential part in these events.

As one example, Marina Zhurakhinskaya, head of the fabulously successful Outreach Program for Women in open source, wrote last week about how AdaCamp brought her together with new mentors for the Outreach Program for Women. She told me that the connections she made and the discussions she had at AdaCamp were key to making this year’s 7 Linux kernel internships for women possible. She also credited the increase in the percentage of women speakers at GUADEC this year (from 7% to 21% in one year!) to skills she learned from reading a post on the Ada Initiative’s blog.

It took 2 years to make a noticable impact on the culture of the kernel community, but the Ada Initiative’s approach is working, thanks to people who believed in us back when we were just a web site and two programmers turned activists. My personal goal is to make the Linux kernel community as functional, productive, and enjoyable as the Django community or the Python community. Just imagine: What would a Linux kernel developer event with 20% women be like? What if Kernel Summit was dominated by polite people who just wanted to work together to make the kernel better? How many top developers who left the kernel community could we convince to come back?

For the first time, I’m starting to believe this idea could come true. You can make that day come faster by donating now. And when you meet the new OPW interns at LinuxCon, smile, say hi, and let them know that you’re on their side.

Donate now

Posted in Uncategorized | Tagged , , , , | 1 Comment