From a more materialistic and pragmatic perspective (make no mistake, training for most mortals is nothing more than a bridge to a better job and a better salary), learning to program in several languages has unquestionable professional advantages.
In addition, from a more idealistic and even altruistic point of view if I may, knowing how to program increasingly has a series of social and cultural advantages that almost no one mentions when starting out, and that one discovers as one advances in the field.
Next we are going to delve into the personal and social advantages of learning to program in various programming languages.
Professional happiness = personal happiness
Before getting into the subject, I would like to clarify one thing: in a very high percentage of cases, personal happiness is determined by professional happiness. That is, if you have a bad time at work, it will irreparably affect your personal life.
I don’t know of anyone who has a terrible time at work with their bosses and colleagues every day from 8 in the morning to 5 in the afternoon, and that does not take its toll from 5 in the afternoon to 7 in the morning. You may like your work more or less, but if you suffer and have a bad time, it is impossible that it does not affect you in your personal and family environment.
Obviously you can have a hard job physically or mentally, but if there is a good atmosphere with your colleagues and you have a certain complicity with the people you work with, everything becomes more bearable and it is easier to be happy.
Ideally, you like your job, but that is already more difficult to achieve since it depends on many factors that, in some cases, are beyond our control. In programming, to become good, you really have to like it.
Many ways to do the same thing
As you learn to code, you will progressively discover fascinating new ways of doing things that you would never have imagined before. You never learn to program completely. You will gain an in-depth understanding of things like pattern matching, type inference, closures, prototypes, introspection, instrumentation, runtime compilation, annotations, decorators, annotations, memorization, strokes, monads, regular expressions, proxies, transaction memory, and a whole bunch of other things.
Earn more money
Yes, making money is an important goal for everyone (nobody works for free), and mastering several languages or platforms can have a significant impact in this regard.
Beyond the horizon
Knowing how to program has many professional benefits apart from programming, since it structures your mind in such a way that you gain skills that are highly demanded in the labor market, such as solving problems under a lot of pressure or organizing and managing work in the form of micro tasks, among many others. If you don’t want to program your whole life and want to orient your professional career towards management or another field, the analytical mind of a programmer will be one of your greatest assets.
No matter what your profession, occupation or experience, programming skills are useful for anyone. It is not the same, for example, to know accounting and work as an accountant, than to know accounting, know how to program and work as an accountant. The range of professional possibilities in the second case is greatly expanded. And let’s not say if you work as a programming professional and you want to be an entrepreneur.
There are many developers who put their programming skills to use as freelancers, creating software for other companies. Others use their abilities to bring their own business ideas to life. Today, for example, many of the founders of successful startups are profiles that come from the programming field.
For many, salary is the biggest advantage of working as a freelance programmer. For others, it is a door to entrepreneurship and feeling self-realized by leading their own projects. But in the end, the motivations are the least of it: the truth is that it is a field that allows you the luxury of receiving a better salary than the average and that allows you to enter the market with your own proposal, without having to invest a lot of money nor have to depend on many physical resources as happens in many other sectors and businesses.