Debunking myths, answering questions

I’ve seen a bunch of the same questions coming up again and again in comments on my OSCON keynote, both on my own blog and on other sites, so I thought I’d take the time to answer some of them in a central place.

1.5%? 20%? Really? Where did you get those numbers from?

1.5% women in open source: FLOSSPOLS survey, 2006, funded by the EU. 1541 open source developers were surveyed, from a range of projects both large and small. The surveyed developers were taken from those who had answered the earlier FLOSS survey and had provided their email addresses for subsequent contact; the 2002 FLOSS survey was a widespread survey of open source developers, who were recruited by asking people to pass information about the survey out to open source development mailing lists and the like. The FLOSS survey published a report on their methodology and validation of results which describes possible selection biases, etc.

5% women in the Perl community (users and developers): my own survey of approx 5000 Perl users in 2007. The specific figures were 95% male, 4% female, 1% other. In putting together my slides, I was working from memory and conflated the 4% and 1% into 5% total, who I represented as female. This was incorrect, and I will fix it if/when I give my presentation again. The results of the Perl Survey are available as a summary PDF (Letter, A4) or as a raw data dump.

10% women in Drupal community: DrupalChix website. Addison Berry, a Drupal contributor, told me at OSCON that the number is based on attendance at Drupal events. I have not had this confirmed as yet.

20% women in technology industry: figures vary between about 15% and 30% when looking at overall proprotions of women in IT roles from country to country. For example, some of the reports I’ve read say things like 24.5% of non-administrative ICT roles in the US (source – PDF), 19% of ICT roles in Australia (source), and 20% of the IT workforce in France (source – PDF). These surveys are usually done by either industry bodies such as the Information Technology Association of America or government bodies like the Australian Department of Workplace Relations. Usually they include all IT roles, including corporate IT and the like. When surveying for eg. women in technical management, the numbers are generally lower. I’ve been collecting links to such reports here.

Dreamwidth and OTW are about journalling and fanfic. Of course they have lots of women! But women don’t join other open source projects because they don’t use/care about that kind of software.

Here are some examples of widely-used open source software:

  • Ubuntu – desktop linux distribution
  • GIMP – graphic design application
  • WordPress – blogging platform
  • Adium – IM client
  • Firefox – web browser
  • Joomla – content management system
  • Moodle – online education platform

Each of these projects is in an area that either has a majority of women participating (blogging, IM, graphic design), or an equal or nearly equal number as men (desktop computing, education, web browsing), at least in western countries. And yet they do not have proportional representation of women in their development teams.

It is not (solely) the female-friendliness of the underlying application that leads to women joining an open source project. If it were, the above projects would have a high level of female participation.

Nor are there many applications so inherently female-unfriendly as to automatically explain a 98.5% male development team; the Linux kernel, which I’ve heard cited as an example, is no such thing, since the proportion of Linux users — including desktop and handheld devices such as the Kindle, Android phone, etc — is no doubt higher than 1.5%.

Isn’t 75% or 100% women on a project just reverse sexism? How come that’s OK when 100% men isn’t?

100% of men in a single project would be just fine if it were an outlier, and if that were an accurate representation of the user base for that software and the necessary developer skillset. But that’s not what’s going on. The problem we’re facing here is one of widespread inequality: a pervasive situation affecting thousands of projects, regardless of the skills and interests of the wider community.

A healthy open source community would show a bell curve of female participation rates, with the hump somewhere around the percentage of women who use that kind of software and/or the percentage of women who have (or can acquire) the appropriate skills — let’s say anywhere between 20% and 50% for most software projects. (That 20% is based on the number of women in the tech industry with the right kind of skills, and the 50% represents the number of female users for applications like blogging, web browsing, graphic design, or teaching.)

As with any bell curve, there will be outliers. Fan fiction, admittedly, is a heavily female activity so a higher proportion of female participants is not surprising. On the other hand, a man asked me at OSCON what to do about his all-male model railway automation project, and that’s one I think is just fine with 100% male developers given the pool of model rail enthusiasts he’s drawing from.

(Of course, we can also work in parallel to address imbalances in user communities or in the pool of people who have appropriate skills, but that’s not where I’m focussing right now. If you’re interested in that, you might like to look into organisations working on encouraging girls in STEM (science, technology, engineering, maths) education or teaching computer skills to adult women. For all I know there are also groups working to encourage women in the model railway community.)

Post-OSCON roundup

A lot’s happened in the few days since my keynote at OSCON and I think it’s time I did a round-up of women-in-open-source-related stuff from the conference itself and the not-quite-a-week since.

Some wins for the conference:

  • Gina Blaber from O’Reilly tells me that female attendance is up, and it looked that way to me. I’d guess around 5%, which of course is still kind of appalling, but I think a bit higher than last year.
  • Proportion of female speakers is up to 8.9% (from 8.36% last year). That’s just based on actual numbers of people, not the talks they gave; it might be a smidge higher based on number of talks. A small improvement, but any improvement is good at this point.
  • I noticed a couple of instances where people had modified their slides to remove content that might make some attendees feel marginalised or uncomfortable, and a couple of references to Aimonetti’s CouchDB talk that show that people are more aware of the issue of sexualised presentations than before.
  • Between CLS and OSCON itself, there were a number of BoFs, discussions, and events around women in open source, which were good opportunities for people to talk about the issues or just get to know other people who care.

And since the conference:

  • Randal Schwartz of Stonehenge Consulting has apologised for hiring booth babes and/or sexily-dressed entertainment for events at OSCON, and promised not to do so in the future.
  • Some conferences I know of are talking about creating a code of conduct to make it clear what is and isn’t appropriate behaviour for attendees, speakers, and vendors. (I’ll wait for them to announce themselves publicly, as it’s all been going on in private email.) Nat Torkington and I have been working on this cut-and-paste set of guidelines for any other events that might like to do likewise.
  • The Python community is starting to discuss diversity, and has started up a mailing list for the purpose. One CPAN author has also committed to including a diversity statement in all his modules.

There are a bunch of discussion threads going on in various places. Here are a few that I know of:

If you join in on any of the above threads, please try to maintain civility.

Now, I have an actual dayjob I need to get to.

Forking Encouraged: Folk Programming, Open Source, and Social Software Development

This is my other presentation from OSCON. I gave this one with all-round lovely guy Yoz Grahame from Linden Lab, and Freebase developer platform czar Jason Douglas. We presented on Friday morning in a really tough slot — there were half a dozen other talks that I wanted to be at! — so attendance was a little light.

There were some upsides though:

yoz.jpg

So, for those of you who couldn’t make it for whatever reason, I hope this will be useful!

Quick notes:

Yoz first gave his “Folk Programming” talk at a Wiki Wednesday in 2007 and I was there and I thought it was great, so we’ve been talking a lot about the concepts on and off since then.

Basically our presentation here is the 15 minute version of his longer talk, followed by me talking about how the concepts apply to open source software, and then Jason talking about how we (i.e. Freebase.com) applied the concepts to our new app development platform to help encourage adoption and a strong developer ecosystem.

Yoz starts out talking about he first learnt to program (on a ZX Spectrum), and how beginning programmers often cargo cult as a way of learning. Cargo cult programming is often stigmatised, but it can be seen as a kind of folk process, like folk music or folk stories, and it’s a good way to get started.

He then gave a bunch of examples of folk programming in action, from an MIT study of children passing around little games on Dreamcast modules, to Yahoo Pipes and Second Life. He identifies five things necessary for a real folk programming environment:

  • Create your own code.
  • View, clone, and modify someone else’s code.
  • Free, always-on, ubiquitous hosting.
  • Huge array of diverse data sources.
  • Code creates new data for use by others.

I then took over and slightly reframed his list for the open source world:

  • Free and Open Source licenses
  • Easy cloning forking
  • Hosted development environments
  • Huge array of data

I looked at some examples including github, Amazon EC2, and Google App Engine, and looked at them to see whether they provided folk programming environments for open source development. What I found is that each provides some elements, but none provides all of them.

When Jason and his team at Freebase were starting work on our hosted app development platform, Acre, we got Yoz in to give a lunchtime talk about Folk Programming, and used a lot of his ideas in developing our platform. Jason walks us through how Acre has BSD licensing, one-click cloning, and interacts with Freebase’s huge store of open data.

Some of the demos he shows include “data games” for Freebase contributors to more quickly add data to Freebase itself, which started off with a single app called Typewriter and quickly evolved into a cluster of apps and eventually a library and toolkit to allow people to quickly build more. (Some were built at our recent Hack Day, for example, including one to easily find CC-licensed images to attach to Freebase topics.)

Another set of apps he showed were clustered around the concept of lists in Freebase, starting with an app to create lists of anything and then showing a recommendation website and an app for TV fans all based on the same underlying data.

Jason closed by talking about some of the challenges we’d faced and future directions for folk computing in the open source world. Challenges included version control and collaboration (because there is a time when you’re no longer experimenting and need to work together on things rather than fork), and the state of in-browser development tools like syntax-highlighting code editors and Firebug-style console debugging for server-side apps.

Questions from the audience included “Have you seen people writing large apps in folk programming environments, in the thousands or tens of thousands of lines range?” to which the answer is “yes” — LambdaMOO and SecondLife being enormous, and some of the Freebase apps being in that linecount range already despite only having properly launched about two weeks ago.

“How do you handle security?” was the second question, which Jason answered at length. Some of the parts of the Acre security model included sandboxing on the server; having each app on its own subdomain to prevent cookie hacks; and everything being sanitised by default to protect against cross-site scripting attacks.

Ignite talk on Textiles

The video from Tuesday night’s Ignite OSCON is up! Mine is the second talk, starting around eight minutes in. It’s on the subject of Five Geeky Things You Can Do With Textiles.

The five things, by the way, are:

  1. Set them on fire.
  2. Look at them really closely.
  3. Invent LOLCATS.
  4. Spread free culture.
  5. Make things.

Standing out in the crowd: my OSCON keynote

If you weren’t at OSCON this morning, here is what I spoke about in my keynote, Standing Out in the Crowd. I’m including most of the key visuals, so my apologies for the image-heavy post. I’ll also be uploading to slideshare.net (with voiceover I hope) and I’m told there will be video up at the OSCON blip.tv channel in due course. (ETA: it’s up.)

Anyway, on with the show.

They asked me to speak about women in open source, and most specifically about two recent open source projects that have a majority of women developers. But first, I need to give a bit of context.

Linux Kernel Summit 2008 -- 80 men, 1 woman
Image credit: Jonathan Corbet, lwn.net

This is a normal sort of open source project. I’ll give you a minute to spot the women in the picture. Sorry, make that woman. She’s on the right. Can you see her?

This is normal for open source.

In 2006, the FLOSSPOLS survey (a broad survey of open source usage and development, funded by the EU) found that only 1.5% of open source contributors are women.

Visual: 98.5% men (blue figures), 1.5% women (pink figures)

In 2007, my survey of the Perl community — both contributors to Perl and users of Perl — found about 5% women. The Drupal community is doing even better, around 10%. And in technical professions and in computer science in universities, reports vary: it can be anywhere from 10% to 30% depending on who you ask and how they’re slicing it. Let’s say 20%.

Tech industry: 80% men, 20% women

So in most technical communities, women are in a minority. But in open source communities, we’re in an even smaller minority — by a factor of about ten or more.

So what does it feel like to be a woman in open source? Jono Bacon, at the Community Leadership Summit on the weekend, said — addressing the guys in the room — that if you want to know what it’s like to be a woman in open source, go and get your nails done at a salon. He did this a week or so back, and when he walked into the salon he realised he was the only man there, and felt kind of out of place.

Another example someone suggested is walking into a sports bar on game night wearing the wrong team’s jersey. It can be the most friendly sports bar in the universe, but you’re still going to feel pretty awkward.

So as a woman in open source, it can be a bit like that. You walk into a space, and you feel like you stand out. And there’s enormous pressure to perform well, in case any mistake you make reflects on everyone of your gender.

And that’s just the subtle stuff. There’s also more blatant problems, like sexist jokes, pornographic presentations at conferences, harrassment, and even death threats against women in the open source community. I wish I was joking, but I’m not.

The FLOSSPOLS survey asked open source contributors whether they had witnessed sexism, harrassment, or discrimination in our community. Here’s what they found:

Bar chart: 80% of women have noticed sexism, 80% of men haven't

80% of women had noticed sexism in the open source community. 80% of men never noticed anything. That’s a pretty big gap.

Well, enough of this depressing stuff. Let’s talk about something more cheerful.

Majority-female open source projects

There are two new open source projects I’ve been involved with this last year, which are have a majority of women developers.

The first is the Organization for Transformative Works’ Archive Of Our Own (AO3 for short). The OTW supports creators of fan fiction, fan videos, and all other creative things that fans do, like this:

TREKQMkirkspock1.gif

They’re lobbying against the DMCA, they have an academic journal called Transformative Works and Cultures, and they’re working on creating a fanfic archive, by fans and for fans, that won’t cave to over-enthusiastic takedown notices or pressure from nervous advertisers.

When the OTW decided to create the archive, they set up an open source project and they went out recruiting developers. But not necessarily experienced programmers — just anyone who was interested in taking part, and had a passion for making this project work. In fact, they made an effort to include non-programmers early on, and decided to choose a language based on what was easiest for non-programmers to learn.

You can see their process in this LiveJournal post. Basically they said flip a coin: heads is Ruby, tails is Python. Go learn that language to a basic level, install the development toolkit on your computer, and write a simple “Choose your own adventure” style program with a couple of conditional statements in it.

They got about 70 people to do this — all non-programmers, and almost all women from the fan community — and used their feedback to choose Ruby as their programming language of choice.

The AO3 project now has about 60k lines of Rails and Javascript and HTML and all that (the count is for non-comment non-whitespace LOC). There are over 20 developers who have submitted code, and every single one of them is female. (There are some men in other parts of the project, like sysadmin, but as far as I know none have submitted code to AO3 itself.) I’ve put together a Google spreadsheet with vital statistics about the project.

The second project I wanted to talk about is Dreamwidth, a fork of the LiveJournal codebase, which means it’s a blogging and community platform. It was founded by two ex-LJ employees, one male and one female. It’s currently in open beta and has about 40,000 users, 210,000 lines of Perl etc, and 40ish developers of whom 75% are female. You can check that same Google spreadsheet for more stats.

Like AO3, Dreamwidth makes a point of encouraging new developers, who they call “baby devs”. For instance, there is an IRC channel called #dw-kindergarten where they can go for non-judgemental help. Dreamwidth also provides hosted development environments called “Dreamhacks” for anyone who wants them.

From the very start, Dreamwidth has had a diversity statement that welcomes developers from every walk of life:

We welcome people of any gender identity or expression, race, ethnicity, size, nationality, sexual orientation, ability level, religion, culture, subculture, and political opinion.

Their disability/accessibility policy is also great, and has led to a high proportion of developers with disabilities:

We think accessibility for people with disabilities is a priority, not an afterthought. We think neurodiversity is a feature, not a bug.

The result is an open source developer community that looks like this:

keynote.023-001.jpg

Or, to be more exact, like this:

Dreamwidth developer group photo

I surveyed women on the Dreamwidth and AO3 projects and asked them about their experiences. You can read a fuller report of their responses on my earlier blog post, Dispatches from the revolution.

One of the first things I asked them was whether they had previously been involved in open source projects. They gave answers like:

I’d never contributed to an open source project before, or even considered that I could.

I didn’t feel like I was wanted.

I never got the impression that outsiders were welcome.

I considered getting involved in Debian, but the barriers to entry seemed high.

Those who got a little further along still found it hard to become productive on those projects:

It’s kind of like being handed a box full of random bicycle parts: it doesn’t help when you don’t know how they go together and just want to learn how to ride a bike.

People without a ton of experience get shunted off to side areas like docs and support, and those areas end up as the ladies’ auxiliary.

But on Dreamwidth and AO3…

What I like most is that there isn’t any attitude of “stand aside and leave the code to the grown-ups”. If there’s something that I’m able to contribute, however small, then the contribution is welcome.

And this one, which is my favourite:

Deep down, I had always assumed coding required this kind of special aptitude, something that I just didn’t have and never would. It lost its forbidding mystique when I learned that people I had assumed to be super-coders (surely born with keyboard attached!) had only started training a year ago. People without any prior experience! Women! Like me! Jesus! It’s like a barrier broke down in my mind.

So, what can we learn from this? Well, one thing I’ve learnt is that if anyone says, “Women just aren’t interested in technology” or “Women aren’t interested in open source,” it’s just not true. Women are interested, willing, able, and competent. They’re just not contributing to existing, dare I say “mainstream”, open source projects.

And this is great news! It’s great news for new projects. If you are starting up a new open source project, you have the opportunity to recruit these women.

Here are some tips based on what I’ve seen on Dreamwidth and AO3.

Recruit diversity.

From the very earliest days of your project, recruit the diversity you want to see. The first two or three members of the project will set the tone for what follows. People will look at the project and think, “Is this somewhere I can see myself fitting in?”

If you’re working on a desktop app, recruit desktop users. If you’re writing a music sharing toolkit, recruit music lovers. Don’t worry about their programming skills. You can teach programming; you can’t teach passion or diversity.

Say it. Mean it.

Get yourself a Code of Conduct or a Diversity Statement, or possibly both. Use it to set expectations around how your community should treat each other. And don’t just mouth the words. Stand by your policy, and uphold it.

Tools. (Tools are easy.)

Put up a wiki and make sure it contains plenty of information for new developers. Set up your bug tracking system to flag easy tasks for beginners to do. You could even provide a hosted development environment like Dreamwidth’s Dreamhack system, with all the tools and libraries and configuration already in place, to get people hacking as quickly as possible.

Transparency.

Communicate. Not just to existing developers and users, but to newcomers and outsiders as well. Take the time to show what’s going on inside your project — teams, sub-projects, internal processes and communication — so that people who are interested can envision what it would be like to be a part of it.

Of course, all these things are easy to do when you’re starting a new project. It can be harder to implement them in an existing project, maybe one that’s been around two or five or ten years, because you have a lot of inertia in place. Which is not to say you shouldn’t try, but I recognise that it can be difficult and frustrating.

So here are some things that you can do as individuals, no matter what project you’re on.

Don’t stare.

If a woman joins your project, don’t stare. Just welcome her (politely but not effusively, because that can be creepy), give her any information she needs to get things done, and thank her for her contributions.

Value all contributions.

Large or small, code or docs or bug reports or organisational tasks. All are valuable to your project. Say “thank you”. You don’t have to be the project leader to do this; anyone can do it, and it makes a big difference.

Call people on their crap.

If someone’s being an asshole, call them on their crap. How do you tell if someone’s being an asshole? Well, if there’s a naked woman on the projector screen, that’s a good sign.

Let them know that their behaviour is making people feel unwelcome, and that you don’t like it.

Pay attention.

Pay attention to your own behaviour and the behaviour of others. This is possibly the hardest piece of advice I’m going to give. You’re not used to noticing this stuff. 80% of you haven’t noticed the sexism in our community.

As men, you are able to glide through life ignoring these things. If you are white, and straight, and speak English, and are university educated, there are a bunch of other things you’ve been able to ignore so far, too. I’m asking you to try not to ignore them. Keep your eyes and ears open and be aware of how things feel to people who don’t share your privilege.

So, those are a few tips I’ve picked up from Dreamwidth and the Archive Of Our Own. They’re only two projects, and they’re both still new, but I think it’s a start.

I’d like to leave you with a parting thought.

What do you think would happen to this picture if we got more women into the open source community?

98.5% men (blue figures), 1.5% women (pink figures)

Do you think some of those little blue figures will turn pink? Do you think there will be less of the blue?

That’s not how it works. Any step you take to improve the diversity of your project will work to increase the developer pool overall.

Previous picture, with men shifted over and a lot more women added beside them

We’re not far enough along in our plans for world domination that we can afford to turn anyone away.

Thank you.


If you attended OSCON and saw my keynote, please take a moment to rate it. You might also be interested in this write-up by Robert Kaye on the O’Reilly Radar blog.

ETA: Both Mark Smith and Denise Paolucci (the two Dreamwidth founders) have posted about their experiences at OSCON and conversations they had there about Dreamwidth and its development processes and community: Denise’s post, Mark’s post. Very much worth reading. Check the comments too.

ETA2: Comments are moderated. Anonymous comments are not permitted. Anything excessively argumentative, vicious, or personal will not be posted. I don’t mind constructive criticism or differences of opinion, but I won’t take abuse. Thanks.

The Naughtiest Girl

Marnanel reminded me of this story with his post about Wikipedia vandalism.

When I was in grade 6, age about 11, my school had 7 Apple IIe computers. The staff knew very little about them; turned out, not very surprisingly, that I and some of my peers knew more than the teachers.

Now, my school was really into giving kids responsibility and letting them learn by doing and stuff. Plus, if you were in the top percentiles for academics, they tended to give you other activities so you wouldn’t get bored shitless in class.

I was generally in the top percentiles, and often bored in class. I was good with computers. They put me in charge of the Apple IIes. My job was basically tech support. Tiny kids would come trotting up from other classrooms and say, “Our printer doesn’t work!” or whatever, and I’d get to duck out of yet another class on fractions and fix it.

My title, in this role: computer monitor.

In their defence, that wasn’t the term used for the VDU at that time and place. I think we called it the “screen”, but I’m not quite sure.

wikivandal1.png

Richard Stallman, feminist ally

In a 2007 interview with Spanish-language tech blog Todas, Richard Stallman said:

Where men exclude women, women are justified in resisting the exclusion. I will try to help, if it happens in a place where I have some influence, and I see the details of how it occurs.

Great! Perhaps he could start with acknowledging the female contributors to GCC, who he’s never noticed before, according to the same interview:

I don’t have any experience working with women in programming projects; I don’t think that any volunteered to work on Emacs or GCC.

Then he could move on to the ongoing problem of dismissive, exclusionary, or humiliating treatment of women by presenters at technical conferences.

Oh wait, he’s already on that case. Never mind.

My new hackintosh

I recently acquired a Dell Mini 9 laptop and turned it into a Hackintosh using these instructions from Gizmodo.

The install was relatively smooth. Not 100% — I had to go through it twice in the end — but not bad. Here is the result: my hackintosh posing with my work laptop, a 15″ Macbook Pro.

My Dell Mini 9 Hackintosh

I’m currently working on installing all the software I need to feel at home, and getting used to the damn apostrophe key being nowhere near where I expect it to be. The keyboard size, in and of itself, is fine, but the placement of some of the punctuation keys is driving me a little bit mad.

Here are my additional notes:

I used the USB stick install, no DVD drive. Where Gizmodo says Choose “80″ for the primary internal SSD I had to type “81″ instead.

When I upgraded using System Update, it took me to OSX 10.5.7, and then the DellEFI installer didn’t work properly, and I got into an unrecoverable (to me) state of wedgitude: the machine would boot to the grey apple logo, then it would get all these weird video artifacts, and hang. I had to start over on account of this. Second time through, I carefully downloaded the 10.5.6 combo update from Apple and installed that instead. Worked fine.

Wake from sleep wasn’t working. Googling around, stevenf’s hackintosh notes told me I had to disable “Legacy USB support” in the BIOS to make it wake from sleep correctly. I did this and it worked fine. However, I gather that “hibernate” doesn’t really work, so I’m going to have to be careful about not leaving things unsaved when I put the laptop to sleep for a long time.

I’m not very impressed with the battery life, but I hear 10.5.7 improves matters. I’m not going to try it right now — I’m off for a short trip tonight and don’t want to get the laptop wedged again — but I might try next week.

Another thing I’d like to figure out is whether I can manage dual boot with Ubuntu. I might find myself a bit tight on disk space, but I have the 32GB SSD and I’m sure it’ll fit, even if it does cut into my space for music and videos. If I start running out of room, I can always expand with an SD card.

Hackintoshing is, of course, in contravention of Apple’s Software License Agreement. All I have to say to that is: if Apple had a tiny, lightweight netbook available, I would be first in line to buy one. I say this as the owner of a Macbook (my third, counting work laptops), a Mac Mini, an iPhone, and a certain amount of fully licensed Apple software.