Interdisciplinary computer science at Mills College

This is a guest post by Ellen Spertus, who is a professor of computer science at Mills College and a senior research scientist at Google. She has been active in geek feminism since 1991, when she released a widely distributed report on women in computer science. Her many publications include a chapter in She’s Such a Geek, and she has contributed to several open source projects, including the software behind the Systers mailing list and App Inventor. She is perhaps best known, however, for being named Sexiest Geek Alive in 2001.

Everyone knows that the computer science pipeline leaks women. Once a young woman decides not to take computer science courses in high school or in college, it is hard for her to reenter the pipeline, and earning a PhD in computer science after a bachelor’s degree in sociology, for example, might seem impossible, even though an interdisciplinary background might make someone a better computer scientist.

In 1984, department head Lenore Blum (who has continued to be a leader in women and computer science) founded the New Horizons certificate program at Mills for women and men with bachelor’s degrees in other fields. (The graduate programs at Mills are coed.) It consists of eight undergraduate computer science courses and prepares students for either careers in industry or for graduate study in computer science. Certificate students have been admitted to computer science PhD programs at MIT, University of Virginia, University of Washington, and other schools.

The more revolutionary program, however, is the Master of Arts in Interdisciplinary Computer Science (ICS), founded a few years later, which aims to build on students’ past background and not just supplant it with computer science. In addition to more demanding coursework, ICS students need to complete an interdisciplinary thesis that combines computer science with another field, usually their prior one. For example, Erica Rios, who had a background in political activism, developed a technology-enhanced community organizing model to raise consciousness among Latinas over the value of their unpaid household work. Jeri Countryman developed and deployed a computer science curriculum for middle-school girls and went on to work for Techbridge and Iridescent on tech outreach programs for girls. Amy Dewey, whose undergraduate degree was in dance, developed a database to preserve swing dance moves and routines. Whenever a student proposes a thesis topic, I always ask two questions: First, what is the computer science content? Second, what about it couldn’t be done by someone trained only in computer science, like myself? I like to make the point that, rather than being deficient for not having an undergraduate CS background, their diverse experience enables them to accomplish things impossible for a more traditional computer scientist.

Appropriately, the Mills motto is “One destination, many paths”. Students have entered the program through various means and at various stages of life. Constance Conner had partied her way through college, ending up in low-paying dead-end secretarial jobs, where she became the expert on the dedicated word processing machine and early spreadsheets and databases. After a cocktail party conversation with a Mills graduate at age 30, she entered the ICS program part-time. Her first summer internship paid more than twice what she was making at her secretarial job ($15/hour vs. $7/hour). After graduating, she had five industry job interviews and got five offers. She accepted one, which paid well but that she found “uninspiring”. When an ICS alumnus, Allan Miller, remembered an interest she had once expressed in teaching and let her know about a part-time teaching position at College of San Mateo, she jumped at the chance to teach, something she had always wanted to do. In 1995, with the help of another ICS alumna, Dana Bass, she began working full-time at City College of San Francisco, one of the country’s largest community colleges, where she’s taught computer programming to an estimated 400 students/year.

One of Constance’s students, Karina Ivanetich was working in a bike shop after earning a BA in Anthropology and an MA in Sociology from the University of Virginia and pursuing her goal of mountain biking for a few years. She was planning to just learn programming but was so inspired by the material—especially compilers, which Constance frequently mentioned in the introductory programming class—that she entered the ICS program. ICS led to opportunities for her to participate in machine translation research at the University of Pittsburgh and to intern at Google and Wind River, where she implemented an instruction scheduler for their compiler. She is now a Senior Engineer in their compiler team.

Lisa Cowan learned to program as a kid and found it “super fun” but majored in Anthropology at UC Berkeley, not taking any computer science classes but “noodling around” on the pre-web Internet via dial-up. She found work at a start-up and realized she wanted a career in computing, so she entered the ICS program, where she appreciated the small class size and the camaraderie among the students — very different from Berkeley. After Mills, Lisa earned a PhD in computer science at UCSD, applying her anthropology background to studying mobile social media and human-computer interaction.

Alison Huml had planned to major in science at UC Berkeley but got off to a discouraging start. On the first day of her honors chemistry class, she was the only woman in the section. Before she could take a seat, the TA tried to redirect her to the general chemistry class down the hall. Alison stayed in the course but decided to major in English instead, graduating summa cum laude. She worked as a tech writer during the Internet boom but knew that she wouldn’t go far without an understanding of computer science, so she entered the ICS program. She has since co-authored books on the Java programming language and led writing and product management teams at Google, where she is now employed.

Other graduates (and drop-outs) of the program have gone on to work at Apple, Disney, Google, IBM Research, Microsoft, Salesforce, and Splunk, as well as many smaller companies. Marianne Marck is currently Senior VP of Software Engineering for Starbucks. It is tremendously rewarding as a faculty member to help students go from unfulfilling jobs to creative, high-paying ones, even if their starting salary sometimes exceeds mine as a
professor.

My ulterior motive in writing this guest post is to reach Geek Feminism readers and their friends who might be interested in entering the program or applying for our visiting industry faculty position. I can honestly say that feminism is front and center at Mills, a women’s college. Most of the Mills administrators and faculty, including the president, provost, and all of the full-time computer science faculty are women (by happenstance, not design); male faculty are equally committed to women’s advancement. The school is diverse in race, national origin, and sexual orientation, and has a growing awareness of issues faced by transgender and gender non-conforming students and advocacy for their full inclusion. (Editor’s note: Current students at Mills who have questioned administrators about policy have alleged that Mills continues to have an unofficial policy of rejecting women undergraduate applicants whose government-issued identification documents have a male gender marker.) Our biggest problems are (1) finding potential students, since they don’t know that a program like ours exists and (2) keeping them after they get great job offers before finishing the program.

Re-post: How To Exclude Women Without Really Trying

During December and January, Geek Feminism is republishing some of our 2012 posts for the benefit of new and existing readers. This post originally appeared on September 17, 2012.

An earlier version of this post appears on Tim’s blog.

Excluding by inclusion

This year’s “Future of Haskell” discussion, which traditionally ends the annual Haskell Symposium, stumbled into the question of gender equity, via the perennial question of how to increase the number of Haskell programmers. Many programmers (of all genders) find math intimidating and think that the Haskell programming language requires more mathematical skill than other popular languages. In the discussion, Doaitse Swierstra, a professor of computer science at the University of Utrecht, suggested that a good way to increase the number of Haskell programmers would be to recruit one woman for every man in the room. So far, so good: in fact, Prof. Swierstra showed creativity by introducing the problem of gender inequity at this point in the discussion. But then he went on to say that if this goal were achieved, it would make the meetings more “attractive”.

Speaking as someone who attended functional programming conferences for ten years, the field of programming language (PL) research in general is particularly male-dominated even by computer science standards. Also anecdotally, functional programming is an even more male-dominated sub-field within PL research. I would sometimes play a game during conference talks where I would count the number of men with long hair, and the number of women, in the room. There were always more long-haired men than women. I can’t know what someone’s gender is by looking at them (as I well know, since before 2007 most people who looked at me would have thought I counted as one of those women). Still, even with a very generous estimate as to how many people who appeared to be men may actually have been trans women or genderqueer people, the conferences would still have had a gender balance that doesn’t reflect the underlying population, or even the gender balance in computer science or software as a whole. Even the field of mathematics is less male-dominated than functional programming research, so the excuse that PL people are blameless and the numbers result from discouragement of girls learning math at the primary and secondary educational levels does not explain the imbalance.

Prof. Swierstra does get credit for recognizing that there is a problem. And I don’t doubt that by making the comments he made, he intended to encourage the inclusion of women, not exclusion. (You can listen to the relevant part of the discussion yourself—the link goes directly to 32:00 in the video. Apologizes in advance to those who are hard of hearing; I didn’t want to attempt a transcript beyond what I already paraphrased, since I wasn’t totally sure about all of it.)

Even so, Swierstra’s remark provides a great example of how it’s not the intent behind what you say that matters, but rather, the effect that your words have. By following a call for more women in the room with a comment about his opinion of women’s greater attractiveness relative to men, he completely undermined his own attempt to encourage equality, whether or not that was his intent. If you accidentally run a person over with your car, not having intended to hurt them doesn’t make them less dead. And if you make an objectifying comment that tells women their value at an academic conference is as decoration, not having intended to send that message doesn’t make those women feel any more welcome. (While accidental killings are punished less harshly than deliberate ones, the analogy stops holding at that point, since no one wants to punish people for accidentally making sexist comments, only to ask them to reflect and learn so they don’t make such comments in the future.)
Continue reading

Re-post: The Gap and the Wall

During December and January, Geek Feminism is republishing some of our 2012 posts for the benefit of new and existing readers. This post originally appeared on April 1, 2012.

Last week APM’s radio program, Marketplace, did a story with Freakonomics about the patent gap between men and women. Women are responsible for only about 7.5% of patents in the US. That doesn’t surprise me. What is interesting about this story is that the presenter points to research that shows that when women compete with men they tend to perform worse (not just in comparison with men) than when they compete with women only. He casually recommends that companies like Google allow or encourage women to segregate themselves so that they can attain their full potential without being affected by the gender interaction.

Does this sound familiar? This is the case being made for sex segregated education. Women passionately defend girl’s schools and women’s colleges as safe and nurturing spaces for young women to learn and grow, and I am sure that they often are. My concern is, specifically, with engineering. To my knowledge, there is no women’s college in the US which grants a bachelor’s degree in engineering. I know that some women’s colleges cooperate with a neighboring university so that their students can attend engineering classes, but when women students attend classes at a coed school, they are no longer participating in a women only program. Women may perform better when they are segregated, but the truth is that the real world isn’t segregated and I don’t want it to be. Sooner or later men and women are going to have to work together. I would prefer we change the things that contribute to poor performance by women when working in the presence of men instead of removing all the men.

Do you think you would do better work if you could work in Lady-Land without the Male Gaze? If we are open to segregation why not also look at quotas? Both systems are interfering with “supposed” pure merit systems in an effort to even the playing field.

If you accept that the composition of the community affects the performance of the individual members and you are willing to change the composition of the community to allow some members to perform better then why not move the community to parity as opposed to segregation? Why not require that women need to make up a certain percentage of management and the workforce? I would like to see how women perform when they are represented equally at all levels of an organization.

Game of Linkspam (20 November, 2012)

  • Not Getting It: Men, Women, and ‘Stalk Your Friends’ Apps | This Ain’t Livin’: “The gist of the argument is that it’s going to happen anyway and is already happening, so people shouldn’t object to it. Such statements betray an extreme lack of understanding about what it is like to live as a woman or someone read as a woman in this society.”
  • Outreach Program for Women internships | live.gnome.org: “This page contains the general information about the Outreach Program for Women internships, which are available with a number of Free and Open Source Software organizations from January 2 through April 2, 2013. Please read the information about the application process on this page first, and then see organizations’ pages for the project and mentor information.”
  • Newcomer experience and contributor behavior in FOSS communities – Survey: ”The goal of this research is to understand how a person’s experience as a newcomer to a Free/Open Source Software (FOSS) community influences that person’s behavior and contributions within that community. I am interested in hearing from people who are either technical or non-technical contributors, and who have had either positive or negative newcomer experiences.”
  • Gender in the Hidden Curriculum | Sociological Images: “Gender is an important element of the hidden curriculum. Schools reinforce larger cultural messages about gender, including the idea that gender is an essential characteristic for organizing social life.”
  • Nominate a Gift | UltraViolet: “Ever shopped for a gift for a young girl? It seems like the only options out there are super stereotypical little girl–all pink, princess-themed, and sparkly. There are great toys, books and movies out there–gifts that show powerful, healthy images of girls and women, but it can be really hard to find them. That’s why we’re asking UltraViolet members to help us put together the first ever UltraViolet Holiday Gift Guide: A 21st Century Guide to Non-sexist Holiday Shopping. Do you know of an empowering toy, game, DVD, book, or other gift to recommend for the guide? Submit it here.”
  • The academic jungle: ecosystem modelling reveals why women are driven out of research | Oikos – Wiley Online Library: A little old (June 2012), but it looks like we missed it when it was new. “Two key differences between men and women are the larger role that women play in childcare and house work in most families, and the narrower window for female fertility. Here we explore how these two factors affect research output by applying a common ecological model to research performance, incorporating part-time work and the duration of career prior to the onset of part-time work. … We use the model to provide insight into how women (and men) can pursue a career in academia while working part-time and devoting substantial time to their family…. We also identify how university leaders can enable part-time academics to flourish rather than flounder. ”
  • Am I right ladies | sailorswayze: Comic on being a girl who’s into comics
  • Responses to a sexist rant from Tony Harris
    • And then they came for the cosplayers… | The Beat: “The truth is at comic-cons I’ve seen plenty of men flapping around with their franks and beans hanging out of their tights. Does anyone question whether they are nerds or comics readers or have a pull list or are just trying to get their rocks off by showing their rocks off?”
    • Why, Tony Harris? | The Teresa Jusino Experience: “Suddenly you’re mind-readers and you know for a FACT that if a girl is hot (or even “quasi-hot”, whatever the fuck that means) she couldn’t POSSIBLY find you attractive, or like what you like, or think you’re a cool person, or want to be nice to you because she actually WANTS to be, not just because she wants attention. That shit, like, never happens. Because all hot people are shallow. Shallow is kind of defined by judging people based on appearances without looking deeper (not deep, hence shallow)….aren’t you being just a mite shallow RIGHT NOW, YOU HYPOCRITE?!”
    • An Open Letter to Tony “Effing” Harris: Cosplay Misconceptions and Misogyny |  NerdCaliber: “In fact the only people I have ever come in contact with who had NO idea about the character they were portraying and wearing skimpy little sexy outfits were professional models hired by corporations, as well as indie companies, to try and drive traffic to their sites and booths, and at least they are very up front about this. Much like you when you say “Sorry, while you Cos”Play” I’m actually at work. Thats my office,” well, so are they.”

You can suggest links for future linkspams in comments here, or by using the “geekfeminism” tag on delicious 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.

How To Exclude Women Without Really Trying

An earlier version of this post appears on Tim’s blog.

Excluding by inclusion

This year’s “Future of Haskell” discussion, which traditionally ends the annual Haskell Symposium, stumbled into the question of gender equity, via the perennial question of how to increase the number of Haskell programmers. Many programmers (of all genders) find math intimidating and think that the Haskell programming language requires more mathematical skill than other popular languages. In the discussion, Doaitse Swierstra, a professor of computer science at the University of Utrecht, suggested that a good way to increase the number of Haskell programmers would be to recruit one woman for every man in the room. So far, so good: in fact, Prof. Swierstra showed creativity by introducing the problem of gender inequity at this point in the discussion. But then he went on to say that if this goal were achieved, it would make the meetings more “attractive”.

Speaking as someone who attended functional programming conferences for ten years, the field of programming language (PL) research in general is particularly male-dominated even by computer science standards. Also anecdotally, functional programming is an even more male-dominated sub-field within PL research. I would sometimes play a game during conference talks where I would count the number of men with long hair, and the number of women, in the room. There were always more long-haired men than women. I can’t know what someone’s gender is by looking at them (as I well know, since before 2007 most people who looked at me would have thought I counted as one of those women). Still, even with a very generous estimate as to how many people who appeared to be men may actually have been trans women or genderqueer people, the conferences would still have had a gender balance that doesn’t reflect the underlying population, or even the gender balance in computer science or software as a whole. Even the field of mathematics is less male-dominated than functional programming research, so the excuse that PL people are blameless and the numbers result from discouragement of girls learning math at the primary and secondary educational levels does not explain the imbalance.

Prof. Swierstra does get credit for recognizing that there is a problem. And I don’t doubt that by making the comments he made, he intended to encourage the inclusion of women, not exclusion. (You can listen to the relevant part of the discussion yourself—the link goes directly to 32:00 in the video. Apologizes in advance to those who are hard of hearing; I didn’t want to attempt a transcript beyond what I already paraphrased, since I wasn’t totally sure about all of it.)

Even so, Swierstra’s remark provides a great example of how it’s not the intent behind what you say that matters, but rather, the effect that your words have. By following a call for more women in the room with a comment about his opinion of women’s greater attractiveness relative to men, he completely undermined his own attempt to encourage equality, whether or not that was his intent. If you accidentally run a person over with your car, not having intended to hurt them doesn’t make them less dead. And if you make an objectifying comment that tells women their value at an academic conference is as decoration, not having intended to send that message doesn’t make those women feel any more welcome. (While accidental killings are punished less harshly than deliberate ones, the analogy stops holding at that point, since no one wants to punish people for accidentally making sexist comments, only to ask them to reflect and learn so they don’t make such comments in the future.)
Continue reading

Quick hit: BlackGirlsCODE’s 2012 Summer of Code

Signal boosting this in a separate post rather than a linkspam, since the fundraising deadline is soon:

“A child educated only at school is an uneducated child”

Today there is a huge epidemic taking place across America. In low-income neighborhoods across the country thousands of children of color are not being offered high-quality education. There is a digital divide separating our country and our children are stuck in the middle. It is said by 2015 (3 years from now) 80% of new jobs will require a technical degree:

IT’S TIME TO PREPARE OUR CHILDREN FOR THE FUTURE!

On June 17th, 2012, BlackGirlsCODE (BGC) will launch our Summer of CODE Campaign. Our goal is to teach computer programming to more than 300 boys and girls from underrepresented communities, in 90 days, in more than 7 cities across the United States. We are launching this BGC Summer of CODE Campaign to emphasize the importance of technology education and achievement for our next generation of citizens. We are especially focused on giving girls from African American, Latino, and Native American communities the opportunity to learn valuable tech skills and to plant a seed that may “Change the Face” of the future of tech!

They are aiming to raise $18 500. As of now, with 42 hours left in the fundraising campaign, they have raised $9 915.

Donate to the Summer of CODE via Indiegogo.

How Science-Geek Culture Discourages Female Science-Geeks

The majority of commenters agreed that women could not excel in math, due to biology and evolution. In Slashdot Science, the commenters were mostly grown men with science degrees. I was a nineteen-year-old girl with only a high school diploma and a love of science. They were more educated than me, and I wanted to learn from them.

Whenever I encountered a Slashdot article about science and gender, I read the comments, trying to learn more about myself. I felt sick to my stomach each time. I used mental gymnastics to reconcile my love of science with science-credentialed, male elders proclaiming with certainty that female brains were unfit for math and science. They were the experts, after all. I was only a young, female science student.

Math and science are hard. I worried that when I found something challenging in math or science, it was because I was a girl and lacked the mental machinery to understand it. (I thought of myself as a “girl”, because I was still technically a teenager.) I accepted evolution. Many times, I had panick attacks over the possibility that I had innate, hard-wired mental limitations. Before graduating with a science degree, I was unproven. There was no proof that I could be a science person, but I already saw mountains of scientific evidence suggesting that I could not be a science person. Unproven male geeks don’t struggle with science research telling them that they can’t do science when they start to try.

Only after I graduated with a science degree did I feel I had the authority to challenge Slashdotters. Only after I graduated did I feel like a real adult. After I graduated, I was livid, knowing that Slashdot commenters were merely conjecturing casually about my mental limitations, unwittingly crushing the self-esteem of my younger geek self.

Sexism on the Internet—especially discussion websites about science, computers, and math—are like guided missiles targeting and damaging the self-esteem of young female geeks. Female geeks are most likely to see male geeks discuss our alleged mental inferiority in math and science. Non-geek women are unlikely to see these comments, because they are not the ones reading Slashdot, Digg, reddit, Hacker News, techcrunch, or Ars Technica.

For many male geeks, conjecturing about women’s mental and career potential is just an intellectual exercise, and stating personal and scientific hypotheses about women as if they are scientific facts is harmless. For us, it is personal and disturbing.

Nurturing a girl scientist

This is an Ask a Geek Feminist question for our readers:

I’m a English-major Geek. You probably knew a dozen or two like me in college. You want conversations on Shakespeare, grammar, early science fiction, or a Fruedian analysis of The Hobbit, I’m your woman. I’m not science or math-phobic, I’m really not. But for the past twenty years, I’ve been getting most of my science from NOVA, science fiction novels, and pizza-and-beer lectures from friends. (I get my math from Vi Hart videos.)

My spouse is similarly situated.

Now, we have a precocious daughter who is exceptionally science-y. Has been since she became fascinated with early hominid evolution when she was three. She once interpreted a Science Museum docent to explain, patiently, that the skeleton he was showing was Homo ergaster, not a Neanderthal. In fact, it was Turkana Boy. She was four and she was right. (He’d grabbed the wrong photo.)

I’ve been scrambling ever since I figured out that I’ve likely got a scientist on my hands. Turns out that Women in Science is THING! (I knew that before but it wasn’t really immediately relevant to my life until that moment.) So I’ve done what I can: she watches NOVA and ViHart with me, I read the Scientific America blog, we practically live at the local Science Museum and Natural History Museums. I try to explain the science of what I’m doing at any moment, as well as I understand it.

I even discovered that most of the scientists doing studies in pediatric brain development are women. So I’ve signed her up for every “brain study” in the city so she can see female scientists at work. (At age 6, she’s had about a dozen MRIs.)

But I feel like, as an English Major Geek, I should be doing something more. Or different. Thoughts? Suggestions? Resources?

What do you think?

The Gap and the Wall

Last week APM’s radio program, Marketplace, did a story with Freakonomics about the patent gap between men and women. Women are responsible for only about 7.5% of patents in the US. That doesn’t surprise me. What is interesting about this story is that the presenter points to research that shows that when women compete with men they tend to perform worse (not just in comparison with men) than when they compete with women only. He casually recommends that companies like Google allow or encourage women to segregate themselves so that they can attain their full potential without being affected by the gender interaction.

Does this sound familiar? This is the case being made for sex segregated education. Women passionately defend girl’s schools and women’s colleges as safe and nurturing spaces for young women to learn and grow, and I am sure that they often are. My concern is, specifically, with engineering. To my knowledge, there is no women’s college in the US which grants a bachelor’s degree in engineering. I know that some women’s colleges cooperate with a neighboring university so that their students can attend engineering classes, but when women students attend classes at a coed school, they are no longer participating in a women only program. Women may perform better when they are segregated, but the truth is that the real world isn’t segregated and I don’t want it to be. Sooner or later men and women are going to have to work together. I would prefer we change the things that contribute to poor performance by women when working in the presence of men instead of removing all the men.

Do you think you would do better work if you could work in Lady-Land without the Male Gaze? If we are open to segregation why not also look at quotas? Both systems are interfering with “supposed” pure merit systems in an effort to even the playing field.

If you accept that the composition of the community affects the performance of the individual members and you are willing to change the composition of the community to allow some members to perform better then why not move the community to parity as opposed to segregation? Why not require that women need to make up a certain percentage of management and the workforce? I would like to see how women perform when they are represented equally at all levels of an organization.

<body> <img> – the anxiety of learning and how I am beating it

Beating learn-to-program anxiety with good gamification and courses

I have anxiety about learning technical skills. I wrote about this a little while back. But now I know more about how I learn, and, in bits and snatches, I am gaining proficiency and confidence. Here’s a summary of my journey over the last several months with learning more programming skills (in this case, mostly in Python), with links to some resources in case you’re like me.

I get anxious when learning skills that I think I should already know; I feel behind and guilty. Structure, little rewards, friendly sociability, and encouragement from other women help tremendously. Tedra Osell writes about this in the context of writer’s block, and FlyLady and Cheryl Mendelson’s Home Comforts speak to that problem in learning to keep a comfortable home; the people and resources I mention (CodeLesson, OpenHatch’s Boston Python Workshop for women and their friends, CodingBat, and the Python Challenge) provide many of the stimuli I need. Also, my anxiety spikes if I think I am supposed to compare my speed or quality of work with others (hence my post’s title), but cools down if I see evidence that someone else wants to patiently help me. These resources helped me learn without pushing my “argh everyone’s better than me” buttons.

So, first: CodeLesson. The vintage and handmade store Etsy ran a free four-week online course in HTML, CSS, JavaScript, and the Etsy API. Hundreds of people signed up; I got on the waitlist, and eventually did three of the weeks in September and October. (I then had a big crunch week at work and didn’t finish, but I intend to finish that last week’s work anyway, to learn animation and pagination in jQuery.) It was exactly what I wanted — well-written tutorials and exercises to get me over the initial hump. I now know a little CSS, JavaScript, and jQuery, which is infinity percent more than I knew before. I had lots of fist-pump “Yay, I made it work!” moments. And the instructor’s praise of my work helped; I’m a social animal, and recognition and praise from instructors helps reassure me that I’m on the right track.

Thanks to Etsy for the free class. And I liked the CodeLesson interface and infrastructure enough that I may pay for additional CodeLesson classes, or get my organization to follow Etsy’s lead and offer classes through them to increase our users’ skills.

A couple months later, I had a chance to attend OpenHatch’s intro-to-Python workshop specifically meant for women and their friends. I’d read about these before, on GeekFeminism and elsewhere, and it sounded like it would fit how I learn as well as help me plan to hold similar events in my community. So, on a Friday in December, I took the bus from New York City to Boston.

An instructor looks at a student's laptop at the Boston Python Workshop

An instructor looks at a student's laptop at the Boston Python Workshop

It’s a good thing that the Friday night prep part was three hours and that I already knew a bunch of stuff that other people were new to (familiarity with the command line & the Python prompt, etc.) since I was an hour late! It was good to fix the syntax-y bits in my mind. The CodingBat exercises were great practice and I got a big triumphant fist-raised feeling when all those unit tests passed.

In between sessions, I chatted with some of the people who run the program. It sounds like each individual run of it costs about $300 for lunch for everyone and that’s practically it, since they use volunteers and the venue time is donated (and then like $10 total for pens/sticky nametags/laser-printed “here’s the workshop” signs/etc.). That’s practically out-of-pocket for a tech community, and they get grants. So it’s totally replicable. I’ve been reminded that it’s important to treat these kinds of workshops more like a community introduction than as standalone events; local user groups and communities should be the teachers, and email blasts and encouragement should integrate participants into their local hobbyist groups.

Saturday morning’s lecture included some review of stuff I knew, but it went fast enough that I was still learning most of the time — like, how to ask for the nth character in a string, or how for-loops quite work, some subtleties of scope, etc.

Then the project bits — the teachers and their presentations weren’t quite as polished as Jessica McKellar, who had led the earlier parts of the workshop. But I still learned a lot and got to make cool things happen using, say, the Twitter API, and that was very neat. As designed, the workshop led me through small, basic exercises first (the equivalent of finger exercises in piano), then showed off visually satisfying things we could do with Python and its ecosystem.

Aside from tiny minor delays, the workshop basically ran like a Swiss watch the whole time. I was impressed. It takes a lot of preparation, skill, and practice to make an event like that go so smoothly and teach so many people; congrats to the workshop volunteers! And I’m glad I went, learned and remembered Python, and got more confidence to attempt projects.  On a community management level, I’m also massively grateful that I’ve seen firsthand an example of how we can construct and maintain these parts of the pipeline, to help more girls and women get into STEM.

The workshop so excited me that I then did all the Python exercises on CodingBat, and started Python Challenge (I’m at step 4 or 5 right now). They’re complementary. They both gamify learning, and you don’t have to look at how other people are doing, and they both have somewhat granular ways of kindly telling you when you’ve done something slightly wrong. With CodingBat it’s the unit tests, which go from red to green when you cover another edge case. In Python Challenge, for example, at one point I went to a URL where I had transformed the filename from the previous URL per a transformation hinted at in the challenge. The URL had ended in .html, and after the decryption, it ended in the extension (making this up to avoid spoilers) “.ywnb”. At that address was a text file that the server signalled you should download. I downloaded and opened it and it just said, “have you ever heard of .ywnb files?!” or something like that, implying basically that I shouldn’t have transformed the file extension, just the filename. So, it didn’t just fail, it gave me a nicely furnished dead end, signalling kindly but playfully that I had done something understandably wrong.

Screenshot of two progress graphs from CodingBat

Progress graphs from CodingBat, showing my attempts to solve two problems; the green portions are unit tests that passed, and the red and pink portions are unit tests failing. The exercise "String-2 end_other" took me a while, but I got it.

There’s probably some game design term for this kind of compassionate railroading, but it makes me think of the caring side of the caring-to-combative community spectrum. And in both cases I got that feeling of being nurtured by someone who cared, even if that someone else is Nick Parlante (CodingBat’s author), years ago and a continent away.

Also, CodingBat is pretty clear about how you solve any given problem (declaring that this set of problems is about lists and only 1 layer of for-loops, or what have you), whereas in the Python Challenge you have a puzzle that you know you can solve with Python but that you can hit a bunch of different ways. If you want an experience with arguably more realistic exercises, the author of CodingBat also made the Google intro to Python, which includes exercises along the lines of “munge the semistructured data in this file with these guidelines.” I intend on doing that this year.

Python Challenge logo

Python Challenge is mysterious, yet friendly.

It was good to have my spouse Leonard nearby to help me when I was working on the Python Challenge, to (for example) help see that I had called a variable inconsistently, to notice that I couldn’t import a file as a module because I’d named it “1″ instead of something starting with a letter, to remind me how to learn of (“dir(filename)”) and then use (“filename.function”) the functions within it, to tell me about string.replace, and to tell me how to use the interactive prompt properly to investigate how you call a method on an object of whatever type. But I did nearly all the work myself. And as of today I feel a lot more comfortable using for-loops, knowing what data structures to use for a problem (I decided to use a dictionary datatype the other day! And it worked! So exciting!), getting stuff in and out of dictionaries, and generally thinking “I can learn this!” Data structures and algorithms had felt mystifying to me. Now data structures no longer do. I remember the moment in Python challenge when I thought, “I’ll use a dictionary!” and I was right! It’s great.

CodeLesson, CodingBat, the Python Challenge, Leonard available for occasional consultation, and the Boston workshop are the dance partners I needed.

I’ve just begun CodeAcademy and stalled (as with all the rest of my learning-to-code endeavors) due to lack of time, as my job is pretty absorbing right now. (Worth a skim: Scott Gray’s thoughts on CodeAcademy.) I also haven’t tried Philip Guo’s online Python tutor which may suit me better since I’m more interested in Python than JavaScript right now. But I thought it might help others to talk about my journey so far.