We are seeing it more and more, PSA’s and sites like Code Academy urging everyone to learn to write code. We are also seeing a new class of ‘entrepreneurs’ who quickly realize they lack the coding skills required to make their idea a reality. With this increased interest in programming, the same question is frequently asked: “Can I learn to code?”
There is a problem with this question however, and that is the definition of “code”. Lets look at the boring dictionary definition:
Code – to translate (a program) into language that can be communicated to the computer. Reference.com
Going off this definition, then the answer to the question is: Yes you can learn to code. You can learn how to put words and numbers into a computer and have it understand the instructions. In fact, put some equations in excel and watch the output be computed. Congratulations! You technically just wrote code. If that’s the answer you were looking for, read no further and have fun being a ‘programmer’.
Kept reading? Good. We had to weed out the readers who were seeking instant gratification; don’t expect that with programming. At the most basic level of programming everyone can do it, but if we look at the real world of code, then the answer becomes less clear. I would argue the real definition of knowing how to code falls into two camps: Hobbyist and Professional.
Your success when it comes to learning how to code depends on what your aspirations and motivations are. If you want to learn to code to be a software developer, then buckle up and prepare for a long, bumpy ride. It is going to take a lot of practice to be proficient enough to be a real professional programmer (we are talking years here). You might be able to fake it for a while, or potentially find a job that only requires very simple programming, but good luck building a career with that. Programming is a special craft, and a very complex one. Just like medicine or law, professional programming requires a lot of special knowledge and experience.
However, don’t let that discourage you, many of the best developers started programming as a hobby (this author included). The beauty of code is that anyone can attempt it, and trial and error is often one of the fastest ways to learn. Trial and error with medicine might kill someone, and with law may result in incarceration. With programming the usual worst case is you lose some data. If you pick up programming as a hobby, and truly enjoy it, then you will automatically become proficient. The desire to learn, and the need to make something, will lead you down the path to becoming a real developer.
If you want to learn to program solely for money, or so that you can create your startup idea on the cheap, I would advise against it. If you don’t love programming, then you don’t want a job doing it. (Seriously. I love programming and I still have days where I try to figure out what else I’d be good at)
So when does a hobbyist consider themselves a programmer? I’m going to say it’s up to the individual. I can swim and throw a football, but can I swim like Michael Phelps or throw a football like Peyton Manning? The answer, in case you are wondering, is f@#k no. That’s why I don’t go around calling myself a swimmer or a quarterback. Obviously you don’t have to be the best to ‘know how to code’, but before thinking you do, take a moment to do a serious self assessment. It’s ok to say you program as a hobby and that you ‘know how to code’, just be aware of the difference compared to a professional.
So to finally answer the question: Yes, you can learn to code if your heart is in it and you are eager to make to a computer do your bidding. If you have a true passion for programming then experience, money, and opportunities will follow. I encourage you to check out sites like Code Academy and to give programming a shot. If you don’t like learning it, you’re not going to like doing it for a living or a hobby.
Coding isn’t for everyone, and that’s ok.