Late last year I found myself with a little extra time on my hands and an interest in trying out a new hobby or endeavor.
"Hey, I know what I'll do," I said to myself. "I'll see if programming really is something I'm interested in doing."
I had a lot of false starts with learning programming over the years. I tried taking an Intro to Python programming class through UC Berkeley Extension. I wasn't able to make it through, primarily because I needed more structure and a person to ask questions of. I had a friend try to teach me programming, but he and I both had our schedules diverge and we just ended up dropping it.
So finally, I said to myself, "I'm going to give it a try. I'm going to really put in an effort to learn a programming language and finally decide if it's interesting and engaging to me."
I decided that what would provide the structure and resources I needed to be successful? A community college. I'd have a place to go in the evenings during the week, it wouldn't be a big financial commitment, and it would have a real person I could ask questions of and potentially get tutoring from if I felt I needed it.
Off I went to my local community college's website to apply for admission. You'll be very happy to know I was accepted!
As part of my acceptance into community college, my next step was to take an english and math skills assessment so they would know where to place me for the classes I wanted to enroll in.
But see here's the point where I need to take a tangent: I'm not great at math. Never have been. I did almost perfect on the english portion of my SATs and below average on the math section. Not much has changed since then. I'm one of many women who were once girls who struggled from lack of self-confidence in my math skills. I never had an aptitude for it. I probably could have excelled at it if I had been given the right time, attention, and tutoring I needed at the point in my life when I was struggling. I probably could have overcome that slump. I didn't. Instead of getting mentorship in mathematics I was ignored. The only class I ever failed in all my school years? Algebra 1. From there I generally got C's in my math classes and A's in all the rest.
To be honest, I thought nothing of it at the time, and it didn't affect most aspects of my life at all. It did affect one thing greatly: my choice of career path.
At the time I was so excited and interested in the Internet and technology. I was teaching myself HTML by backwards-engineering friends' Geocities websites. I was spending hours and hours on the Internet as a Geocities community manager. I was talking to internet friends on ICQ and learning how modems worked. I just never saw myself doing that for my career.
When it came time to choose colleges and majors, I chose a communications field. I knew I was good at that. I left behind anything having to do with STEM and went on to pursue my Journalism degree. I ended up back in technology through a confluence of events and accidents and personal connections, not because I set out to be here, but because I had a lot of friends in the field and an ability to capitalize on opportunities that presented themselves to me.
Now here I was, late last year, sitting in a small, quiet room preparing to take a test of my english and math skills. How did I do on that test? Almost exactly as well as I did on my SATs in my last year of high school:
Normally, this would be a fun data point! An interesting amusement that I have kept almost exactly the same aptitude for english and math as I had in high school. I would think nothing more of it.
Except for one thing.
I tested into whatever english-related class I wanted to take:
But I tested into remedial math:
And to finally loop this all back to the story I wanted to tell: I wanted to enroll in Intro to C++ at this community college. Only problem? I didn't have the prerequisites for that class based on my test scores.
(You'll see that the C++ class requires Math 103. I tested into Math 101, two sections behind)
I'll cut to the chase here: I would have had to take two sections of math classes and pass them before I would even be allowed to enroll in the Intro to C++ class.
All this to even decide if I'm interested in programming! And here's the kicker: these math classes most likely wouldn't even determine if I will excel at development work. As someone who has worked in the technology industry for 12 years and with software engineers on a daily basis, I know that logic and reasoning are much more important skills to success as a programmer.
I'm a well-resourced person: I have time, interest, money, and a community of people (many of whom read this blog) if I want to pursue efforts in the technology industry. I know that the barriers I outlined above are artificial. I want to start a discussion about breaking these barriers down, and I have the ability to start that discussion.
But let's think about the woman who's just finishing her last year of high school and is trying to decide if she wants to major in computer science in college. Maybe she decides to take that Intro to C++ class at that local community college over the summer to see if she likes it before declaring a major in college. What does she think when she experiences these barriers to entry?
She thinks, "Oh, I've never been good at/liked/been told I can succeed at math, and this seems to be a huge component of learning programming. I guess it's not for me!" So we have lost another person to this barrier that we shouldn't have. These experiences are happening to people all over the world right now, and they don't have to be.
We have started the conversation about getting more people into technology from diverse backgrounds and interests. Let's have part of that discussion be around what barriers still exist for those people, particularly when they don't have to exist at all. Let's break them down.