I heard about a Python tutorial that was going on this weekend, and with well over a decade of Python experience, I decided to volunteer to help students. I hadn't realized it was a women's workshop put on by PyLadies, but I'm glad I went because I came out of the event with a number of observations that extend out to the Free Software community as a whole.

It's no secret that our community isn't great at encouraging women contributors. Various surveys show that between 1.5 and 5% of Free Software contributors are women. That is low even compared to the 12-25% of women in computer science. And while we all cringe at incidents like the Golden Gate Ruby Conference fiasco, and the Squoot Jam, these incidents alone don't explain the lack of participation by women in our community.

The Audience Is Out There

The class was well attended. Seventeen women and one man came to learn how to program in Python. Considering that Python materials are readily available in books, on the web and in videos, this heavy attendance shows that there are people who want to learn and that they will if they're presented with the opportunity.

Motivation

In one of the classic programming texts (I forget which one), the author says that very few people who learn to program should be programmers, but that he'd like to see more programming done by those of other professions. The workshop would have made him proud, as every student I talked to shared the sentiment with me that they hoped to learn Python in order to do their job more effectively, by learning to collect, sort or process data in new and more efficient ways.

The Students Care

During the first half of the class, the students were engaged, and excited. They asked questions, and worked with the instructor, and with each other, to help fill in the gaps. Sometimes they'd ask a volunteer for help, but largely the questions I received were grammatical rather than conceptual.

The Unsure Student

By and large the students seemed comfortable with the material and engaged with the instructor, but there were exceptions.

One of the students who sat next to me was a young woman who was far ahead of the class. She was easily an hour ahead of the other students in the progress she'd made with the final project when she asked me for help.

Looking at her screen, she'd made significant progress towards finishing the project, but when she asked me a question she giggled and told me she had no idea what the project was about, or what to do.

Why?

I still don't know the reason. Studies have shown that especially bright women have this reaction to difficult material and that women learning computer science do better in an single sex classroom (though those studies have critics). But I can say that I personally found this experience surprising, and I wondered afterwards why this extremely competent woman in her 20s would react this way after clearly mastering the material.

The Presence of a "Helpful" Jerk

I mentioned earlier that the first half of the class had a lot of student engagement, with questions and joking.

After lunch, a new volunteer joined the classroom, someone I'll call Dave.

Dave was really excited by the class, and, like me and the other volunteers, had a lot of experience with Python.

Dave expressed his enthusiasm for the material by asking a lot of very technical questions to the instructor. Largely, these questions seemed designed to show off his own knowledge, or to challenge the instructor. In other words, Dave was the jerk at the conference.

And Dave's behavior had a noticable effect on the workshop. Students tuned out, became distracted, asked less questions, and had a lot more difficulty following the material.

While the students tuned out, I felt myself getting angry. I saw Dave's behavior as a challenge, a call to action. And it was at that moment that the gender difference became most apparent to me.

To me, and I suspect most men, we'd see Dave's behavior as a call to arms. Dave was raising the stakes and even though his behavior was clearly rude, it also demonstrated that he had a mastery over the material.

But to this classroom, Dave's behavior not only ground the timing of the class down to a halt, it also seemed to have an effect on the students, who had until then been very involved in the workshop.

Lessons Learned

I'd never really believed in single sex education, and I'd really never believed that the gender difference in computer science education was due to lack of interest. Just as I've never heard an outcry about how few male teachers exist, I never understood the outcry about the lack of women programmers or sys-admins.

But my experience last weekend changed my view. One of the students from the workshop came to the DC Python meetup, and I saw that women only groups are not creating a more insular community of women, but rather offering these women a more comfortable entrance into our general community, and so I say more LinuxChix, more PyLadies, and more Ladies Learning Code.

The jerk factor also reminded me of why we in the Free Software community need to be taking issues of civility seriously, and not letting the idea of "free speech" get in the way of maintaining a safe place for discussion. I've seen groups fail in both ways, by allowing jerks to run the roost, and with draconian and arbitrary moderation. I can't recommend Art of Community enough.