Last Updated on
Business has never been so dependent on code as it is today. In a world where almost anything can be programmed, should all marketers learn how to build software?
There’s much to be gained when marketers learn to program. Improvement of business operations, better teamwork across tech and business teams, workflow automation, the list goes on.
Skilled software developers with a deep understanding of business are some of the most valuable people on the job market today — though you’d rarely be able to hire any of them, as they’re usually busy running their own companies.
The same goes for marketer jobs. Marketers who code are the most sought-after, and it’s easy to see why. For one thing, they don’t need to hire an IT consultant whenever software acts up.
But there’s a deeper reason at play. Miscommunication between business people and software developers is a bottomless void that consumes a lot of money. Money that would be better spent elsewhere, but it gets wasted either because marketers don’t understand technology, or programmers don’t understand the business side of what they’re building.
In a conventional business setting, there’s a clear divide between what software developers do, and what marketing does. But that convention is far outdated.
Ultimately, both teams are part of one business, and the goal is the same as all other businesses in the game — grow and prosper.
The convention of dividing tech from marketing is something that hurts all efforts to accomplish the goal of the business. It erodes the company’s culture. There are several teams fighting over budget, arguing over who’s more important, essentially competing in a race that can only be won by running in unison.
In order to run in unison, your team shouldn’t be in competition, but rather operate as partners. Good partners — whether in business or in life — are those that take the time to understand your point of view, and strive towards compromise in order to move past obstacles faster.
Getting on the same page
Anybody who’s ever worked at an early-stage startup, probably knows the joys of doing a different job every day. Compared to doing the very same thing day in and day out, a young startup is an environment in which you actually get to have fun while building a business.
There are many great examples of it, but there’s one I particularly like. In one of YCombinator “how to start a startup” lectures, Kevin Hale from Wufoo talks about their whole team doing customer support. There was a time when they didn’t have a separate team, because everybody in the company would help customers with the product.
He goes on to say that one of the biggest benefits was that the whole team gained a deep understanding of the user perspective. Plus, it humanised the users. When building software, it’s easy to see users as numbers in a chart. But getting to hear how people use the product, and helping them solve issues, builds empathy towards users and boosts team morale.
This early-stage startup magic is usually lost as companies grow. It is a mystery that I’ll leave to Harvard Business Review to uncover.
But by learning to program — and conversely for programmers, learning about marketing — you can regain some of that magic in your work even if you’re stuck in a rut of doing the same things.
Because guess what – if you’re doing the same things over and over, your brain has developed a precise process of how to do them. That’s a huge asset for you, but how do you take advantage of it?
You know the answer: programming!
And this is one of the main reasons why learning to write software is so beneficial. It allows marketers (and anybody else whose job involves doing stuff on the computer, really) to automate manual tasks that take a lot of time to complete. Programming allows you to save a lot of time.
You can spend that time doing what humans do best. Being creative, coming up with better marketing strategy for your product or service. Additionally, thanks to understanding technology better, you can communicate with your tech team without misunderstandings.
Start with HTML (which is not a programming language)
HTML is now a basic skill for marketers. There is absolutely no reason why every marketer involved in SEO, content, or website design shouldn’t know HTML.
But let’s not get ahead of ourselves. For marketers who aren’t familiar with HTML at all, learning it can be a mind-blowing revelation. And it doesn’t take long to get familiar with it. Here’s a couple of good starting points if you’re interested:
- Introduction to HTML from MDN Web Docs
Once you’re familiar with HTML, SEO becomes much easier to understand and, in certain cases, you’ll be able to do SEO without using any plugin or asking your developer for help. Just find the right .html file and get into it.
For your first serious programming language, try Python
Python is a great first choice if you want to get into ‘real’ programming. It’s a mature language with a rich ecosystem. Being one of the most popular languages, it’s easy to find support when you get stuck, and there are a lot of educational resources.
For your first experience with Python, few things come close to Automate the Boring Stuff with Python. You can read it online for free, and the author, Al Sweigart, will take you through the basics of Python, all the way to writing several scripts that you can then use for work.
The author admits that he doesn’t always use best practices, instead opting for the easier, albeit less elegant, solution. But if you’re a beginner, this is a good thing because it’ll get you going faster, and you’ll be able to have fun writing code without pondering high-level programming concepts.
Once you finish your first scripts, the best way to keep learning is to come up with your own projects and turn them into reality. Google is every developer’s best friend, and you’ll become a Google power user through this process (yet another useful skill!). That’s because you’ll be searching for inspiration for projects to build, and then you’ll be combing the web over and over whenever there’s an obstacle in your way, until your project is finished.
Get friendly with APIs
What is an API? It’s essentially an enclosed feature of an app which you can call upon in your own code. For example, you can use the Facebook API to add a Facebook comment section to articles on your blog. Or use the Gmail API to search and send specific messages (for instance, customer support requests) to a spreadsheet.
Here’s the thing, though: it’s not easy. At least not for non-programming marketers. If that’s you, integrating a third-party app using an API is something that’s best left to a professional software developer.
There are workarounds, though. Services like Zapier or IFTTT enable non-programmers to build marketing automation workflows across several different apps, all without having to write any code.
It’s a good alternative, but only up to a point. There are a lot of cases where it’s better to integrate an API manually. Thanks to the rich documentation that comes with all major APIs, this shouldn’t be too hard even for junior software developers.
So if you take up programming, and keep learning for half a year, you should be able to integrate an API by yourself.
Programming is a language anybody can learn
Professional software development requires knowledge of coding conventions and principles, how machines work, how networks work, how to do version control, how to test for bugs, how to report bugs, how to write documentation, how to write elegant code… it’s not an easy job.
Starting off as a marketer with little to no programming skills, you shouldn’t go into this expecting to become a pro software dev within a few months. That’s just not how things work. If you put in a lot of work, you might be able to reach junior software developer level.
The main thing is that becoming a master developer shouldn’t be your goal. Start with something easy, like HTML. Keep learning about how websites are built, and move on to writing simple scripts with Python to automate your daily work. These are things that you can easily achieve within a few months, and if that’s where your programming journey ends — great! You’ve still done a lot, and the knowledge that you’ve gained will benefit you immensely.
But maybe it won’t end, and you’ll actually end up becoming a master software developer in a few years? The possibilities are endless, so try for yourself. Good luck!