On learning to code

I’ve fallen off the ‘learn to code’ wagon 3 times now.

My first experience started by tinkering my Myspace page through copying and editing HTML and CSS from tutorial sites. This lead to a short project building my own hyperlocal website covering ‘whats on’ in my area. Great fun, but it went no where. I took an intro subject at University learning C++ for one semester which I really enjoyed, but then transferred to a business degree – one of the bigger regrets of my life. When Codecademy was released I jumped on board and made it halfway through a JavaScript course.

The gamification aspects worked great for a while (especially streak) but eventually you realise they’re treating you like a 5 year old and giving you little gold stickers for your work, and you’re not actually building anything. That wasn’t enough to keep me interested.

Why learn to code?

Many people have weighed in on the pros and cons of learning to code:

I don’t want to be a developer. I want to be able to manipulate data to get run my own experiments, get questions answered and act on results quickly. Although not everyone working in tech needs to know how to code, it is incredibly important for non-engineers to have at least a broad understanding of technology, especially when contributing to or having your own resource-starved small startup. Even if you’re on the business side of things, you greatly alleviate the burden on your technical colleagues by being able to pitch in (e.g. pull customer lists from the database, design and code the HTML for an email campaign, write an automating script). It’s useful and cost-efficient to know how to be able to put up a simple webpage, or build a prototype that’s good enough to evaluate the merit of your business idea (but then again, these days you barely need to understand code to set up a non-technically innovative MVP).

Tools like Mixpanel, Optimizely and Kissmetrics require a bit of code knowledge to really maximise their use. They can be used without any customisation for simple tasks, however the more complex your experiments get, the more likely your own solution will work better. Building up my coding ability is a part of the skillset required to be a technical marketer.

How I plan on learning

I’ve picked Ruby as my language of choice because from what I read it seems like a good place to start. So far I’ve been working with these (free) resources:


This year I’ve put down ‘learn to code’ as one of my goals. Why will this year be different? I’ve found it hard to really ‘connect’ with some of the online training courses. I feel like i’m going through a random collection of tasks, but not actually building anything or actually learning – just regurgitating what they tell me. I’ve found the one’s I’ve stuck at show you in real-time what you’re actually building, like Dash from General Assembly. If I can continue coding on these enjoyable platforms often enough, I’ll build up the habit muscle and use that momentum to continue to learn more complex stuff.

  • http://brandrsn.com/ Brian Anderson

    15 months later, how you doing, Ryan?

    • https://ryangum.com/ Ryan Gum

      Good question Brian.

      I spent a few months going through the tracks on Treehouse which gave me a good enough base. But after a while, I realized being a jack of all trades is great when your by yourself, but as soon as you start to work in a team it’s better to specialize and work with people who can bring different skill sets to the table.

      So on a day to day basis I don’t really touch the code, but I can jump in and make changes when needed. I can do all my marketing stuff while the devs focus on building features and squashing bugs, but I can still jump in and make some quick optimizations. Works well.

      How about you?