Tag Archives: Open source

Quick hit: Free travel grants for women to attend EuroBSDcon 2014 in Sofia, Bulgaria

Google is offering 5 grants for women in computer science (either working in or studying it) to attend EuroBSDcon 2014 — the main European conference about the open-source BSD family of operating systems — in Sofia, Bulgaria, to take place September 25-28. The grants cover conference registration as well as up to €1000 in travel costs.

Women who have a strong academic background and have demonstrated leadership (though if you don’t think you do, you should apply anyway) are encouraged to apply. Google’s form requires selecting either “male” or “female” as a gender; if you are not binary-identified but are marginalized in computer science and wish to apply, make use of the contact information for this Google program.

Also note that EuroBSDcon does not appear to have a code of conduct or anti-harassment policy. (If I’m wrong, add it to the wiki’s list of conferences that have anti-harassment policies!)

Drupal for Women Who Just Googled It

This is a guest post from Nikki Bailey. Nikki is a queer feminist lady: barista by day, web developer and feminist bookworm by night. She’s just launched a website for crowdsourcing knowledge about science fiction/fantasy books by women, and things she enjoys while that’s not taking up all her free time include gardening, aikido and Minecraft; you can reach her on Twitter at @kwerey.

Update by Mary, May 24: the site Nikki discusses in this post is at kwerey.com: Kwery, genre fiction by women.

About a month into the new year, during the winter lull at the cafe I work for, I decided to make a website.

Well, no, that wasn’t quite how it worked. I decided I wanted to learn about programming, and when CodeAcademy didn’t really hold my attention, I figured I might have more fun making something myself. Something small but practical: I’d make a site to keep track of books I’d read. That sounded like it’d be simple but useful, and I’d probably be done in a week and I’d be able to put “knows HTML” on my CV.

That plan changed pretty quick. I asked some techy friends on Facebook: One of them recommended WordPress, and then a couple of people mentioned that Drupal was cool at the moment. It’s probably a bit more versatile as a CMS overall, someone reckoned, but it’s difficult to get into – you might want to start with something a bit more simple.

I’ve been hacking stuff into working in Linux for more or less a decade now: the words “it’s not user friendly” lost all effect on me a while back. I took a look at Drupal and found a tool someone had written for it that looked up any ISBN in an open database and populated a form with the results automatically. That was me sold then and there: I went straight to the Very Basic Tutorials page on the Drupal site and started putting together some mysterious thing called a LAMP stack…

Three weeks later I’d got pretty carried away. I moved from learning my way around Drupal to learning about CSS and HTML and version control and PHP arrays. I learned to troubleshoot. I fixed problems – I even nervously published a few patches.

I hadn’t worked this hard since final year exams, or been so excited about what I was learning. I cycled to work daydreaming about UX and faceted searches, came home and filled my Firefox bookmarks with tutorials.

Eventually, I got there. My finished project is this: an online catalogue that stores books with all kinds of metadata: reviews users have added, publication date, genre, and the kind of questions things like the #WeNeedDiverseBooks campaign asks: there’s a field for ‘are there LGBT characters?’ and ‘is there a person of colour as a central character?’. In the end, I made it a catalogue of just books by women, because that’s an axe I’ve got to grind with the science fiction & fantasy community: hardly anyone ever recommends me books by female writers.

The site went live a few weeks ago, and last time I checked in on it, there were all kinds of cool sounding books on it I hadn’t ever heard of: I’ve made a way to find to provide myself with infinite new books to read, and put a resource out there I think could be really useful to people: I was over twenty by the time I read a book about a lesbian character that wasn’t totally depressing, and I’m pretty proud and excited about putting something out there to help marginalised people find themselves in fiction.

I always thought of the phrase ‘web development’ as referring to some kind of very structured skill, with a budget of thousands and probably more than one Gantt chart involved. That changed pretty much as soon as I started googling. Thanks to open source technology and the generosity of geeks with their secrets, it’s taken me under 2 months and £20 to put together a website that’s getting 1000~ unique visitors a day in its first few weeks of life: it’s been an act of creativity and collaboration, and it’s left me really excited about all the cool stuff the internet makes possible.

Thanks for everything, geeks of the internet. I hope this is gonna be the first of many projects you’ll see from me.

Quick hit: What Open Source Means to Me

Nick Desaulniers is collecting brief statements from people who do open-source about what it means to them, as a text file extended via Github pull requests. You can add your own by forking the repository and submitting a pull request. I’d love to see more additions from people in communities that are marginalized in open-source development (and in tech generally).

Guest post: My Nerd Story: Class, queerness and the transformative nature of technology and open source.

This is a guest post from Beth ‘pidge’ Flanagan. Beth is a Senior Software Engineer for Intel’s Open Source Technologies Center and spends most of her time working on OpenEmbedded Core and the Yocto Project, mainly as the release engineer and maintainer of the yocto-autobuilder. She is also a geek, a queer trans woman, a motorcyclist, and a practitioner of random bits of general purpose geekery. She has been working in IT/software engineering now for the past 23 years. She blogs at http://hacklikeagirl.wordpress.com.

I was born and raised right outside of Newark, NJ. My family was working class and I grew up in a working class neighborhood full of first and second generation immigrants from Ireland, Scotland, Brazil, Italy, Puerto Rico, Central America, etc. Basically, a neighborhood that most people wouldn’t think of as a fertile bed for nerds. I tell people to basically imagine some of the more gritty scenes from The Sopranos and they’d get an accurate idea of where I grew up.

The Sopranos - Satriale's Pork Store

I realized at a very young age that I was a trans woman and that without a well thought out plan, I wouldn’t be able survive the conservative confines of that world. This concept of needing to escape was further compounded by the fact that I was on the bottom of the social ladder at school. I was bookish, had a serious lisp and a severe femoral torsion which caused me to walk pigeon toed (hence the nickname I carry to this day). I also had a classroom full of boys and some of the girls who marked me as “different” from my first day at school and did not let up in their abuse for the entirety of my elementary school career.

When I was 9 or so, I had a pretty good idea that all the praying in the world wouldn’t make me not trans and that I should probably spend some time figuring out what to do about it. So, I petitioned my father for an adult library card (remember a time when ‘looking stuff up’ included a trip to an actual library?). I remember asking him if he would sign the papers for my library card and he handed me the largest book on the bookshelf he could find,’The Crusades’ by Zoe Oldenbourg. He told me “Read this and do a book report and I’ll sign the permission slip”. I read it in about a month or so and that signed permission slip opened up a world I could never have dreamt of.

That library was my salvation. In its stacks I learned, in carefully hidden books, that I could do something about being trans. For the first time I could remember, the serious depression I had been in since age 6 when I figured out that I wouldn’t grow up to be a woman, not at least without a little bit of help, abated somewhat. The library became my second home. It was where I spent my days, hiding from the world. I went into full on reading mode, devouring anything I could get my hands on, but always ending up back in the science row with it’s miniscule amount of books on computer science. But, they did have an entire set of “The Art of Computer Programming”. I flipped through it somewhere around age 10 and didn’t understand one bit of it! Somehow though, I was strangely enamored with the idea that language could be turned into something that made machines do work.

I mentioned before that people generally don’t think of working class people as a hotbed of nerdism. If anything, I think that the reality is the exact opposite. When you grow up without a lot of money you end up learning how to make things last and fix things that need repair. My family was no different. My father was a fairly decent carpenter who tried, bless him, to teach me with absolutely no success. His mechanical skills were impressive, something I ended up being able to learn much later in life. My grandmother however taught me how to crochet. In crocheting I saw math and patterns and it taught me how patterns could create beauty.

When you’re the kind of strange effeminate kid in a working class world that I was, you end up spending a lot of time alone and learn to quickly entertain yourself. One summer I spent a full week alone in my backyard with a roll of tin foil, a magnifying glass and a thermometer seeing what the highest temperature I could achieve was. That was also the year I built a boobytrapped for the backdoor to the house. (I was afraid of burglars). I forgot to unset it and it almost knocked my mother out when she opened it and a few of my brothers baseball bats came flying out, full speed, towards her face.

1982 came around and something happened that would change my life forever. It all started with two lines.

10 PRINT "I HATE SCHOOL!!!"
20 GOTO 10

I still remember those first two lines of code I ever wrote. It was a 10 year old kid’s ‘Hello World’. The Catholic school I attended had invited this computer education company in to do an optional computer class. I begged my parents to let me take it. I remember the first day I stepped into that class. About a dozen or so Commodore PETs, with the ever so high tech audio cassette storage devices.

Pet4016

After the first few classes, you just stopped trying to load your prior work from tape at the start of class as it took forever to load. You got really good at remembering what you did the week before and learned to type quicker than the audio tape could load. I ended up falling asleep at night listening to those tapes (SkreeeetchWoooooSkreeeeeeetch!); in love with the idea that you could store STUFF on tape other than music!

So, here I was, this kid who was absolutely on the bottom of the social ladder. I was despised by the kids at school and my ability to have control over my life was greatly impacted by overly protective parents, my age and obvious gendered behavior difference, but… for those 45 minutes a week in 1982, I had, for the first time in my life, actual agency. I could sit there and tell a machine to do whatever I wanted it to and the results were up to me. It wouldn’t beat me up. It wouldn’t make fun of me for the way I walked, or held my books. It wouldn’t call me awful things. It would just do what I told it to do. (This generally entailed new and more complex ways of spitting out how much I hated school, to be perfectly honest.)

Those little two lines of code turned into a much larger program that year and my parents ended up trying to nurture the one thing I had shown an actual interest in. I’m still unsure of how my father afforded it, but one day he came home with a Timex Sinclair 1000, literally the cheapest computer there was. I actually recall using it quite a bit, but, as the concept of needing to store things was a bit beyond my dad, who was a truck driver, he had neglected to buy the audio tape drive. I would have to leave it on for weeks with a note on it, telling people not to shut it off or I’d lose my program.

Zx81-timex-manipulated

But, no matter how much computers could act as an escape for me, there was still this huge thing I had to deal with and as I got older and the effects of puberty started to hit, my depression worsened. I stopped writing code in my Junior year of high school and just focused on trying to make it through the day. By the time I hit university I was an absolute wreck from trying to deal with being trans. So, after the first year, I made the best decision ever. I quit and moved to Washington DC and was able to have space to figure out what my plan was.

I moved back home after about a year because I had gotten fairly sick. By this time, my mother had gone from being a secretary to getting a degree in accounting to being a VP at a small software company. Behind my mothers back, I finagled a job there. I will always remember the engineering manager who risked her wrath to give her weird, green mohawk having kid a job. So, my lucky break came in 1991, at age 19, writing insurance software in MagicPC for 5 dollars an hour.

Eventually, I left to take a job at the local university. Here is where I encountered the second thing to change my life. Windows 95.

It was 1994 and we were previewing the beta of Windows 95 for a migration from Windows 3.11. I absolutely loathed it. There was no integrated TCP/IP stack. I was use to the Solaris command line by that point and this was still the clunky DOS shell. It was nothing I wanted and while it was an improvement over 3.11, I wanted something more, so I went searching for a better solution and found it in Slackware.

I don’t remember the exact version of Slackware I finally got to install, but I know the kernel was around 0.99 (before loadable modules and ELF binaries!). It was like a dream and a nightmare rolled into one. When you got it working it went like clockwork, but it was an absolute TERROR to set up. Package management? Nope, tar.gz and make were your friends. I got really good at debugging makefiles.

But, I was hardly bored. I spent way too much time getting kernels recompiled, fighting with X11 settings on my Diamond video card, wondering why the NE2000 card would blue screen all the Windows 95 boxes on the token ring. Bored? I was too busy tearing apart this amazing thing that people had put together, in part, just for something cool to do.

It was magic. Here was this thing that didn’t work out of the box! I had to actually sit there and figure it all out. That year and a half I spent learning the operating system inside and out gave me a sense of accomplishment, a sense of pride and a sense that if I could survive a Slackware install and make it out on the other end, a gender transition should be a piece of cake, right?

I had finally figured out the logistics of my transition and set a date. To put it mildly, the concept was sound, but the execution went poorly. I lost my job, my family and the entire situation created a rift in my family that will probably never, unfortunately heal. So, here I was, age 24, with a brand new gender presentation, a high school diploma, a job history I couldn’t use because it was under a different name. I had moved to Philadelphia and was living on a friends couch because I was kicked out of home. Things were not looking very positive.

But, there were a few things I did have.

I knew how to write code.

I knew Unix and Linux.

I was too damn stubborn to take “No”.

And I was left with no other choice.

I’m not sure how I got hired, I’m sure in part it was a bit of desperation on their part, but within the month, I ended up getting hired as a sysadmin, administering 250 AT&T BSD boxes that ran a computer based testing suite. I ended up working on porting the program over to Linux which got me hired into writing the next generation of that software.

From there it was on to trying my hand at UI design with stops in animation, power grid, control systems. And then, eventually, to my current home in the embedded world.

I look over the past 30 years since I first sat down at that old Commodore PET and am thankful. I had a mother who, despite our differences, firmly instilled in me the idea that women, even women like me, could do anything. I had a work ethic that instilled in me that as long as I could do the job, nothing else mattered. I had the stubbornness to not believe the people who were telling me “NO!”. I had the curiosity and the drive to figure it out for myself because I knew that no one was going to tell me how to do it.

My nerdcred doesn’t come to me from a piece of paper, but by sheer force of will. I know a lot of my colleagues came to where they’re at by the “traditional” route, university, internships, etc. I’m glad for them but I do not envy them a bit. While my route was the hard, tough slog, I would never trade it for the world.

I firmly believe that my past gives me a perspective in geekdom that is relatively unique. It has made me a better engineer than I think I would have been had I gone that traditional route. It has defined who I am and has made me a better person because of it. I can look at people from non-traditional nerd backgrounds and see their inner engineer. I’ve learned that sometimes, you find the most brilliant of people in the least likely of places. I approach new experiences, be they personal or technological without one iota of fear.

And lastly I always know that the first program I write whenever I learn a new language is going to be my own, special, personal version of the first two line program I ever wrote.

Poster explaining the GNOME OPW program

Upcoming open source opportunity: GNOME Outreach Program for Women

Poster summarizing the GNOME OPW program and showing a robot superimposed over a globe and some silhouettes of people

A big initiative for those interested in getting involved in open source is happening right now: the GNOME Outreach Program for Women (OPW). OPW is accepting applications from now until November 11, 2013 for the program that begins December 10, 2013 and ends March 10, 2014.

If you’re interested in getting involved in open source, but don’t know where to begin, consider applying for OPW. OPW internships are paid, full-time, and allow you to work from home (there is also funding for potential travel to visit your sponsoring organization for a short period of time). OPW is inclusive: all women, including cis women and trans women; as well as anybody who was assigned female at birth; and anybody who identifies as genderqueer, genderfree, or genderfluid (regardless of the sex they were assigned at birth) are encouraged to apply. OPW is open to students and non-students alike (as long as you’re 18 years old or older as of December 10, 2013) and is open to people with any level of computing or software experience, so long as they’re relative newcomers to open-source development.

As the OPW page explains, “The internships offered are not limited to coding, but include user experience design, graphic design, documentation, web development, marketing, translation and other types of tasks needed to sustain a FOSS project.”

Not that I’m biased or anything, but since I work for Mozilla, I’d like to call attention to our OPW projects. Several other organizations are participating as well — Debian, Fedora, GNOME, the Linux Kernel, OpenStack, Wikimedia, and Xen — and if you’re involved with one or more of those, you’re welcome to toot your project’s horn in the comments!

This is the third time that Mozilla is participating in OPW, but the first time that Mozilla Research is participating. Because I work for Mozilla Research, on Rust, I’m excited that we’re accepting one intern each for Rust (a new systems programming language; most of the internships focus on libraries and tools for it) and Servo (a prototype parallel Web browser engine implemented in Rust), both of which are projects that are under the umbrella of Mozilla Research. A third Mozilla opportunity is to work on community building with Larissa Shapiro, Mozilla’s Head of Contributor Development. For the full scoop on all of these projects, see Mozilla’s OPW page for December 2013. I’m coordinating Mozilla’s involvement with OPW, as well as coordinating mentorship for the Rust projects; Lars Bergstrom is coordinating the Servo projects.

If you’re not sure whether you should apply to OPW, then you’re probably somebody who should apply. But as the OPW page says, the application process is collaborative, so it’s a good idea to talk over email with the coordinator for the project you’re interested in to find out more about what they’re looking for in applicants. As always, it’s best to show that you’ve done your homework and ask specific, focused questions so as to help the potential mentor help you.

If you’re not in the OPW audience, you can still help! Please advertise these programs to students and women who might not otherwise see them. You can put up posters where people who are marginalized in open-source communities will see them; help encourage people who are enthusiastic about one of the projects but might be too nervous to submit an application; and help connect the same people directly to projects whenever you can.

I shamelessly ripped off portions of this post from Terri’s OPW/GSOC post from back in April.

Book Club: Coding Freedom, Part II: Codes of Value

In Part II of Coding Freedom, Biella begins the vital work of problematizing the meritocratic ideal.

“Hackers will publicly acknowledge… acts of “genius” and are thus fiercely meritocratic – in ideology and practice. Yet given that so much of hacker production is collective, a fact increasingly acknowledged and even celebrated in the ethical philosophy of F/OSS, a commitment to individualism, meritocracy, and independence is potentially subverted by the reality of as well as the desire to recognize their fundamental interdependence. The belief in the value of individuality coupled with the constant need for the help of other hackers points to a subtle paradox that textures their social world.”

Who among us picked up any technical skills whatsoever without the help of someone more skilled who helped us out just because, in the spirit of paying it forward? Patient friends, lucid documentation, gentle answers on mailing lists: these are the familiar stepping stones from n00b to basic competence. Depending on your point of view, they exist in dynamic tension with, or in stark contrast to, the Romantic hero, powered only by genius and Mountain Dew. You know, this guy:

The Wanderer Above the Sea of Fog

There is for sure a seductive aspect to the idea of meritocracy, an aspect that’s maybe especially potent for adolescent people – or nations – who are trying to separate their identities from their progenitors in order to individuate and develop their potential. It’s understandable, but it shouldn’t survive contact with the real world, which is nothing if not More Complicated Than That.

“The United States is often thought of as a living embodiment of meritocracy: a nation where people are judged on their individual abilities alone. The system supposedly works so well because, as the media myth goes, the United States provides everyone with equal opportunity, usually through public education, to achieve their goals. As such, the hierarchies of difference that arise from one’s ability (usually to achieve wealth) are sanctioned by this moral order as legitimate.”

You’ve got to love the strategic deployment of qualifiers in the above passage, especially if, like me, you have come late in life to the conviction that meritocracy is bullshit. Yeah. I said it. The single biggest flaw in the idea of meritocracy is the proposition that there are people who are without merit. This is, to put it mildly, not the case.

The second biggest flaw in the idea of meritocracy is that it’s just a recursive modern gloss on the Divine Right of Kings. Leaders in the (ostensibly-meritocratic) open source community are entitled to exercise power because of their merit. The proof of their merit? Is their exercise of power. The word “meritocracy” is an ungainsayable defense of the status quo. It’s conservatism in a nutshell. As Alexander Pope once, infuriatingly, put it: “Whatever is, is right.”

This week, in which Linux kernel developer Sarah Sharp advanced the revolutionary notion that programming could be carried on without ad hominem attacks, has added special piquancy to this passage from Biella’s book:

“When Torvalds and Murdock developed their own projects (the Linux kernel and Debian, respectively), they did things differently than the earlier cadre of Unix hackers by fostering a more egalitarian environment of openness and transparency. Participation was encouraged, and recognition was given where it was due. Accepting more contributions was also, of course, seen as a way to improve and encourage technical efficiency.”

Biella acknowledges that Linux and Debian grew up to be very different projects, and goes on to discuss Debian’s Social Contract, Free Software Guidelines and Constitution. She has some sharp observations on the fear within the Debian community that the “meritocracy” will be “corrupted.”

I’d like to propose that the notion of meritocracy is itself corrupt. Ideas may have, or lack, merit. People have worth, and every person is worth more than we can possibly imagine. Inclusive communities are likely to write the best software because in them, ideas can compete on their (yes!) merits; and because software written by the other communities has exclusion coded into its very DNA.

But, y’know, I’m not a kernel coder, so who the hell cares what I think? ;) More to the point, dear readers: what do you think?

Tech confidence vs. tech competence

This is a guest post from Alex, who is a volcanologist in their spare time. When not messing about with rocks in their underground lairlab, they can often be found shouting about trans (especially genderqueer) rights, earlier diagnosis of endometriosis, and books with dragons in.

Content notes: sexism, abuse

My dad was among the first cohorts to graduate in Computer Science at a prestigious university back when the course was introduced. Every single person I’ve been involved with long-term – and some of my major interests along the way – has been a computer scientist. Over the course of my life, I’ve frequently chosen to hang out with programmers; in my early-to-mid teens, I spent a slightly worrying amount of time on Netnews (yes, as distinct from Usenet). I grew up in the Silicon Fen. I half-joke that I was brought up by the Internet; I’ve just graduated with an MSci in physical sciences from a similarly prestigious institution.

And it wasn’t until 2012 that I first wrote code.[1]

Hello, everybody. My name’s kaberett, and I’m a Dreamwidth volunteer.

Code. It’s used in my field: it’s a vital component of modelling. I’ve spent my life surrounded by coders and design architects, by people whose reaction to “nothing exists that does what I want” is “okay, I’ll build one, then”; whose reaction to “I’m bored” is “what can I make?” And still: it was 2012 before I wrote any code.

Sadly, I think there’s a pretty obvious first-order explanation for this: I was assigned female at birth, and socialised accordingly. I spent my childhood being torn down by my computer-programmer father for “not having learned [that] yet,” or for answering questions “too slowly” at dinner, or being told I’d “never get a job if…” or being yelled at about how valuable his time-that-I-was-wasting was.

Does this mean I think all programmers are like him? No. Did it mean I was too scared to use the (theoretically) best resource available for me to learn from? Yep! And it landed me with a whole bunch of other issues. Asking for help with maths was right out – and so, really, was asking for help with anything. I’d acquired the conviction that I’d be belittled and torn to shreds, and that any information I did get would have more to do with building up my “instructor”‘s ego than my own knowledge base.

That experience is what I’m bringing to the table here. That, and a whole lot of reading, about the issues with diversity in FLOSS culture – and some more first-hand experience, this time with a place that is, by all accounts, doing it right.

And here’s what I suggest: in terms of getting high-quality code written by a diverse community, line-for-line my gut says that tech confidence is much more important than (perceived) tech competence.

Let’s pause a moment, while I define my terms. I use (perceived) tech competence to mean, broadly, the (perceived) ability to identify and fix a problem (without use of external resources). I use tech confidence to signify the belief that this is something that one can do – or learn to do, if one doesn’t know how to yet: it’s about trusting yourself to be able to figure it out, and trusting your community to help you rather than deride you if you ask questions.[2]

And that, right there, is where we stumble straight back into the issue of the meritocracy: the idea that a competitive environment – in terms of number of lines of code written, or features rolled out, or bugs squashed – is more important than one that values every contribution and every contributor.

Meritocracies are inherently broken, and competitiveness – while sometimes healthy – also erects an enormous barrier to beginning volunteers and coders. An ivory-towered culture of enthroned experts – one that enforces the idea that you must have a high level of technical knowledge to be worth talking or listening to – makes many people afraid to ask questions. This in turn makes learning slower and knowledge transmission harder, and leaves the group more likely to land in a situation where the only person who understands how to do what Sam does is, well, Sam. And that’s a problem – when Sam becomes ill, or they take a holiday, or they decide they don’t want to be involved any more, or sometimes they die. This is something that’s seen over and over again in, for example, the field of graptolite studies.


Let’s take a diversion, actually. Graptolites are an enormously important extinct species, most a couple of inches long at the outside, and they more-or-less resemble saws. Their diversity and steady morphological evolution – and the fact that they were found in all oceans on the planet – makes them superb for establishing relative ages of sedimentary rocks in the geological record. Problem is, there’s hundreds of species of the little sods, differing in such minutiae as how many thecae (saw teeth) they have per centimetre, the percentage overlap between thecae, the extent of curvature… which is all fascinating, except for the fact that the most recent illustrated catalogue of known species? Was published, as a serial, in 1901. (Want to know about some awesome scientists, incidentally? Look up Gertrude Lillian Elles and Ethel Mary Reader, née Wood.)

Do you know how many species have been reclassified since 1901?

Answer: a lot.

And so your best bet for identifying a particular graptolite is, if you’ve got one, to hunt down your local expert and get /them/ to do it for you.

And then, in the way of all flesh, they die – and you find yourself waiting for the next generation of experts to develop their eyes, because none of them write any of this down.


One of the things I’m spending a lot of my volunteer time on at the moment is encouraging Dreamwidth’s new volunteers (affectionately referred to as “babydevs”). This means, in practice, that I’m spending a lot of time writing documentation: how to do things that Everyone Knows, so that there isn’t the entry barrier of perceived “wasting senior devs’ time with trivialities”; so that we get consistency of explanation; so that we are more welcoming.


As I’ve said, pretty much my entire experience of volunteer work in the FLOSS world is at Dreamwidth, where I’ve been encouraged, throughout, to get started, to ask questions, and to seek help. Dreamwidth values my broader contributions to the project just as much as it values any code: I’m valued as much for tagging our incoming suggestions for features, adding to our volunteer wiki, putting together lists of easy-to-tackle bugs (“babydev bait”), and for end-user support, as I am for what coding I do. And that’s important: I got embedded in the volunteer culture well before I started trying to learn new skills, and the encouragement and support I got for that made me believe that I’d have the same level of encouragement and support if I attempted to branch out. It’s not just me this helps, or people who are new to coding: we also make space for people who already can code, but haven’t yet found time to contribute to any project due to other obligations. We’re always working on making public records of this: for example, our wiki entry on Things Real Dreamwidth Programmers Do is a relatively recent invention.

And all of this is crucial, not just to my own personal growth (which – obviously – I’m very grateful for!), but to Dreamwidth’s success as a FLOSS project. It is not focussing, first and foremost, on tech competence: instead, we work towards fostering tech confidence, through creating a culture where babydevs know that senior devs have their backs; a culture where people feel able to ask questions of the broader community, in public as well as in private; a culture where people learn how to test and debug and Not Give Up; a culture where our co-founders own their mistakes, and do so publicly, so that nobody has to feel alone. When people get discouraged, we give them pep talks. We remind people that it’s okay to learn visibly, instead of having to pretend to be entirely competent all of the time. Everyone can learn from the mistake that anyone makes – and mistakes are caught soon after they happen, so consequences can be minimised.

This is in stark contrast to communities where tech competence is valued above all else: where people feel they have to hide their mistakes. In such settings we routinely observe low volunteering rates from people in marginalised groups, with low retention from beginning volunteers, because people are too scared to ask for help or too scared to admit that they don’t know how things work. This isn’t unique to FLOSS cultures, of course – I’ve just finished a degree at a university regularly ranked in the top 5 globally, and I am appalled by the way in which this institution pushes people towards poorer understanding through militating against asking “basic” questions. It’s a habit that leads to misunderstanding, and misunderstandings lead to bugs, and it’s generally an all-round disaster, in which nobody wins.

So: please, if you want to promote diversity in your volunteer base, consider fostering an atmosphere conducive to tech confidence. It makes spaces more pleasant to occupy, and it produces real tech competence. Looking at things this way round? Well, I can’t see any losers.

[1] That’s not quite true – when I was 12 I spent a fair bit of time messing around with basic HTML and CSS to individualise Neopets profiles. But: it wasn’t standards-compliant; I wasn’t learning the languages as a whole, or even really their grammar; and it was a very structured sandboxed environment, where even very basic efforts were encouraged.

[2] Compare and contrast with the Perl virtues of laziness, impatience and hubris – except that “confidence” has the negative connotations of “arrogance”, because we are, in many cases, taught that it is bad and wrong to be able to accurately assess our capabilities and state them clearly – and it is especially wrong to reassess our abilities in the light of new information.

someone using a backscratcher

From “sit still” to “scratch your own itch”

When I started off in open source, I believed that bit of “The Cathedral and the Bazaar” that said:

Every good work of software starts by scratching a developer’s personal itch.

Regardless of the truth of this assertion, somewhere along the way I got the impression that people usually get into open source via “scratching their own itch,” and I mixed up prescriptive and descriptive to boot. Personally, I started dabbling in open source testing hoping to learn a bit of Python, and then really got stuck in when I saw a clear unmet need for documentation even though I wasn’t personally going to use it. Sometimes I thought I was inferior — surely I ought to have been thinking up my own projects, improving my work environment, and writing things that would help me out, thus getting me into a virtuous circle of learning?

I’ve since learned more about how I learn (see previous posts on beating certain learning anxieties). And I’ve found it helpful to talk with other newbies and see the patterns.

Here’s one: the newbie who finds it frustrating that they “don’t have ideas.” This person, like me, has heard the message that a REAL programmer or a REAL open source contributor is supposed to be a self-starter who comes up with their own project ideas from the start and uses them to learn. Or the newbie knows they learn best by doing, but they feel a discouraging malaise whenever they attempt to think of an idea to pursue.

This affects people of all backgrounds, but I wonder — is it harder to reflexively “scratch your own itch” when you’ve been taught, as so many women have, to stop scratching and sit like a good girl? If you’re part of an oppressed group, and parents, schools, peers, mass media, and bosses have all consistently punished you when you speak up about a missing stair, then is it any surprise that you’d be slow to start picking up the saw and hammer?

metaphortunate articulated that youthful indoctrination:

I had finally learned that whenever I got angry and I tried to do something about my anger to the source of my anger, everything just got worse for me.

So in the long run one answer to this is that we have to work to make sure everyone has agency and feels it, their whole lives. But, given that some of us struggle with remembering our agency, and that it’s fine to have different learning styles, here are some ideas for priming the idea pump, or for alternate pathways into learning and getting into open stuff.

  1. Embrace boringness. Look at other fields, like sewing, where it is totally fine to start off by making a simple handbag off a common pattern. In open stuff this might be the “same old same old” LED clock or blog platform. If an idea appeals to you but there’s an inner censor saying “that’s too boring” or “what’s the use,” you can tell that inner voice that Sumana says “shut up.” For me, it’s Skud saying “shut up” to that inner censor.
  2. Embrace silliness. Perhaps the equivalent of embroidering a happy face onto an oven mitt. Again, if you think it would make you a scintilla happier, go ahead.  And again, I have a Skud in my head telling the naysayer to buzz off.
  3. Find someone else’s pain point. It is perfectly legit to work to improve shared tools. Look around at places online or in your local community where people are asking for help. Maybe you can find a ridiculously tedious data entry job that you can help with a corner of, or it would be nice if a light over here lit up when such-and-such happened. In a sense, this is what Outreach Program for Women, OpenHatch, and Developers For Good offer: the organizers have already curated the TODO lists so you can pick out the tasks that interest you. It is fine to simply piggyback on existing projects and drift around a bit learning lots of little things that way, and the more you learn and do, the more needs and opportunities you’ll discover.
  4. It’s fine to take a class. Different people at different times learn differently. If you think you’d benefit from structure, encouragement, sociability, and exercises, opportunities from edX to Hacker School to your local community college are worth checking out.
  5. Work with scraps. I get anxious over wasting food or cloth or paper, so when I cook or sew or write stand-up comedy or poetry, I feel more comfortable working with scraps, with leftovers. When I am scribbling ideas for stand-up bits, I prefer to use textfiles that already have miscellaneous jottings in them, or little half-full notebooks, or odd-shaped scratch paper. No doubt my preference for pre-ruined materials reflects my perfectionism and anxiety over worth. I can be creative more easily if the materials were just going to go to waste anyway. I think the trick to addressing this mindset, in the long run, includes habits of deemphasizing and subtlety, tricking oneself into not making a big production out of any given attempt. I’m not good at that. But in the short term: scraps. Find patterns in datasets you already have. Look through old academic papers to find citations to add to Wikipedia. If you have a web presence you barely use, repurpose it as a CSS playground. I’d love more ideas around this theme.
  6. The examined life. What do I actually want? Is there a thing that could make my life better? Honestly I find this question really hard to answer; it requires that I address the pain of unfulfilled desire instead of just accepting my world as it is. But if I have conquered some of the ways the kyriarchy has colonized my brain, then it’s possible to hear the “$foo would make my life better” signals and perhaps address them through technology.

What have you found useful in overcoming the myth of boundless ideation, or in learning to listen to your own itch?

Book Club: Coding Freedom

You came, you voted and we have a clear winner! I’m delighted to announce that the next Book Club pick will be Coding Freedom: The Ethics and Aesthetics of Hacking, by the awesome Gabriella Coleman. The book is available for free download.

Go! Read! Let’s meet back here on Thursday, May 9th! I’m pretty sure this one’s going to rock our socks off.

opw-poster-USLetter-2013-JuneSeptember

Upcoming open source opportunities: Google Summer of Code and the Outreach Program for Women

Right now, there are two big initiatives going on for those interested in getting involved in Free and Open Source Software:

banner-gsoc2013

Google Summer of Code (deadline: May 3)

Google Summer of Code (GSoC) is a global program that offers students stipends to write code for open source projects. Students work from home, paired up with at least one mentor who can guide them through the process of collaborating with their project’s community. There are a huge number of projects suggestions available, and many projects also accept new ideas from students if you think you’ve got an idea that would be great.

The stipend is $5,000 (USD) for approximately 40h/week of work from June 17 to September 23, so this is a pretty decent short-term job.

The deadline to apply is May 3rd, but if you’re interested it’s worth getting involved now because it takes time to find an organization you want to work with, meet the developers, and get help from them in producing a really terrific application.

There are 177 accepted mentoring organizations, but let me take a minute to plug the two I’m involved with:

  1. I’m the org admin for the Python Software Foundation this year. As well as sponsoring development on the Python programming language itself, we’re an umbrella organization for a large number of projects that use Python, including my own favourite open source project GNU Mailman, a variety of scientific tools, development toolkits, and more. The whole list is here. I’ve been fortunate enough to meet a lot of the mentors in person at PyCon this year, and I’m really excited to be working with them, and I think you will be too!
  2. I’m also involved with Systers, which as you may know is an organization for technical women. As one might expect, working with Systers is a great opportunity to work with technical women on an open source project! More information can be found on their wiki.

I know lots of other folk here are involved with GSoC: please feel free to advertise your projects in the comments!

Outreach program for Women (deadline: May 1)

If you’re a woman who’s interested in getting involved in open source, you may also want to check out the Outreach Program for Women which is similar to GSoC but not limited to students:

Outreach Program for Women (OPW) internships were inspired in many ways by Google Summer of Code and by how few women applied for it in the past. This was reflective of a generally low number of women participating in the FOSS development.

By having a program targeted specifically towards women, we found that we reached talented and passionate participants, who were uncertain about how to start otherwise. We hope this effort will help many women learn how exciting, varied and valuable work on FOSS projects can be and how inclusive the community really is. This program is a welcoming link that will connect you with people working on individual projects in various FOSS organizations and guide you through your first contribution.

Here’s the poster:
opw-poster-USLetter-2013-JuneSeptember

Not a student or a woman but want to get involved?

For those of you who are experienced open source contributors:

Many projects are still signing up mentors for GSoC. I usually tell people that this is a 0-10h/week volunteer job (although you do get a t-shirt!) where you get a chance to work with a protégé for the summer and show them the ropes. It can be very busy at times (especially right now when students are just starting and have lots of questions) but it’s very rewarding. Even if your project isn’t one of the ones participating this year, you can still help other projects by doing things like hanging out on IRC to help students set up their development environments.

For those of you not in open source but would like to be:

While these programs are only open to students and women, now is actually a pretty decent time to get involved with a new project because mentors are available to answer questions and students are asking lots of the questions so you don’t have to. Go join a mailing list or irc channel and see if you can follow along!

For everyone:

Please advertise these programs to students and women who might not otherwise see them! Put up posters where minorities not usually represented in open source will see them, help encourage people who might be too nervous to submit an application, and help connect these folk directly to projects whenever you can.

Got questions?

Feel free to ask in the comments below. I believe we have plenty of folk here involved with both programs who’d be happy to help you get involved!