Back to home

Is programming for me?

🇪🇸Puedes leer la versión en Español aquí

I know many don’t come to programming by simple chance, as happened to several of us. Some arrive because they had a childhood very close to video games or, in general, to electronic devices, like the computer.

As in any career, some choose it because their parents were dedicated to it, or because it was the career of the moment, the trendy career.

In other cases, because it’s the career that promises to get you out of poverty. And this last one is not a lie; it’s just that, as in any path toward “success,” it requires hard work and commitment.

⚠️ On several occasions I’ve been asked if studying programming “by the book” will allow them to change their economic situation. The reality is that learning to program doesn’t guarantee getting a job immediately, and although it’s a high-demand profession, it also has a lot of competition. If someone tells you that by paying for X programming course you’ll get a job right away, it’s most likely a scam.

You don’t need a degree

Something very nice about programming, unlike other careers, is that you don’t really need a university degree to practice it, and many of us are living proof of this. Although I started university, I never finished it, as I started working before I could graduate.

⚡️ This also means that there are fast programs like the well-known Programming Bootcamps1, where you can learn to program professionally in an intensive way in a period of 4 to 6 months.

Now, if you have the time and money to study a career like Computer Science, Systems Engineering, or any engineering in general, I recommend you do it.

🍙 Although most people I know who program come from engineering (not always directly related, like Electrical Engineering), I also know many cases of people who studied something completely different, like Microbiology or Accounting.

University is not just an experience to obtain technical knowledge, but also to develop fundamental skills like teamwork, self-learning, effective communication, discipline (a lot of discipline), conflict resolution, etc.

On the other hand, it’s a very enriching stage of adolescence and adulthood, because it usually brings together people from different cities and with different contexts, which helps you analyze things from other perspectives. This richness in diversity will simply make you open your mind and grow as a person.

I’m not saying that those who don’t go to university are deprived of this in life, but it’s true that university makes it easier and more natural, which in the end can become a competitive advantage in your professional career.

Solving problems

At the end of the day, programming is about solving problems almost always through the use of technology. I say almost always because, over time, you realize that the best solution may be the one that doesn’t require writing a single line of code.

What’s interesting about programming is that, unlike many problems in Real Life™, it’s not so costly to make mistakes or test assumptions, that is, iterate a bit. There’s even a movement in digital product development called “Fail Fast”2. This doesn’t mean that in all cases it’s valid to make mistakes, especially when the software involves in some way human health or survival, such as in space travel, aviation, medical equipment, or autonomous driving, among other areas.

So, if you like solving problems creatively, through a process that allows you to make mistakes to learn quickly from them, improve and iterate, programming and its work environment can be an ideal place for you.

Building a habit

This sounds obvious, but it’s worth mentioning: some vocations can be learned in a matter of days or even hours, and becoming an expert depends on repetition. But for the vast majority of careers that involve a creative process—and although it may not seem like it, programming involves a lot of creativity—it’s not just about repeating the same thing over and over again.

It requires the commitment to create a habit of study, practice, and getting out of your comfort zone. These are points that can apply to any job; however, the very nature of applications makes it so that in many instances your work can be automated or, in part, developed by artificial intelligence.

At the beginning of your career, tasks may seem like the typical work of fixing something and following instructions, but as you advance and gain experience, it becomes more administrative work: deciding what architecture to apply, what decisions to make, and even investing time in keeping up with the latest technological trends and constant change.

If you’re a person who likes to learn new things every day and is willing to make it a habit, programming is definitely one of those careers that always brings changes and constant challenges.

You don’t need to invest much money

There are many free programming resources, in different formats, such as books, videos, tutorials, and games. If you’re not sure if programming is for you, you can start by reviewing these materials in the format that’s most comfortable for you.

As I mentioned before, don’t fall into the trap of paying because you think you’ll learn faster or that it will guarantee you the job of your dreams. I don’t want to say that you should never pay to learn to program: if you decide to study a career, in many cases it will cost money simply to get around and continue your life. There are also high-quality content that can only be obtained through payment. What I want to highlight is that, to start, you can do it very economically and often completely free: there are even programs that pay you to study or give you a subsidy to cover part of the expenses.

If you’re looking to study in a more traditional way, being a high-demand career, many governments offer scholarships and programs to pursue it, as well as programming bootcamps. Check in your city with the corresponding government education entity.

What you should keep in mind

The truth is that there’s no universal answer. Programming is not for everyone, but it can be for anyone who is willing to learn constantly, to make mistakes, and to improve every day. It doesn’t matter if you come from a technical career, from a completely different discipline, or if you’ve never set foot in a university: what really makes the difference is your curiosity, discipline, and desire to solve problems.

If you enjoy the challenge of thinking about solutions, you’re motivated to learn new things, and you can build the habit of staying in motion even when things get difficult, then programming can be an ideal path for you.

Footnotes

  1. You can access my free Bootcamp at https://glrz.me/bootcamp, but there are also organizations like freeCodeCamp that offer courses and bootcamps at no cost.

  2. Fail Fast (Business) - https://en.wikipedia.org/wiki/Fail_fast_(business)

Join our Discord community

We are more than 300 people changing the world of programming

Join Discord