Programmer fallacy

We all live in a world full of misinterpretations, who hasn’t experienced a friend or acquaintance come up to you and say something that you are like:

“Mate, sorry but that’s just not right. Where have you heard it?”

And he goes on to explain that someone told him, he read somewhere or empirically came up to that conclusion. While there’s nothing wrong with this approach, most times people will be wrong or just not completely right.

It is no different when people think of what it takes to become a programmer. While it is inevitable that some personalities traits will give you an advantage over the others, as this excellent study shows, it is by no means a decisive factor.

A lot of people think that they don’t have the capability to learn coding, because they are not conscientious enough, not patient enough, are too anxious, are bad with numbers, and the list goes on.

Although, some of these attributes will help you on your day to day work, they are not what defines whether you are to become a programmer or not. The only one who can decide and make it happen is you, and the decisive factor whether you can accomplish that goal is perseverance. I say that because most times when programming you will have to deal with uncomfortable situations where your code is failing — or even worse — you haven’t written a single line of code, but the damn plugin you need to install to follow that tutorial no longer works the same way. Bastards.

When I say perseverance, what I am really saying is that you must keep up and never give up, programming is a constant roller coaster, when you solve a problem you are like..

The next minute you realize you have another problem to solve and you spend hours beating your head against the wall, just like this dog…

All I am trying to say here, is that people will think and say a lot of things without actually taking the time to research and get to know what they are on about. So when you tell yourself that you cannot learn this because your personality is not favorable or you are just not smart enough, kick those thoughts right out of your mind, pull up your sleeves — or should I say — open up your computer and google any of the names below, find the best fit for you, and get to work.

  • Code Academy
  • Khan Academy - Programming section
  • Code School
  • edX
  • Coursera
  • Udacity
  • Hour of code
  • MIT Open courseware — All Computer Science courses
  • (Costs more than others, but its worth if you are willing to make the effort and invest in this)

To conclude, coding is an amazing art that is constantly evolving, it is no secret this is one of the most exciting and challenging areas at the present day. If you have the perseverance discussed above, you will have a sea of opportunities for you to work with things ranging from building software for a chicken ranch to building an awesome app or game that you really want to exist. So, if you feel that is what you want to do of your life, waste no time and get to work now, it will most certainly reward you in the future.

Thanks to Philip Sampaio, Bruno Gomes, Lucas Oliveira and Fabiano Beselga for reading a draft of this.