The question that keeps hammering in the heads of most people who are starting their careers as a programmer is: What programming language should I learn?
If you are asking yourself this, my answer will always be a set of questions back to you, for example:
- What goal do you intend to achieve?
- What are you wanting to learn a new language for?
- Are you looking to learn a new language to get a job?
- Do you know the minimum of programming logic?
- Do you want to create apps for Smartphones?
- Do you want to create applications for SmartTVs?
- Do you want to develop systems for the Web?
- Do you want to create embedded systems?
- Do you want to make macros in excel?
Do you want to work with Machine Learning, BigData, Data Mining, Data Science, Business Intelligence, Artificial Intelligence, Computational Intelligence, Machine Intelligence?
Anyway, no language solves all of humanity’s problems. So it is very important that you define what you want to achieve, so that you can decide the programming language you should learn.
If you don’t know anything about Java or Python programming and are asking this question, read this post I recently wrote: “What is the difference between Python and Java”.
Several languages solve my problem
If you already know a minimum of programming and even after what I said above you are still in doubt, because two or more languages are for what you want to do, keep reading …
The world of software development is interesting precisely because it allows the same thing to be done in several different ways, but the bases are always the same.
From a simple algorithm where you can solve a problem with a loop or with a recursive function, to the infinite frameworks for frontend of web / mobile applications,
And it ends up causing a lot of discussion out there. You can even fight …
This is the type of discussion that is not worth scrolling through because most people don’t know what they are talking about. Click for World of Wires
Basically, what you need to do to choose your next favorite programming language or framework is to analyze which one is most supported .
And when I say support I don’t mean having a “big” company behind it. Many languages / frameworks out there are open source and have no “owner”, it’s from the community.
But even so it is important to see if it is supported , many languages / frameworks regardless of whether they had large companies or the “community” behind them, did not work. Why?
People use what most people use and if you are in the marketing area you should understand here the classic principle of social proof : the fullest cafeteria must be the best;).
If this language / framework / technology has a lot of people using it, it must be the best …
And with many people using the same product, more social proof. It turns into a big snowball. A community is formed and as a consequence the language / framework improves.
If in the past it was good and now it’s bad / obsolete, but the community is big and good, the language / framework will evolve, even if it is difficult.
WordPress, for example, is there to prove it. It’s supported!
WordPress started many years ago with old versions of PHP and MySQL. The technologies that support WordPress have evolved and WordPress has been updated, “only” because it is the most used CMS in the world and that most impelled the creation of blogs and websites in the last decade.
If you think about it, the technologies of the past are difficult to use and the new ones are full of flaws that the old ones don’t have.
So it’s not so difficult to understand the divergence in decisions between the support java and support Python, for example. And in the end, we can’t even accuse one or the other …
The Java guys strive to maintain backward compatibility, while the Python guys kind of “kicked the bucket” between versions 2. * and 3. * to move much faster.
Basically, the Python guys trusted that the community will update their libraries to evolve the language.
And there is nothing wrong with either of those two thoughts. The important question you must ask is: Will it be supported ?
The fact is that in the last 2 months I returned to dedicate myself to blog programming tips , and while I was planning the next blog content I came across a problem.
I think it would be very confusing to generate content about various programming languages, mixing everything here on this blog.
I am creating practical content with tips on these 3 languages, day-to-day tips, tutorials on how to solve problems with these languages.
Mixing all these posts here would end up generating more confusion than helping those who are starting out in this world of software development. So I bought a domain:
The goal is to organize things and focus each topic.
You may be thinking that this will cost me a lot more. The extra cost is just the registration of the domain. Just like this blog here, keeping the blog will cost close to zero as I mentioned.
And you can also participate! If you want to know how to do something specific in these languages, just access the blogs, click on the link “write for us” available on the blog and start contributing.
In addition, you can also contribute to blogs by becoming a paid writer.
This is a way I found to contribute more to the community and open more doors for dialogue, exchange of knowledge and support to those in need.