Tag Archives: programming

Restore meritocracy in CS using an obscure functional language.

Students who did not have the privilege of hacking since they were young are at a disadvantage in Computer Science (CS). However, CS departments can teach introductory programming using an obscure functional programming language to limit the young hackers’ advantage. Most students with prior coding experience learned a procedural programming paradigm, so forcing all students to struggle with learning a new, functional language helps restore meritocracy.

In the blog comments, Kite recounts hir experience with an intro CS course:

While I think my course was pretty sucky, one good thing it did was to knock the wind out of the sails of those guys who’d been programming for ages – by starting us on an obscure functional programming language called Miranda (oh did it ever raise a whole lotta grumbles from the boasters). Only after that did we do procedural stuff like C, and then onto C++. Mind you, the whole course seemed determined to be as academic and un-real-world as possible, so C++ was probably the most career-relevant thing we got out of it! […]

Continue reading

If you were hacking since age 8, it means you were privileged.

This post was originally published at Restructure!

Often, computer geeks who started programming at a young age brag about it, as it is a source of geeky prestige. However, most computer geeks are oblivious to the fact that your parents being able to afford a computer back in the 1980s is a product of class privilege, not your innate geekiness. Additionally, the child’s gender affects how much the parents are willing to financially invest in the child’s computer education. If parents in the 1980s think that it is unlikely their eight-year-old daughter will have a career in technology, then purchasing a computer may seem like a frivolous expense.

Because of systemic racism, class differences correlate with racial demographics. In the Racialicious post Gaming Masculinity, Latoya quotes a researcher’s exchange with an African American male computer science (CS) undergraduate:

“Me and some of my black friends were talking about the other guys in CS. Some of them have been programming since they were eight. We can’t compete with that. Now, the only thing that I have been doing since I was eight is playing basketball. I would own them on the court. I mean it wouldn’t be fair, they would just stand there and I would dominate. It is sort of like that in CS.”
— Undergraduate CS Major

Those “other guys” in CS are those white, male geeks who brag in CS newsgroups about hacking away at their Commodore 64s as young children, where successive posters reveal younger and younger ages in order to trump the previous poster. This disgusting flaunting of privilege completely demoralizes those of us who gained computer access only recently. However, CS departments—which tend to be dominated by even more privileged computer geeks of an earlier era when computers were even rarer—also assume that early computer adoption is a meritocratic measure of innate interest and ability.

Continue reading

Antipodes robotics team

Team Antipodes is a team of three girls “headquartered in Pacifica, California, USA, but dedicated to collaboration with similar teams from around the globe.” They competed in the 2009 FIRST Lego League, placing third in their regional championships, and have extensively documented their work in the form of notes, video and CAD models to encourage others to experiment and compete.

Team antipodes portrait

Team antipodes portrait

We caught up with Violet, Emma, Kjersti and their coach, Ken, for an interview via email.

GF: When and how did you take an interest in robotics?

Violet: Ever since I was little, my dad has been exposing me to all sorts of technology. One of these things was robots. Robots fascinated me because they had a mind of their own. I wanted to be a part of making these machines and learn more about them.

Emma: The year before we started the team Antipodes my dad was doing a project with it. At first I didn’t want to do it but one day I got bored and started helping him out with the programming. Now I’m here.

Kjersti: The beginning of my 8th grade year. My friend’s Dad started a team, and he invited me to join it because he found out about robotics through my mom. It seemed like a cool thing to do, so I tried it out. This year was way cooler than my first year.

GF: How did the three of you come together to form Team Antipodes, and compete in tournaments?

Violet: Last year, our coach went to an event at NASA Ames and saw one of the FIRST robots. He got interested and was inspired to start a team. At first, it was through 4-H, which both of his daughters are involved in. Two of our team members, Kjersti and Emma, were on the team that year. It was not as successful as they had hoped. They had many people who were not very dedicated or interested.  He gave Kjersti and Emma the choice to craft this year’s team, and they decided to shrink the team and only include people who were extremely interested  in robotics, so they invited me onto the team.

Emma: Kjersti and I did it the year before and Violet was our friend who was interested in it also. We competed really well. We are all really good friends and helped each other out.

Kjersti: Emma and I were on the original team in 8th grade, but we split off from that and decided to form our own team independently. Violet was our friend who is super smart and seemed interested, so we recruited her. We felt satisfied with just the three of us, so  we stopped there.

GF: What have been the most enjoyable, and most difficult, times in the
team’s history?

Violet: The most enjoyable are the meetings, because there are always jokes going around, and the car rides back from the tournaments are always fun because the stress is gone. Seeing the robot, named TOR, do well in the competition is always rewarding, too. Though I have to say, our recent trip to Istanbul was one of the most memorable things in the whole season. The most difficult times are when it is the night before one of our competitions and things aren’t working like we had hoped.  Also when the robot is having a hard time at the competition and we don’t know why.

Emma: The most enjoyable have been meeting new people at the tournaments and hanging out. The most difficult are definitely when something is not working right and we don’t know how to fix it and also the long, early car rides to tournaments.

Kjersti: Some of the most enjoyable times have been the competitions. We are there, having fun with each other and at a point where there really isn’t a whole lot we can do the change what we have and we have to be happy. So we are. Some of the most difficult have been the night before a competition. We usually sleep over at our coach’s house the night before (his daughter is on the team) and the whole night we are stressing about our robot and just totally freaking out. It’s probably when we are the most stressed, and there have been break downs.

GF: How do you feel about competing internationally in the Open European

Violet: We were thrilled when we found out. We fundraised so much and worked hard to go. When we got there, we were overwhelmed. We got to meet kids from all over the world and compete with them. It was a chance that few get to have and we were lucky enough to get.

Emma: I’m a little nervous but also very excited, it should be amazing to meet people from all over the world and see how their competition is run.

Kjersti: Totally amazed, honestly. Our goal at the first competition was to not get dead last. We accomplished that, but we never dreamed we would make it to an international tournament. We were trying not to be too nervous or stress about the competition, because we were there to have fun.

GF: What do you do when you aren’t making robots?

Violet: I do a lot of plays. In fact during the season, I was in two different shows.  Kjersti plays the saxophone and is in the marching band at our high school. Kjersti and I are also in Girl Scouts and a youth group together. Emma is involved with 4-H, does Cross Country, and horseback riding.

Emma: I run cross country, I do mock trial, I’m in a 4-H club, and I ride horses three days a week.

Kjersti: I’m in my local high school, Terra Nova’s marching band. It takes up a lot of time and practice, but I love it. I also love swimming and watching movies, but most of my time is taken up by school work.

Ken: Violet forgot to mention that she also does mock trial with Emma.

GF: You’ve decided to take a very open and collaborative approach to your work, as evidenced by the detailed information on your website (notes, designs, video and so on). How and why did you choose this approach?

Violet: We want to help other teams that need an idea of how to get started and let people see how we came up with our ideas.

Kjersti: It just sort of happened, but with a lot of pushing from our coach. He’s an architect and knows that it’s important to keep track of everything we do, and after a little bit we discovered that it was really helpful, especially since we weren’t always able to meet at the same times. It became an important tool to keep up with each other.

Ken: The reason we share our work and designs with our competitors, and anyone with access to the internet, is manyfold:

First, it’s a general principal of our league (FIRST – For Inspiration and Recognition of Science and Technology) to be gracious competitors. Second, we’ve been recipients of openness and help from older teams (most notably the LegoGuards and TechnoGuards), and it was immediately apparent this was the right thing to do. Third, I’ve been impressed by the many accounts of the long-term benefits of 1980’s Silicon Valley openness vs. Boston Area secretiveness. Fourth, it’s consistent with the whole idea of Antipodes (which means location on the opposite side of the globe) to push the envelope of engineering collaboration with students as far away as possible (Australians). Fifth, it took countless hours of web surfing to get started as a new team.  I realized it would be a valuable resource to have a single location to learn as many lessons as possible from our experience, down to the invaluable detail of remembering to change your tires the week before the tournament and to adjust your programming to account for the better traction.

Matt, as the team’s coach, I didn’t give the team much choice about this.  I just told them that openness is what we do, and they never questioned it.  Although, I know they can tell the difference from most of their competitors that don’t show their designs.

GF: What is your creative process like when you work together? How do your projects begin, develop and get completed through collaboration?

Violet: When we run into a problem, or just need to figure how to do something, usually someone suggests a possible solution. Then we start questioning it and trying to figure out every single detail of it. Since there are a few very visual people on the team, this usually involves a bunch of drawings and sketches. If we decide the solution is not going to work, someone else suggests something else and we start over. Once we agree on a solution we start working on it. Usually we divvy up the work and assign different tasks to different people. If someone runs into a problem with their task, they will ask for advice from the rest of the team. Eventually, the final work will be achieved whether it is a solution to a minor problem or a whole project.

Kjersti: We start with the problem, and basically brainstorm about what needs to happen. There’s a lot of trial and error that goes on, and we try each other’s ideas, until we find the best one and go with it.

Ken: I’d like to add that for any major design issue, we always break out the white board. The girls sit together on the couch as comfortably relaxed as possible and one of them volunteers to write the problems and suggestions out on the board in front of the others.

GF: Do you have any words of advice for other girls who are interested in robotics, as to how to get started?

Violet: Don’t let other people hold you down. Your friends may tell you that you are wasting your time, or someone may tell you that you can’t do it. You have to learn to not listen to these people.   Find a robotics team of some sort, or start your own. It is really a great experience and you learn a ton. FIRST has programs for all ages, and you can contact them about finding a team near you.

Kjersti: I’d say go for it! It’s a lot of work but it pays off in the end. There are more opportunities than you might think to get involved in robotics, so you can ask around, or go to the FLL website to get more information.

The team gave a Google Tech Talk in Mountain View in June, where they discussed their team and activities, and gave a demonstration of their robot:

Having competed in the European Championship in Istanbul, they are seeking donations to help cover their travel expenses. Due to the eruption of Eyjafjallajökull, the trip was much more expensive than anticipated and as of this writing they are about $4000 short. If you wish to support them, you can do so on their website.

Hairy-legged bra-burning linkspam (17th June, 2010)

  • Open World Forum 2010 (Sep 30 to Oct 1, Paris) is having a Diversity Summit: Why women matter? relating to women in Free/Open Source Software. There’s an associated poll to gather data about women in FLOSS that anyone involved in FLOSS might be interested in taking.
  • Andrea Phillips is super-excited about Caitlin Burns and Jurassic Park Slope events.
  • Making games is hard: On the barriers that women face: … as someone whose life has been consumed by learning the ins and outs of game development for the past three years, I have to say that making a game is pretty damn hard. And I think that the complicated process of game development itself can be a barrier to women entering the field
  • Discussing sexism in geek communities is more important than discussing gender imbalance: Restructure! writes Ironically, when some female geeks use the capitalist discourse of increasing female representation in STEM fields as a structural strategy for reducing sexism and improving our personal autonomy / right to pursue our career of choice, many male geeks misunderstand these efforts as being anti-choice.
  • In light of Restructure!’s post, see Eric Ries, Why diversity matters (the meritocracy business): That’s why I care a lot about diversity: not for its own sake, but because it is a source of strength for teams that have it, and a symptom of dysfunction for those that don’t.
  • Women and Technology and Myth: Adriana Gardella interviews Cindy Padnos, a venture capitalist. The article is a little bit on the "suck it up, buttercup" end of the spectrum, but has good points about critical mass and homophily.
  • Jessa Crispin has given up reading bad books about women: I had to give up on a pretty good book because halfway through I did a little equation: what was the probability that the two women in the book would turn out to be anything other than gold diggers and sluts. Not great! So: gone.
  • Isis the Scientist has more on John Tierney, bonus humorous pictures!
  • What I got wrong about women in science: Maggie Koerth-Baker writes Several hours after I hit “publish”, I realized that I’d managed to put together a panel on diversity made up of nothing but white people.
  • Her blogging about social justice doesn’t make Renee your on-tap free expert on womanism, anti-racism or social justice.

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. Please note that we tend to stick to publishing recent links (from the last month or so).

Thanks to everyone who suggested links in comments and on delicious.

The linkspam-whore dichotomy (17th May, 2010)

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. Please note that we tend to stick to publishing recent links (from the last month or so).

Thanks to everyone who suggested links in comments and on delicious.

One year ago today: what have your formative geek experiences in the past year been?

Girl With Computer (Ashley McClelland) has a post titled “One year ago today — Learning to Embrace the Tech Community”.

One year ago today, I also had a very pivotal experience. I attended my first technical conference— an unconference, a barcamp — at the Rochester Institute of Technology… up until that point, I had only ever seen HTML and CSS (sparingly.) I was familiar with HTML and in-line styles. And I knew how to use things like myspace and facebook. My background was exclusively education and English (literature and writing.) I was interested in programming, but I felt a severe barrier to entry: I thought it was too technical for me…

That day, despite my intimidation, I was inspired by the things I saw. I attended an excellent talk on Haskell during which the presenter admitted he had very little experience with the language… I saw another talk on the OLPC/XO by an awesome woman, Karlie Robinson, who detailed the effort and reached out to the tech community to engage their skills towards a cause for education. I could relate. I even brought myself to go up to her after the talk and give her my e-mail address, given my experience in education, thinking maybe I could help. For the first time, I thought, maybe there is something worthwhile that I can contribute to the tech community.

I started programming one year ago today, because I was inspired by the technical talks I saw that day, and because I realized I am not any different than any other extraordinary geek…

I gave a talk on learning programming today at BarcampRoc 2010… I no longer feel limited by what I don’t know. Because I know I can learn. I didn’t know this small, and seemingly obvious bit of knowledge, one year ago today.

Today, I know.

What formative geek experiences have you had during the past year? Post your stories in the comments.

FLOSS inclusivity: pragmatic, voluntary, empowering, joyous

Lucy Connor’s “Diversity at what cost?” and Benjamin Otte’s blog post on equality got me thinking about the backlash against diversity and outreach initiatives in open source. Specifically, I sometimes see arguments that inclusivity

  • is a slippery slope into coercion and quotas
  • should not be a FLOSS value, or
  • competes with the core mission of his/her software project.

In response to Otte’s thoughts on whether the principle “all men are created equal” stands in opposition to core GNOME and Fedora goals, I said in part:

The words “equality” and “inclusive” can be easy to misinterpret. Advocates often use them as a softer way of saying “don’t be sexist/racist/etc.” and “let’s give due consideration to people we’re inadvertently leaving out.” Perhaps [critics] are misreading this suggestion as greed for market share, or conflating cowardice with the intention and practice of thoughtful inclusivity.

Yes, it is an important principle that all people deserve to be treated equally *by the law*, and as an ideal to reach toward, it’s laudable. However, it’s a straw-man argument to suggest that advocates for equality and inclusion propose that all seven billion people’s opinions should have equal relevance in every endeavor and choice.

Every organization has a specific mission, such as “change the government’s policies to improve the environment” or “maintain an excellent Linux distribution with cutting-edge innovations.” This is its “value proposition,” in US English. It embodies some of its core values. The Fedora project is indeed facing a tension between its value proposition and one facet of inclusivity — suitability for novice users. But there are many other aspects to inclusivity and an interest in equality, such as accessibility, nonsexist language, university outreach, and documentation. Don’t throw the baby out with the bathwater.

You may also be interested in http://geekfeminism.org/2009/11/29/questioning-the-merit-of-meritocracy/ for thoughts on meritocracy in FLOSS.

… If you simply find any good product unstylish as soon as a certain proportion of the population starts to benefit from it, that strikes me as needlessly snobbish, and implies a misanthropy that will permanently be opposed to even the least controversial inclusivity initiatives.

We linkspammed Connor’s piece a few days ago, and commenter koipond noted:

I hear the sentiment, but it’s kind of missing the point. No one is saying “Diversity at all costs” where they want to force people in who don’t want to be there. It’s more a case of trying to break down the barriers that prevent people who might be interested but see a toxic morass and refuse to swim in the pool.

My comment was along similar lines:

When I read http://geekfeminism.org/ or the http://geekfeminism.wikia.com wiki, or listen to the women on the Systers mailing list, I don’t hear a general and undifferentiated “WE MUST GET MORE WOMEN INTO FLOSS” or tech agitprop agenda. I see lots of initiatives to help underrepresented groups — African-Americans, women, people from developing countries — get in on the joy and empowerment of hacking.

I think there is a separate argument to be made that everyone, of every gender and from every socioeconomic, ability and ethnic background, should be generally technically literate, which means being able to code a “hello world” in some decent language and feeling empowered to modify their computing environment a little. To extend the analogy, I know it ruined your [Connor’s] enjoyment of Model UN when the teachers forced everyone to participate, but you’re not against the goal of everyone learning a little about how international politics works.

And because these sexist behaviors and attitudes keeping women out of high-status and high-paying professions are just now starting to fade, it’s important to take an extra look at seemingly innocuous traditional attitudes to make sure they don’t conceal yet more barriers and discouragement. As Kirrily Robert pointed out in her OSCON keynote, the community as a whole grows organically and benefits greatly from (voluntary, of course) women’s participation:


Like you, these advocates like helping people. Check out http://gnomejournal.org/article/88/the-un-scary-screwdriver for an example of the kind of noncoercive, entirely opt-in outreach that most advocates, well, advocate.

As I noted to Connor: Sure, coding, and open source work, are not really intrinsically appealing to lots of people. But because there are so very many external factors keeping interested girls and women away from tech careers and open source, I’m comfortable prioritizing breaking those down, so that maybe in fifty years people’s intrinsic interests will shine naturally through. And then we’ll talk and see what interesting patterns show up.

A linkspam in every home (23rd December, 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. Please note that we tend to stick to publishing recent links (from the last month or so).

Thanks to everyone who suggested links in comments and on delicious.

From comments: FoolishOwl on those pesky distractions

FoolishOwl commented:

I looked at Gail Carmichael’s blog post, “Quick Thoughts on Pregnancy and Grad School,” and was immediately struck by how the women commenting on it were in general agreement, based on careful thought about the optimal moment to have children. It struck me by contrast with some “how to be a good programmer” essays I’d read lately, written by men, which emphasized the importance of discipline and concentration on programming, and eliminating all distractions from one’s life.

It’s striking me that the emphasis on monomaniacal concentration only works on an implicit assumption of privilege — that important matters other than programming will be handled by someone else.

I find it all too easy to lapse into such an attitude.

At the risk of asking a Feminism 101 question, what’s a better way to balance these things?

Just a note to start: I don’t think this is a feminism 101 question. Feminism 101 questions are more along the lines of “why is feminism important?” or “why does feminism care about this aspect of society?” This kind of question seems to me to be more of a “how do I live in the kyriarchy?” question, which is a different beast altogether.

I don’t have a completely thought out response to FoolishOwl’s question. It’s something that’s come up a lot in discussions of being a woman in academia and many other professions which have some of the following characteristics:

  • substantial time expenditure needed to master the field;
  • emphasis on it being highly preferable to do a substantial amount of legwork in the field at a certain (young) age;
  • work in the field being at least believed to be benefited by sustained, uninterrupted, quiet, focussed workdays; and
  • expectation of at least occasional, and often frequent, long workdays which are sustained, uninterrupted, quiet and focussed.

Some examples that spring to mind other than programming or academia include medicine, which also has the structured training requirement of very long hours, and especially mathematics where the lore about needing to do your best work before age 25 seems to have achieved particular acceptance. (I’m not inside mathematics though, perhaps this is an outsider’s belief.) Academia and, I gather, medicine, both have an additional structural problem for women who want children, which is that they have a period of what is supposed to be very intense work (postdocs, fellowships, specialist training) that tend to fall right across most intending mothers’ preferred (or only possible) reproductive years.

The immediate question that FoolishOwl’s comment made me think of about programming was, how true is this? I know a lot of programmers, and being able and willing to work more than a 35—40 hour week (which I will note is already quite a privileged thing for someone to be able to do) is a decidedly mixed bag. For some it’s brought them further mastery. For many others, it’s brought chronic injury, ongoing mental health problems, or loss of enjoyment. Most of the better programmers I know aim to eliminate distractions from their work hours, not from their life.

Various questions for you all:

  • did you have a “larval phase” in your geekdom of choice, a period of immersion at the expense of other interests? do you think having one was essential, useful, just fun, or a bit of a negative in the end?
  • do you think this sort of mythos is at least partly gatekeeping, ie, not actually necessary to obtain the skills, but put in place to preserve the mystique and the status of those with the skills?
  • what role has privilege played in your ability to be part of geek communities and professions?

And of course, FoolishOwl’s question: “what’s a better way to balance these things?”

Because it’s me, a note: in general I think the conversation will be most interesting if people discuss the intersection between privilege and geek careers here, or give advice from a non-traditional geek point of view. I have a feeling this kind of question will be very appealing to men commenters, because it’s not specifically about women’s lived experience. But please consider if an extensive account of your geek career will add to thoughts about the intersections before leaving one.

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?