by Trevor Fox
The answer is “Yes.” You’ve gotten this far, and you’re in a good place. You’re ready to take the first bold step toward building a valuable new skill and even better: achieving IT independence. No matter what you choose, as long as you move forward, you’ll be thanking yourself in no time.
I started learning to code six years ago after a failed professional baseball career, and I maintain that it was one of the best decisions I’ve ever made. At the time I was working at a web agency as a digital marketing generalist. I would find myself hacking spreadsheets to death until they resembled the automation I was looking for or running into dead ends when I found myself staring into small text areas that would allow me to customize some bit of code in a CMS.
I was surprised and grateful for how rapidly I was able to apply what I learned. That’s what I want to help you with today.
To get the most out of your learning path, the value is all about applicability. So the first question is, what problem do you want to solve with code? Necessity is a strong motivator and will keep you focused. Starting with an end in sight is the right way to go.
Application: What problems do you face?
Though the applications have broadened, each programming language has more immediate value in some domains than others. And you will be more motivated to learn if you know you have a good problem to solve.
I am looking at this from the standpoint of a digital marketer or digital analyst who depends on data to be successful at their job — because that is where these programming languages will be immediately valuable. So consider your access to data:
- Do you have access to a relational database?
- Do you need to access, interpret, manipulate, and move data?
- Do you need to track website analytics?
A Case For SQL
If you said “Yes” to 1 and “No” to the others, then the answer is easy: learn SQL. Not everybody is working in an environment that they can use a data warehouse for analysis (even though it is easier than ever to set up a data warehouse) so if you are you find yourself repeatedly exporting lists from marketing or e-commerce or applications asking IT, a DBA, or engineers to get data out of a database or data warehouse for your analysis, hurry up and learn SQL! You’ll thank me in a few short weeks.
I recommend Duke’s SQL class on Coursera to go from zero to usable SQL skill in a less than two months. With that class and a couple books about PostgreSQL, I learned enough to record this demo with ad network data.
There are even good Android/iPhone apps that will help you learn the syntax through repetition. The class I recommend below (Data Manipulation at Scale: Systems and Algorithms) for Python also touches on SQL so it’s a double whammy and Python Anywhere also features hosted MySQL, so that’s a double-double whammy!
A Case for Python
If you said “Yes” to 2, I would recommend Python. It is straightforward to learn and provides a great foundation for learning ANY programming language. You can use it to access and interact with API’s which can substantially increase the scale of your marketing activities. For instance, Facebook has an API for Facebook ads what allows you to create and manage campaigns programmatically. That is like a magic wand for marketing!
BUT you will find that you have to learn more than just the basics to do anything that interesting. Python runs on your computer or a server, so you have to learn how to run the code on top of how to write the code.
If you are ready to set your mind to it and head down that path, I recommend starting with Udacity’s Introduction to Python Programming, It is perfect for digital marketers because it introduces the concept of, and teaches you to build a very simple web crawler (think Googlebot). After that, Coursera’s Data Manipulation at Scale: Systems and Algorithms (Week 1) shows you how to do Tweet by accessing the Twitter API with Python. Fun (and scary) stuff!
When you want to try some practical stuff, check out Automate the Boring Stuff for interesting projects you can do on your computer, or Python Anywhere or AWS Lambda to get started running Python in the cloud!
The quickest way to apply Python toward digital marketing is to use JuPyteR for data analysis, but that still has a bit of a learning curve so beware. Python for Data Analysis is a great way to get started in that direction.
I hope that at the end of this year you will look back on your accomplishments and be proud of your commitment and the applicable, career-growing skills you’ve acquired. If you want to learn more about web fundamentals for digital marketing check out the open source guide. If you have more to share, please contribute. Good luck, and get started!