Programming Reflections women in computer science

The Story of a Girl Who Tripped, Fell, and Ended up in CS

Eggistentialism I
Credit: flickr / bitzcelt

You’ve probably noticed, but our theme for September/October is – “How Did I End Up In CompSci?” – it’s a question that interests me, because for the first three years of university it was something I asked myself a lot.

Not in the way, “Wow I love what I do! How did I get here?!” – rather in the way “How did things go so terribly, terribly wrong?”

I’d ended up there after a blip in my tempestuous affair with chemistry – what I was originally supposed to be studying at university – the adventures that left me covered in acid one day (bye bye lab coat), that dyed a small corner of our brand new chemistry lab pink (ahh potassium permanganate), and created the toxic green goo that I still remember fondly ended at the end of first year. My boyfriend at the time tried to kill himself over winter break and I missed some exams as a result. Time came for the retake, I thought I was late, bottled it, and didn’t manage to walk into the examination hall.

It’s strange how you can look at the path you took, and see those moments – the ones that changed everything.

But perhaps, CompSci was always going to be more suited for me. For starters, I’m a complete klutz and destroyed an inordinate amount of glass stuff, and left that lasting pink stain on the lab. But also, I learned HTML at 12 or 13 and loved it. I went to boarding school at 16 – in large part because the teaching of computing (in fact, “IT”) at the high school I attended was so appalling. There I learned C, and coded a tic-tac-toe with a smart strategy. Then at 17 the course changed tack and I became shamefully proficient in MS Access (a skill that resulted in 2 summers gainful employment, not that that eased the pain). Perhaps that was what drove me away from CompSci. And, having an amazing chemistry teacher who was also my tutor, my passion became chemistry instead. Chemistry is everywhere – but then in the 21st century, so are computers. Anyway, I chose Edinburgh because I wanted to study three different subjects. And, because Imperial College gave me a BBB offer which I didn’t think was high enough for me to deserve to go there (to think, if they’d offered me AAB I might now have a joint degree in Chemistry and Law. I should write and thank them).

My Director of Studies (like an advisor) at Edinburgh signed me up for CompSci as an elective. Mid-way through the semester, I went to him and said “I hate it”. He bribed me to stay, promising to get me into Economics the following year. In another twist, I ended up in Economic History instead because neither of us knew what the difference was. It turned out, that Economic History is all the dull parts of Economics and all the tedious parts of History. Barely having studied History at all (and not since I was 12) I did not do terribly well at that, and a broken computer + death of my friend’s mother + blonde moment attaching an assignment to an email nearly meant that I had to resit second year as a result. Luckily it was resolved and I switched to Mac and moved onto third year.

I don’t remember what it was that made me hate CompSci so much – was it all the odd boys who washed so infrequently? In general, CompSci lecturers don’t explain things well and I remember one saying – like it was a revelation! – that you couldn’t expect students to show up knowing already able to code and install Linux. I remember struggling with the concept of Object-Oriented, I could explain it, but I hadn’t internalized it. I remember feeling like an oddity. In first year, I was a size 4 with a penchant for short skirts and cute hats. I did not look like the other compscis. I could not debate the merits of the different Unix installs. I did not play video games. I liked to be awake during daylight and leave the lab by 9pm. I drank caffeine, but it wasn’t my life-source. Nor was junk food. Luckily I had an amazing friend who was older than me and a PhD student at another university. He taught me basically everything I knew via MSN, and was sympathetic when I cried because I didn’t think I could do it.

Having made it to third year, I took more math-based courses, including functional programming. My friend and mentor was an amazing functional programmer and that was his area of research. With his help I really got functional programming and, apart from one disturbing night when I dreamed I was a recursive function, things started to improve. Once I’d made sense of functional programming, OO started to make sense too. I learned about JUnit and unit testing. Moving to Eclipse and abandoning the terminal meant that I picked typos up as I went along and no longer had those horrible moments when I’d compile and have 100+ errors. I was offered an internship for the summer, and that was awesome. I worked on an R&D project and coded a share tracker for cellphones using J2ME and J2EE. I spent my summer writing code and figuring stuff out with the help of the other interns – who were all really nice and normal. I started to feel less inadequate. At the end of the summer, I realized that I wanted to be a programmer; I just wasn’t quite ready to start the rest of my life yet.

Towards the end of third year I’d actually started to make friends with people in CS. In fourth year there were a group of us and I stopped hanging out with geography students quite so much and we stuck together. We’d hang out and drink, complain about our workload and profs, play Sonic the Hedgehog (my inadequacy at video games stopped being something that excluded me and was instead amusing to us), and Scrabble, and poker. I finally stopped feeling like I was the worst at everything, and surrounded by people who were less arrogant and disparaging I started to enjoy it. Sometimes people even asked me for help! I even ended up TAing because the first year course started with functional programming and I actually had experience in that. The bitchy comment some guy made about “why was [I] TAing” was easy to ignore, because the first years liked me. And I knew I was a better TA because I remembered finding it so hard and I sympathized rather than patronized. In all, fourth year was hard work, but awesome.

But when it was done, I didn’t find a job. I left. Perhaps because I felt I’d been studying to the exclusion of everything else, or perhaps I just bottled joining the real world. I went adventuring. Taught programming in the US, trained in martial arts in China, wondered around Europe, qualified as a ski instructor in Canada, went back to the UK and worked for an admin department at a University, helping them transform a collection of spreadsheets into a database – that was when I realized that I could do stuff with data, and answer questions that no-one had thought to ask. Eventually, I applied to grad school because I didn’t think I knew enough to join the real world, and only banks seemed to be hiring.

Started grad school. Got offered a job developing programming curriculum.. Realized I still didn’t know enough, and grad school wasn’t the place to learn it. Felt lost. Read a lot of books. Resuscitated WISE. Started blogging. Took control of my research and loved it. Got offered a summer job teaching programming in Shanghai. Took it. Read more books. Came back and continued researching. Had something I wrote go viral. TA’d in French and my students liked me. Started doing public speaking. Kept reading books. Developed another curriculum. Got offered a place on Extreme Blue. Instigated Awesome Ottawa. Had an amazing summer at IBM.

I reread what I’d written here a number of times, feeling like I should make it shorter. But perhaps it’s fitting that I have a long, slightly rambling story. It’s taken me a long time – 9 years since I started learning C! – to get to this point, and my search for, what? Self-acceptance? Self-confidence? Has taken me across 3 continents, at least 12 countries and included non-CS career aspirations from patent lawyer to ski instructor.

And so I leave you where this – the prologue to my career – ends. A rainy August evening in Amsterdam. An international phone call. An amazing job offer. Your protagonist, finally at peace with her trip down the rabbit hole, exclaims, “Wow I love what I do! How did I get so incredibly lucky as to end up here?!”

Leaving Town
Credit: flickr / Rob Sheridan

Originally posted on CompSci Woman.