The “top 10 programming languages” posts are unrealistic
I’m sure you have read, like me, many articles on several well-known (and also unknown) websites where they talk about the top 10 programming languages for the current or the next year, encouraging you to learn them if you want to progress professionally.
It’s true, and no one can deny it, that there are many programming and scripting languages, as well as the fact that it’s hard for a single developer to learn all of them, even with all the similarities they might have.
We also must accept that, if you compare the different websites you browse, you will get different suggestions, and they will encourage you to learn languages according to the sources and surveys they have access to (even if on some cases the data matches, it won’t for every language).
This one is just an example of what I’m saying:
However, after a few years reading these posts and then looking for job opportunities, I couldn’t find significant changes in the job specs and it brings me to one solid statement: all these articles, posts and surveys are just proving what the community of developers wants to learn and use, but not what the current market is looking for.
Java is widespread in financial environments like PHP is the top language when building websites. So, every time I read that Python, NodeJS, GoLang and more are the Number 1 languages for the next year my only reactions are *sigh* and *facepalm*.
Please don’t get me wrong. Yes, I agree on learning new languages is a necessity if you want to keep improving yourself as well as if you want to apply for those positions where they work with languages that you don’t use or you don’t know at the moment. And I will never refuse this premise. But the fact that someone is eager to learn and use other languages doesn’t mean the market will change from one year to another.
My conclusion (and the moral of this post) is that for you, as a software engineer, learning must never stop. Never! Tech evolves constantly, and if there are no new languages then there are new modules, components and extensions that you can use with the programming and scripting languages that you already know. Or maybe there are new requirements to cover based on newer (or patched) versions of the operating systems (especially on mobile devices).
However, please bear in mind that, usually, (one more time: usually) businesses won’t rebuild their projects unless they must do it, and unless there’s a reason to build something else from scratch, the maintenance usually means follow up with the current specs and languages, not adding new ones. Because rebuilding a project means these businesses need to invest time and money, and not all businesses have the resources (or the patience) to do it, especially if they already have a tool that works.
Resources
Images:
- https://lambdasec.github.io/The-Most-In-Demand-Programming-Languages-of-2018/
- https://www.programmableweb.com/news/most-popular-programming-languages-according-to-chargebee/analysis/2016/06/10
- https://www.caci.co.uk/blog/when-creative-briefs-go-bad-%E2%80%9C%E2%80%99s-not-what-i-was-looking-all%E2%80%9D