Female programmers in New York City are no species of endangered bird. With organizations like Girl Develop It, Hack N’ Jill and NY Tech Meetup, this area is an incredibly welcoming environment to a woman starting down the dark path to becoming a developer. But if you’re anything like me, you’re well advanced in your years to contemplate picking up an entirely new subject when it seems like every Tom, Dick, and Harry in the tech scene got with the program about ten years prior.
At the ripe old age of twenty-four, it suddenly occurred to me that I wanted to code. This wasn’t a desire to spend hours in front of a computer watching tutorial videos while I plugged in mystical formulas that I hoped would elicit more than a shrug from the machine.
I’ve come to programming because I want to build something and it finally occurred to me that the tools were all there and the only thing holding me back was the perception that programming was something that someone else did.
I’m unclear as to where this perception came from. No one ever told me that I couldn’t be a programmer and since having expressed an interest in learning, I’ve received nothing but support. Then again, no one ever told me I could or should be a programmer. I received no programming education in school and none of the clubs or activities I engaged in taught any form of it.
What’s interesting about this is that most of the male programmers I’ve met didn’t receive formal programming education in school either. They sought it out. They picked it up as a hobby and then when they hit higher education, some of them took it up as a major. So why is it that male programmers so greatly outnumber female if we are receiving a comparatively similar educational experience? I have no answer to this question.
My motivation to pursue programming didn’t come about until I had a strange “ah ha!” moment where I realized I could learn the skills needed to construct the products I designed. I was then immediately confused as to why this hadn’t occurred to me…like ten years earlier.
My “ah ha!” moment though was a slow build rather than a sudden conclusion. It began while I was working as the production manager at a video game company. I’d talk to the programmers on a daily basis and at first their logic to development, like the rules around placement of doors in the game world, made no sense to me. I understood that the game world was a construct, literally built from the ground up, but hadn’t yet grasped how the pieces of the framework fit together, so I couldn’t logically understand the barriers to design. But the more I worked with the programmers, the more I began to pick up on and this made me better at my job.
I could now review a piece of design and determine, first, whether or not it was feasible, and secondly, if modifying it slightly would save man-hours, and thus money. The more I learned, the stronger my desire became to have the ability to manipulate the world rather than filtering my ideas through a third-party. But, I didn’t consciously act on this desire until I met my first female programmer.
I mentioned that female programmers in this area are not a rarity. That said, I didn’t meet my first until about four months ago. I was at the New York City Mobile Gaming Summit and during a five-minute stretch between panels, I started talking to a woman in the audience. She identified herself as the programmer of a newly launched Facebook game. This really shouldn’t have been a momentous occasion, but it shifted my conception of the universe just a little bit, forcing me to examine some subconscious assumptions I’d made.
You see, most women I’ve met in the games industry, myself included, fall into just a few roles: game designer, community manager and artist. It’s already pretty impressive just to meet another woman in the industry, in the flesh, so I mean this as no judgment. Still, it is a little strange that more of us don’t fall into tech or upper management roles. Somewhere in my brain, this fact coupled with years of other cultural biases about the roles that women occupy, created a mental block where I never even considered the possibility that I could build. But, that one woman in the audience effectively shattered my block. Once I began to question these assumptions, there was no excuse not to pursue programming.
I spent time researching languages online and asking the game developers I had access to what they built in. I’m so green that prior to beginning this research, I had a vague idea that there was probably more than one programming language. What a shock to learn that their number and variety are greater than I ever care to know. This made choosing just one a bit tricky. I didn’t have enough of a knowledge base to weigh them against each other and assess their benefits and disadvantages. After a bit more reading I understood that the easiest way to pick a language is to determine the type of program you want to make, the platform you want it built on, and then start axing candidates from there.
That bit was easy, but once it got down to the herd of remaining languages that could all relatively do what I wanted, I was at a loss. I asked the game developers what language I should choose and almost no two people gave me the same answer. People love the language they are most familiar with, which is usually the first one they started building in, and although learning one language tends to branch out into learning bits of others, everyone has their digital comfort zone.
I finally settled on Python. Not because it’s necessarily the best language for my purposes, but because, in a very unscientific way, multiple people mentioned it and it’s referenced in several places on the Internet as a good starter language.
I then began looking for classes I could take. I was under a tight budget so the majority of my search was for free Internet resources. I went with Coursera and signed up for a free four-week program. (I want to make another plug here for Girl Develop It. I haven’t yet taken advantage of this organization because the classes I’ve seen offered are mainly for building websites, but I’ve heard nothing but good things about them and they are very affordable.) I began the Coursera class and made the usual mistake of greatly underestimating the amount of time it would take to complete the assignments. Coursera functions as a real-time class with assignments, quizzes, instructors you can contact with questions, and a message board for interacting with classmates. This is really cool, but you have to take the commitment as seriously as you would an in-person class. If you miss the deadline for turning in an assignment, there are no do-overs. I hung in there for three weeks, really enjoying the work but finding it to be a larger commitment than I’d originally realized. I finally had to drop it, but in that time I picked up an understanding of the display and logic of the system and some very neat commands.
I would highly recommend going this route if you have the time and dedication to complete weekly assignments on top of your other life obligations. If, on the other hand, you need something a bit more flexible, the internet is a treasure trove of Googlable resources that you can read or watch and they ask nothing in return. I’ve also heard good things about Udacity, but cannot recommend it from personal experience.
To be continued in part two: Happy Hacksgiving!