Tag Archives: python

Boston Python Workshop logo

Lessons learned from the Boston Python Workshop, an outreach event for women

This is a guest post by Jessica McKellar. Jessica is a software engineer and an organizer for the Boston Python Meetup.

This entry originally appeared at the OpenHatch.org blog.

My name is Jessica, and I’m an organizer, curriculum developer, and lecturer for the Boston Python Workshop, a free, 1.5 day project-driven introduction to Python for women and their friends. The workshop has run twice, in March and May, and the third run is happening in July at Google Cambridge.

I’d like to share some of the lessons the Boston Python Workshop staff have learned about organizing outreach workshops and our goal of bringing more gender diversity to the local Python community.

First, the structure of the Boston Python Workshop

Boston Python Workshop logo

The Boston Python Workshop is for women and their friends who have no or limited programming experience (I’ll talk more about “women and their friends” in a bit).

The workshop is held on a Friday evening and all day Saturday. On Friday, attendees set up their development environments and start learning Python through a self-directed tutorial and practice problems.

On Saturday, attendees continue learning Python with a 2 hour interactive lecture. Attendees and staff socialize over a sponsored, on-site lunch. In the afternoon, we break out into groups to practice Python while rotating through three short projects on a variety of fun and practical topics. Our projects have included writing parts of a Twitter client, how to cheat at Words with Friends, writing a basic web app in Django, and writing graphical effects for a ColorWall. Our material is all online, so check it out.

This comes to a solid 10 hours of learning and practicing Python, with support from a strong group of volunteers from the local programming and open source communities. The workshop is run under the auspices of the Boston Python Meetup (I’m one of the Meetup organizers) and we hold follow-up events like an open Project Night through the Meetup.

Lessons learned about teaching Python to beginners

Boston Python Workshop attendees watch a presentation

There is a huge difference between teaching Python to people with programming experience in another language and people with absolutely no prior programming experience. The biggest lesson we learned is that if you are going to teach absolute beginners, you have to commit to really starting at the beginning:

Continue reading

Wall of Spam, by freezelight on Flickr CC BY-SA 2.0

Have a nice cup of hot linkspam (2nd July, 2011)

You can suggest links for future linkspams in comments here, or by using the “geekfeminism” tag on delicious, freelish.us or pinboard.in or the “#geekfeminism” tag on Twitter. Please note that we tend to stick to publishing recent links (from the last month or so).

Thanks to everyone who suggested links.

On competence, confidence, pernicious socialization, recursion, and tricking yourself

The other night I went to a hacking meetup for the first time in months. It’s usually an informal Python learnfest, and as I’m refreshing my Python basics, I went with the assumption that I’d be the least technically skilled person there. Like, of course, right?

The hacking meetup that night was, as it turns out, an installfest, so I ended up generally poking around at the software being demonstrated, and conversing with strangers. One in particular caught my attention with a fairly ill-formed question: what meetups should he visit to learn how to make websites?

Over the next hour, as I answered his questions, it became clear that he just didn’t know much, compared to me, about software engineering, or about the wider world of technology or the web. He’s in the second year of a computer information systems bachelor’s degree, and knows his way around a little Java (of which I am wholly illiterate). He didn’t know about the LAMP stack, or about Drupal or Rails or Django (or why one might choose PHP versus Ruby versus Python versus Java versus pick-your-web-friendly-language). He didn’t know that these tools exist, or why one would use a framework or pre-existing CMS rather than coding “everything” oneself. He has never heard of bug trackers, or source control, or diff. He said he did not know what a wiki was (I scarcely believed this, and told him that Wikipedia is a wiki).

As a side note: I gathered that his entire career trajectory and curriculum comes not even from conventional wisdom, but from “I once heard someone say.” Examples: “Why are you doing CIS instead of CS?” “Someone told me that CS majors get outsourced.” Or, more boggling: “Someone told me Python is useless.”

From one perspective, this guy has more technical merit than I do. He has taken an algorithms class. He can probably do a job interview coding question better than I can (reverse the characters in this string, etc.). But I have a fair amount of wisdom he lacks, full stop.

Then there was the guy who was interviewing me to work at his startup. As we walked, he offhandedly mentioned his current project at his day job: a PHP web app needed to be able to turn user markup into HTML. “And you’ve already checked whether MediaWiki has something you can grab, right?” I asked. He stopped in his tracks. No, he had not thought of that.

I need to stop assuming that everyone else knows more about the tech than I do.

We’ve talked a fair amount here at Geek Feminism about impostor syndrome and sexism (my past post). I’m just going to start with a few postulates:

  • In sexist societies, women get especially socialized to think we’re not as intellectually capable as we are, and to act self-deprecating about our abilities
  • In technical spaces where women are the minority, sexists dismiss our successes and concentrate on our missteps

Regarding the latter, I recently reread Abi Sutherland’s “Permission to Suck”, which included a moment of a familiar self-flagellation:

…every achievement is just a mitigation of the disservice I’m doing womankind.

It’s as though my goalposts came on casters to make them easier to move

But of course that is an error in judgment. Our sense of our own merit gets calibrated by feedback from the outside world, but sexism and impostor syndrome get in the way of that calibration. All the tentacles of this issue — the prejudice, the tokenization, the distorted self-perception, the discounting of one’s achievements and comparative lionization of others’ — bother me because they mess with proper judgment.

On an emotional level, I especially hate that anything is interfering with my data-collection and judgment. I am the kind of person who delayed drinking alcohol and took notes the first time she drank, to record any degradation in perceptions and prudence. I delayed getting a credit card till I’d supported myself for more than a year, partially to ensure that I had the correct attitude to judging purchases & debt. And here is this thing, clogging and fogging my mind, which I know is a lie, but which does not go away even when I speak its true name and snap three times.

Recursion Dinosaur

RECURSION DINOSAUR

And a poisonous effect of the socialization is that it turns women’s conversations about the problem into yet another self-deprecation exercise.

“I hate myself for hating myself so much”

“oh god you’re awesome, I have worse impostor syndrome than you”

“No way, your self-confidence is admirable”

“I’m meta-shit”

RECURSION DINOSAUR rawwwrrraaaawr

So I seek lessons and tactics on how to become a less irritating person to my friends, and a more useful and capable person going forward. Some assorted thoughts and ideas:

Five ways you can feel as competent as you really are

  1. Everything in Terri’s earlier advice, especially a shield of arrogance.

    I’m not saying you need a thick skin. That’s maybe true, but it won’t help your confidence nearly as much as the ability to say, “screw you; I’m awesome.” Shield of arrogance it is.

    If you are worried about being confidently wrong sometimes, note that a small increase in confident wrong assertions is a small price to pay for a big increase in capability, correct assertions, momentum, and achievement.

  2. Know that sometimes thoughts come from feelings, not the other way around. The “I suck” feeling does not necessarily have a basis, just as good weather and ephemeral physiology can put you on top of the world. Instead of looking for reasons that you feel mildly down or incapable, consider disregarding them, acting, and seeing if your feelings dissipate.
  3. If you feel compelled to go from success to success, you may not be risking enough. As these entrepreneurs do, try assuming that you will fail the first time you try something.
  4. Every endeavor that anyone has ever done is therefore in some sense No Big Deal, that is, doable. Some people make the hard look easy, but experience and effort make for far greater variation than does innate ability — or, at least, isn’t it more useful to assume so? Watch other people succeed, and watch other people fail. Mere life experience helped me out here, but so did Project Runway, where I saw good people trying and failing every single week. And so did seeing these guys, at the meetup, at the job interview, being dumber than me. I just had to keep my eyes open and it happened, because I am smarter than the average bear.
  5. Notice the things you know. A friend of mine recently mentioned to me that she worries that people perceive her as incompetent if she asks more than two questions about a hard problem via her company’s internal IRC channel. I asked her to compare how many questions she asks and answers on IRC each day. She hadn’t even been considering that ratio, because she’d unthinkingly assumed that what she knew must be basic, and blabbing about the stuff she already knows is easy and natural and unremarkable. But upon consideration, she’s a good peer in that informational ecology, seeding more than she leeches.

This is all corollary to my earlier injunction to make irrationality work for you. We are all monkeys, seizing on narratives and any status signals we can find. Don’t keep the default sexist irrational assumptions get in the way of your confidence-competence virtuous circle. Make your own recursion dinosaur of win.

PyCon 2010 Financial Assistance Grant for Women

Gloria W asked us to post this information about a grant available for women who wish to attend PyCon, a major Python convention being held in Atlanta, Georgia in February.

I am happy as hell to announce that this grant exists. The deadline is Dec. 18th, and I strongly encourage you to apply.

http://us.pycon.org/2010/registration/financial-aid/

This conference gets a bit bigger each year, but the organizers make a great effort to keep the small conference feel. It also has many level-100 tutorials, and is both socially and technically welcoming for py-newbies.

Open space sessions (everything from software development to Settlers) and poster sessions happen every night, tutorials run two days prior, and code sprints run for a few days after the conference. It promises to be a great learning and social experience you should not miss.

I am reserving a room and sharing it: http://us.pycon.org/2010/registration/room_sharing/
I’ll room with as many as possible, to cut costs for everyone. Bring a sleeping bag :)

See you there,

Gloria

Two more women-learning-python things

First up, via Nat at O’Reilly Radar, I found a link to Julie Learns Python, where Julie Steele is blogging her experiences learning the programming language.

She’s meeting regularly with a group who are working through an introductory Python book together, and her most recent post describes a recent programming effort, her trials and failures and eventual success, and what she came to realise:

The point is: it’s in me. I wasn’t sure that is was, and now I know—it is.

And what, exactly, is “it� It is the bug. It is the combination of native curiosity and stubbornness that made me play around with the code and take some wild guesses instead of running straight to Google (or choosing to stay within the bounds of the exercise). That might sound like a small thing, but I know it is not. I was determined to make the program do what I wanted it to do, I came up with a few guesses as to how to do that, and I kept trying different things until I succeeded (and then I felt thrilled).

As much as I have to learn, I know now that I really am hooked. And that I’ll get there.

Elsewhere, on Dreamwidth1, Elz, one of the lead programmers on the OTW’s Archive Of Our Own2, decided that there were some gaps in her education that she wanted to fill, and is drawing together a group who will study MIT’s Open Courseware Introduction to Computer Science over the next few months.

The course teaches basic CS concepts using the Python programming language, and doesn’t require any previous programming experience.

The community’s at intro-to-cs.dreamwidth.org. You’ll need a Dreamwidth account to join and post, but anyone’s welcome to follow along without signing up. If you want a DW invite code, let me know in comments — I’ve got a heap still to give away! I’ve signed up, because I’m sure my education’s got a lot of the same gaps.

I love hearing about women teaching themselves programming. Got any other links or stories like that to share?

Notes:

PyArkansas women’s code sprint

Here’s a quick signal boost for an event that GloriaW’s organising as part of the PyArkansas unconference:

Join us for two nights and one day of Python fun and folly at PyArkansas 2009. If you cannot make the day sessions, be sure to join us for at least one night of discussion and geek-walks through the basics, web apps, and back end application development. Your level of experience does not matter if your intent is in the right place. Bring questions, code, ideas, anything related that you wish to share, along with a laptop if you have one. This promises to be a weekend of geeky fun.

Where: Hendrix College, Conway Arkansas, as part of PyArkansas 2009

When: Friday and Saturday nights, Nov 13th and 14th, from 6PM until we get kicked out.

What: We’ll do the bash shell, Python basics, and advanced code sprint work for whomever feels like it.

Whom: Women with anything from zero programming experience, to expert level.

Why: Because it’s great fun.

If you’re interested in learning to program, Python’s a great language for it. If you’re already a Python programmer then this is a fantastic opportunity to share your skills with others and learn a few new tricks too.

A link roundup without a bicycle (2nd October, 2009)

If you have links of interest, please share them in comments here, or if you’re a delicious user, tag them “geekfeminism†to bring them to our attention.

Girly geekdom for girls… only?

Several of the front page posters here are participating in discussions on the Python diversity email list, a list created by Python community member Aahz to discuss diversity problems in the Python programming language community. The initial aim of the list is creating a diversity statement like that of the Dreamwidth community.

Some of the more problematic discussions on the list come down to “this stuff is hard, and hard to talk about, and people get angry and defensive when things are hard.” I don’t want to discuss the tenor or direction of the discussions there in general in this post though, I want to talk about a specific incident. A poster to the list made reference to being “beaten up by a girl” (in a metaphorical sense, what had actually happened was off-list criticism from a woman, not physical violence). A 101 discussion followed, and while it was pretty clear to most people posting that the framing played right into the idea that being beaten by women, physically or in argument, is emasculating, it took a surprisingly long time until it was pointed out, originally by me, eventually also by Aahz in a separate thread, that “girls” is a problematic term. It seems this was a new idea even to some of the more pro-feminist posters.

Now despite the Python diversity list’s innocence, calling women “girls” even in conversations where men are just “men” is not a new problem. As I pointed out to someone on identi.ca, Wikipedia has a prominently placed discussion of how there are few neutral terms for women, especially more informal ones. And the geek feminism groups have run into it ourselves. We have LinuxChix and Girl Geek Dinners. One syllable terms make for snappy names and the “girl geek” alliteration has zing. Reclaiming problematic terminology has a long history, but one of the appeals is that it’s just plain fun, and it’s happened to some extent with the term “geek” as well.

But how much are we playing into the idea that geek feminism is for young women, that once first year CS is gender balanced we’re done here? I’ve seen concerning things. LinuxChix’s name has on occasion drawn young women who explicitly say they only want to interact with other young women. LinuxChix and Girl Geek meetups are often just as inconveniently timed and placed for primary carers as LUGs and gaming groups. When Julie Gibson interviewed me for Ada Lovelace day, she talked about how LinuxChix turned out not to be for her, she’s too far removed in time from having enough geek hours in her life to learn Linux. An older woman—in her late forties, perhaps, well outside the Australian LinuxChix demographic—at our LinuxChix miniconf in 2008 said that she’s careful to avoid becoming a “face” for women in IT: she thinks no teenage girl wants to grow up to be her. It reminded me of Lauredhel’s post at Hoyden About Town, Monica Dux thinks I’m bad for feminism’s image, about the trend to say it’s great to be a proud feminist, as long as you aren’t a marketing problem for the feminism brand. Is it only great to be a woman geek if you’re exactly what the guys on Slashdot are asking for, 18 and single and heterosexual and able to fix your own computers, thus making time for everyone’s two favourite leisure activities, gaming and sex? Of course not. But I’m worried that we’re talking about ourselves as though it is.

This is hard for me. I’m in my twenties. It’s a lot easier for me to think about what my fifteen year old girl geek self would have wanted from geek feminism than what the sixty year old woman I hope to be will want. But we should. What does geek feminism look like, for women who aren’t girls any more and don’t want to be?