Unlike the other men and women I work with, I have no computer languages under my belt. When semantics comes up in a meeting, I follow along based on the experience I have: most notably, French, German and some Spanish. So I’ve always been curious. Is learning a computer language similar to learning a foreign language? Or is it closer to math?
I decided to find out. This fall I enrolled in a HTML/CSS class for women with the Meet-up group Girl Develop It. Always the eager student, I loved it from the beginning. The familiar classroom dynamic, a teacher who asked us to introduce ourselves, the fresh text file ready for class notes. I am a sucker for school.
The first evening went well. I wrote enough HTML to scratch out a short page about my cats (cliche!). But it wasn’t until we were thrown into CSS during the second class that something clicked.
“Now type color:red;” the teacher instructed. I watched the text change on my new site. Half the room required the teacher’s assistance, so the women at our table set out into the great unknown ourselves.
“What if we typed color:blue; right after the red one?” someone asked. “Which one will it listen to?”
We tried it. The answer was not what we expected.
“Wait, how does it know all these colors?” someone else asked. “Let’s try to stump it.” We tried indigo, turquoise, puke-green. Some worked, others didn’t. Either way, it was fun.
We discovered borders and played with bold. Sometimes our guesses didn’t work. Puke-green, for those of you who don’t know, doesn’t work in CSS (at least not in plain English). Walls appeared in the mental blueprint of this language, limitations that set down guidelines as we played.
In the midst of all this trial and error, I suddenly felt the click. I understood just enough to ask the right questions. Having landing on a foreign planet, I was starting to explore the space around me, using logic to make educated guesses about how the language worked.
And that, my friends, is exactly what’s fun about learning foreign languages. We learn just enough to start making great guesses… and then we learn some more. The French student learns that “mère” means mother and “père” means father. “Grand-mère” means grandmother. Suddenly the student can make a great guess for grandfather. She can even guess at terms like great-grandfather (though that’s a bit trickier). It’s play with words, a type of scientific experiment. What works? What doesn’t? And how do I get from here to there?
I had assumed that learning a programming language was going to require the same muscles I’d used in math class in High School, muscles that have long since atrophied. But I was so pleased to find that HTML/CSS fell into the same rhythm as my foreign languages had. Sure, there’s vocab to remember. Sure, you’re going to get the grammar wrong. But given time and experience, I don’t think it’s too high a barrier to jump.
It’s easy to fall into the right brain/ left brain trap at work. Some of us have backgrounds in the humanities and others have been coding since Elementary School. But the spirit of coding – the spirit of inventing and playing and discovering – reminds me that we have similar outlooks. Developers, designers, strategists, no matter. As technologists, we are adventurers and explorers in whatever language we please.