Like A Girl

Pushing the conversation on gender equality.

Code Like A Girl

Teaching the Impossible

This is my story of teaching at Girls Who Code’s 2017 Campus Program at the University of Colorado, Boulder.

In Reshma Saujani’s TED talk, she told an interesting story she heard about students in a college-level programming class. The professor found a striking difference between how male students, as opposed to female students, reacted to their own programming assignment failures. Take office hours, for example. Firstly, it takes a whole lot of confidence to show up and ask for help.

Male students came in proudly with their flawed work, believing that their code really should work, and that something was inherently wrong with the computer. Female students were reluctant to even show the professor their partially correct assignments. Males were more likely to question what was wrong with the computer, or why their seemingly perfect work wasn't executing. But women weren’t so easy on themselves.

They asked, “what’s wrong with me?”

Here’s the TED talk excerpt.

It turns out that our girls are really good at coding. But it’s not enough just to teach them to code. My friend Lev Brie, who teaches intro to Java at Columbia University, tells a story about his office hours with computer science students. The guys who are struggling with an assignment will come in and say “Professor, there’s something wrong with my code.” The girls will come in and say, “Professor, there’s something wrong with me.”

Reshma Saujani has taken on this seemingly universal lack of confidence as her life’s passion. By founding Girls Who Code, she is not only giving girls technical skills that will give them a foot up in the tech industry, but teaching the unteachable.


People think confidence is something you have to be born with, a congenital blessing that graces CEOs, Presidents, and other very-rich-important-people. But I think confidence can be taught. It’s something that comes when a person is comfortable with taking risks, and taking a chance to fail. And that’s precisely why women chronically lack confidence at all levels of the tech industry corporate ladder. They are more comfortable with being a complete failure, not even attempting a project, than being subjected to the embarrasment of being flawed. Flawless is impossible, but it’s the ideal girls are brought up to conform to.

I see this in all levels of women. From young girls, just beginning to learn how to code, all the way to my own mother, who is a senior-level engineer, women are reluctant to take risks and absolutely terrified to fail. This is precisely why empowering them with confidence, and teaching them that imperfection is not a fatal flaw, is critical.

The past few weeks, I was teaching a group of girls an introductory web development class. Once they caught on to the basics, the girls absolutely rocked it. Websites with highly advanced features, like hamburger menus, responsive CSS design, and mobile website versions were presented on the last day of class. However, it was a rough road for these girls to get to that sort of proficiency in programming.

For all of us who have learned how to code, we know it’s often an endless loop (no pun intended) of failing, trying again, failing again, and slamming our heads against our keyboards until something finally works.

During the first day of my web development course, I asked girls to try to define technical terms before giving them the answers, by a call-on-hands procedure. This didn’t work at all. In fact, the girls, for some reason, were so incredibly shy, that they were hesitant to give their name and grade for an icebreaker game.

You could almost hear the crickets as the girls gave me blank looks, unsure of what to say or do. Come on! All you have to do is say your name? I was so frustrated with them. I desperately tried to liven up the room, introducing myself ecstatically. I was only met with more blank stares.

My frustration was curbed when I remembered my own first programming experience, absolutely mortified when I got called on in my AP Computer Science class and answering a question wrong. I was one of only a handful of girls in the class, and I was desperate to put on a facade of intelligence, and pre-obtained computer programming talent. As a result, I would never attempt a problem, or answer a question, unless I knew for sure it was right and had checked with my gal pals for accuracy.

This detrimental habit of not taking the opportunities given to me in class is for the same reason women don’t speak up in the boardroom or change the topic in the Slack channel — the fear of imperfection.

On the second day, I tried something different. Instead of fruitlessly calling on the students, I assigned them each a number and used a random number generator to pick a girl to answer the question.

“Okay, does anyone think they can tell me what JavaScript does for a web page?”

Of course, nobody thought they could answer this.

“Number twelve is going to answer the question!”

The selected student opened her eyes wide, in shock that she had to give an answer on the spot. Her fear of failure, of giving the wrong answer, was almost tangible. I wanted to burst out and shout, “COME ON GIRL! YOU CAN DO THIS! THERE IS LITERALLY NO WRONG ANSWER!” but instead, I squeaked out a pathetic “got an answer for me?”

I was stunned by the accuracy of her answer. To my surprise, she perfectly defined what JavaScript was, and even topped off her answer with a few examples of web features it was responsible for.


Why on earth would this girl, who knew the exactly correct answer, not raise her hand? Is she scared of getting bullied or something? I mean, the girls in the class didn’t seem like Regina George types to me. The real underlying issue here was, as you guessed it, a lack of confidence.

This is why I believe that teaching computer programming is essentially teaching confidence. When children, especially girls, go through the iterative road of learning how to code, they are exposed to failure in healthy dosages. After failing and failing, but then eventually succeeding, students learn to persevere, and learn that they will eventually succeed.

I definitely saw proof of this at the end of the web development class. The girls presented their final projects, which were incredible: a series of political quizzes to stymie voter disengagement, a website showing data visualizations on school drop-out rates for minority groups, a hangman game about bees — they were endlessly creative.

But here’s the best part — in every group’s presentation, they mentioned failures proudly. Without any hesitation, and with an optimism to come back and fix these in the future.

Teaching girls to code is teaching confidence. It’s definitely teachable.

Prianka Subrahmanyam is a 17 year old from Novi, MI. Her passion to teach computer programming has led her to work at Khan Academy, Thunkable, Girls Who Code, and Code Fellows. You can read more of her work at