At the risk of contributing to a cliche, I’m going to talk about why learning to code has been beneficial to me as someone that has worked predominantly in the digital marketing space for the last ten years.
First off, let me say that I don’t think that ALL marketers need to learn how to program. They definitely do not all need to learn how to be full-stack developers that can build Node applications or learn advanced front-end frameworks like React or Ember.
While acquiring advanced skills, won’t hurt you as a marketer, I’m talking more about the benefits of basic technical proficieny, which is becoming more and more useful for just about everyone (and also easier and easier to acquire).
I’ll start with an anology to my other (as-of-yet-unpaid career): filmmaking. As a director, I don’t need to know enough about lighting and cinematography to actually be employable as a cinematographer. But it helps a lot to be able to speak the language of cinematographers – I can communicate with them better, I understand their work better, and I can understand the sorts of tradeoffs that are inevitable when making choices about what cameras and lenses to use, and what lighting package to use.
Understanding the tradeoffs and nuances helps me make smarter decisions that affect the outcome of the film. And there’s a huge benefit to being conversant in the technology stack for a production.
OK, so you work in marketing. Why should you learn to code?
Even if you’re on a relatively large marketing team, it’s likely that at some point you’ll have to edit an email, the HTML in a WordPress page, or an element on a landing page builder like Instapage.
Yes, you can get a developer to help you with this, but minor HTML and CSS changes are not going to excite them, and it’s a waste of resources to have a full-time developer tweaking the HTML in an email.
You’ll be more valuable by being able to handle these small changes on your own (and you’ll get your work done faster). Learning basic HTML and CSS is easy. It’s so easy that some people probably wouldn’t even consider it coding per se.
Knowing your way around HTML/CSS, even if it’s not enough to build your own sites/pages from scratch, will make you more effective as a communicator and help you do more with the tools you use.
Marketing is heavily driven by analytics and you can do a lot more when you understand a little bit about how code works.
I also remember writing a .split() function that parsed the page path to determine if a visitor was on a category page or a product page on a client’s ecommerce site.
Yes, I could’ve asked a developer to help me with that. For those first few scripts, I definitely took way longer to figure those things out than just asking a developer. I think that switch statement probably took me three hours, which is really funny to me now, especially considering my agency was billing my time at $155/hr (for a billion dollar company, not a mom and pop).
But once I got comfortable and proficient with basic things like that, I could write my own scripts quickly, which saved time and money in the long run.
And more importantly, it empowered me in new ways – it’s amazing how my thinking changed with even a completely minor level of coding ability. I started seeing new ways to track user behavior on websites with the new tools I had at hand, which made me a more effective analyst.
GTM out of the box is a nice time-saving and organizing tool for tags. But there’s so much you can do with it once you know how to work with custom variables, push data in the the dataLayer, and extract information from the DOM.
Simo Ahava’s blog was an incredible resource for learning GTM at a more advanced level (I once filled out a feedback form in GTM and a product manager replied to me and told me I should just read his blog).
Even if you’re just using Google Analytics, it’s almost essential to undertsand basic regular expressions. They really come in handy when you’re creating segments, writing goal conversion rules, or just trying to filter reports based on URL rules. That has saved me hours of time that would’ve been spent exporting large reports to Excel and then editing out by hand the URLs I didn’t want to look at.
When I first started learning about RegEx, it was really hard to grasp, but definitely worth it. Again, I don’t consider learning RegEx the same as “learning to code” but in a way it is. It’s learning a way to talk to software in a way that automates a manual process.
And as marketing becomes more data-driven and you move up into larger organizations, getting the data you want requires digging into non-user-friendly-for-non-technical-people places like Looker or Tableau. Understanding how to write SQL queries and the basics of databases is immensely helpful in these situations.
You might have a data team that fields requests like this but that was never satisfying for me. In my experience, I’ve found that the most interesting insights weren’t the result of writing a clearly-defined question but rather by digging through data, looking at it in different ways, and spotting trends or anomolies.
This kind of research is really hard to hand off to someone without domain expertise. Having the technical ability to do your own digging makes you more effective.
It’s not just analytics tools. For instance, you can now write scripts for AdWords to run maintenance on your account. Being able to automate the grunt work makes you more efficient and more valuable.
There’s a big difference between “hey, can you fix this thing?” and “hey, I’m trying to pass data from x to y. I already tried these two solutions and neither worked. Can you look at what I’m doing and see if there’s something I’m missing?”
I’ve found that developers trusted me more when they saw me as technical. And being techincal allowed me to frame problems and solutions in terms that they were familiar with, which led to faster solutions.
There’s also a general benefit to having developers trust you. I remember working at an agency in Chicago about five years ago when all the developers wanted to vet every tracking code we put on a website. It was basic stuff like Optimizely or Google Analytics scripts.
I’ve found that that happens to me less now. I don’t know if it’s because developers are just more aware and more comfortable with the need for things like analytics and A/B testing, but I think it also has something to do with a higher level of trust because I know what I’m talking about (at least relativley speaking).
You might really really love it and get hooked and want to learn as much coding as possible and even decide to switch careers. Not talking about anyone specific here :)
For most marketers, if they do decide to go to a bootcamp or teach themselves, getting a job as a developer has the potential to much more lucrative, depending on your experience level and role as a marketer.
A lot of developers are really good at building things but not very good marketers. They don’t know how to hack growth and get people to use their app, even if it’s a great product.
If you do have those marketing skills and you can build something or help someone build something great, then you’re going to have a much higher chance of success as an entrepreneur, just because you’ll be able to acquire users from the start.
We’re living in a world where technical skills are only going to become more important.
There’s a lot of potential for AI to come in and disrupt marketing. Some jobs will disappear or become technical in ways that they weren’t before. It’s not there quite yet, but it’s on the horizon.
Google AdWords is using more and more AI as the years go by (sometimes these new “features” are just opaque ways to get you to spend more money but that’s a different post). The rise of programmatic has shifted the human-software balance in media planning.
I don’t think that all of marketing can be automated. Communication, writing, and empathy are essential skills that AI will probably not be able to make obsolete in my lifetime.
That being said, the probability of software automating me out of job is definitely greater than 0%. There’a lot of value in staying above the API.