Why you should learn to code.

This has been bothering me for a while so excuse me while I rant. So you got a shiny new job on a digital team at some company, who have entrusted you with the company checkbook and expect results online. The only problem is that the only thing you know how to do online is check Facebook and send lots of emails. But it couldn't be that hard, you can hire consultants or agencies to help you all you have to do is fake it till you make it. In the last year, I have talked with or met more members or leaders in "digital" teams where the people responsible for making the decisions have had little or no experience with the technical aspects of the projects they were building or worse how to even determine the implications of their decisions.

Having a technical background I often find that a lot of budget and project issues arise because the person in charge doesn't fully understand the cost. It has been many years since I have written code professionally but I take on new projects in my personal time that require I write some code all the time because I believe it makes me better now that I work in marketing.

This year alone I wrote a prototype iPhone app, a web based dashboard, a data extractor for my dashboards and numerous projects using ruby and python. I do this to keep my skills up to date but to also solve three problems I commonly see:

1. People without technical competence don't understand the costs of their asks or decisions.

When you decide to hire an agency or work with your internal IT/web teams to build out a web project, how do you know that what you are asking for can be built in a way that it achieves the company's goals and objectives. People who have written code are often better able to assess the effort and understand the potential risks of any project. The worst thing is the far too common over promising that can come when someone without a technical competency is making the decisions. I have seen and heard of thousands of dollars of overspend occurring to make up for the decisions of individuals who didn't understand what they were committing to.

2. Keeping technical skills up helps you to speak the right language

A constant complaint I had when I was working as a developer was that people would throw their requests over the wall at me and my teams without understanding the impact of the asks and without involving us in the process at a point in the project when we could make the most impact. As someone who understands the technical challenges often involved in the process working on software and the web it is often easier to work with the IT teams and developers when you can more clearly define the outcome required by a set of code.

I am surprised by the amount of people I meet who work in business development, marketing, or strategy on web teams who have little to no ability to speak the developer language and therefore frustrate and fail to build a strong collaborative environment between themselves and the people who are building the tools they need to be successful.

3. Learning to write code will make you more self sufficient

As someone who can write code, I don't always wait till IT or developers can build me tools to make me more efficient. While I may want to get a more robust tool to do a job, I can't wait till some future date when IT gets around to it. This is often the case when I am working on dashboards for tracking my efforts. Often getting at the data necessary for reporting on my work can be time consuming, I can either spend my time pulling data or doing the activities necessary to create better results. So being able to program has allowed me to write scripts and tools that make me more productive.

Stick to print or TV

I am at a point that I want to tell people who think because they have been in creative roles in the past that they can manage the web that they should stick with roles that keep them out of the digital space. Being on Facebook is not a qualification for developing a web strategy, just as being able to balance a check book doesn't make you an accountant.

It's amazing! If you do work in the digital space and have found yourself struggling with IT and running into the issue of over-promising and under-delivering, make it a priority to learn to code. There are so many ways to learn from picking up a book, to codeacademy, to khan academy. The best thing you can do for our industry is to get busy learning how to make things.