3 non-technical lessons I learned from coding
I decided to study web development with a blind confidence I attribute to graduating university with a Political Science and Communication degree (admit it, we were all a little bit smug with our capabilities). Growing up, I excelled in math and my sister is a computer engineer from the dot com boom. Other than that, I had no technical inclination besides being a recreational gamer -- and by gamer, I mean Mario Kart (that counts, right?)
Once I graduated with my Bachelors degree, the real world seemed a lot more daunting and this Onion video hit a little too close to home.
I knew I needed a way to differentiate myself from the pack, so I decided to go back to college to get a post graduate degree in Interactive Multimedia which consisted of web development, graphic design, animation, video and more. Now after a few years of professional experience under my belt, I decided to look back on three lessons I learned while studying a technical degree.
Visualizing the fruits of your labour is incredibly gratifying
There’s nothing more rewarding than being able to create something on your own: be it a painting, a piece of furniture, writing an article, hosting an event or designing a website. Each of these outlets allows you to reap the benefits of your labour in a physical space.
For me, that moment of realization came when I built my ActionScript Justin Bieber mp3 player for class. I was slaving away for hours trying to make the thing work, and when it finally did, I happily showed it off to any and all who would listen. I spent 4 years studying political science and communications in university, two areas of passion for me, and no essay in my entire university career made me as proud as that Justin Bieber mp3 player.
You need bones before you put on skin
This is an analogy I find myself using quite often. I run a community meet up in Amsterdam for women in technology called SheSharp and we have numerous people attend our events with varying educational backgrounds. A question I’m often asked is, “How do I get started?” (more on that another time), but the short end of a long story is start small and scale up. I see a lot of people jump right into Python or Ruby and feel overwhelmed, having not even viewed the source code of their browser before. Although it isn’t as sexy as learning a web development language, HTML and CSS are important stepping stones that shouldn’t be glossed over. You can build a basic web page using these elements. Many beginners I’ve connected with have attended development bootcamps and end up dropping out, often because these crash courses assume the entry level of competence is higher than it is (i.e. HTML/CSS on the first day, and then JavaScript/PHP on the second day). You can’t expect beginners to retain the knowledge or skills when the class moves at such an accelerated pace. You can be a programmer without using HTML/CSS, but these foundational elements help you re-wire your brain to think like a developer, which is important to master before you begin to tackle the logic behind object oriented programming.
This sentiment holds true in many other aspects of my life as well, especially when it comes to juggling a jam packed schedule. You learn to prioritize the big things and get the basics covered before you overcomplicate things. Web development makes you think of things in a more structured environment, which isn’t necessarily the case in other areas of study.
There’s a difference between producing and learning
If I could go back in time and paint a picture of what it was like for me in university, I can only say with the utmost honesty that I was very rarely in a state where I could produce good, meaningful research papers. Although I never waited until the last minute to finish my assignments, I was always writing papers under the most absurd circumstances, playing rounds of beer pong in between paragraphs or having friends over to watch the latest episode of Intervention while I wrote. University taught me that I was self-disciplined enough that could write through a hurricane, and even though I did relatively well in all my classes, I rarely retained any knowledge of what I was writing about.
And then everything changed.
Suddenly, when you’re scouring your screen searching for that out of place curly brace, the learning curve becomes far more real. You realize you cannot waste time because you need to find a solution to your problem and unlike writing a paper, which has multiple solutions, your code has one end result and that is to work. This allows you to really take ownership of your learning and to find meaning behind how you got something to work (as much as developers can, let’s be real). This also gave me the confidence to start learning new things on my own, tipping my toes into new languages or making new web parts, or just exploring.
I’m not hating on Liberal Arts degrees because they also serve a purpose and I took a lot of value out of my time in university — especially when it comes to critical thinking and challenging societal norms. However, whenever I reflect back on one career defining decision I’ve made, I will always cite learning to code as that moment.