I noticed that the world’s leading sites (Google, Facebook, Youtube)
False premise. Can use punctually for some script or some code that the responsible team thought it should use, but they are not fundamentally written in Python.
Understand that all the places that propose to speak well of a tool end up doing just that, even if you try to say that you are impartial. Of course, many of these may have talked about the disadvantages in a correct way, they may not have exaggerated the advantages. Note that your question has a certain bias towards Python, so they got what they wanted, sell the idea that Python is sensational.
Have you ever thought that Python has been the same for years, and even in the great change of 3.0 hasn’t changed that much? What has changed is people’s perception. I encouraged the use of Python more than 10 years ago, I had even given up hope that it would be well used.
Whenever someone is speaking only well of a language, it’s because they love language, not because language is all that. And Python is full of problems (unlike marketing it’s full of WTF, just not as much as PHP or JS, but there’s a worse side, people don’t talk about them), I’ve noticed this more and more as I look deeper. This does not mean that it has more than other languages and that it prevents its good use.
Why Python is so current?
Python is just another programming language that solves problems that require expressing computational algorithms. It was created almost 30 years ago, evolved like many languages, and has been acquiring users over time. Lately there have been more people coming in and liking it. Having more people like it tends to have more people knowing and liking it, so everyone fights so hard to make their technology well known. Besides, I can’t explain the sudden popularity, except for what I say below.
Java being more current would not do everything that Python does?
I don’t know if this makes sense, Java was created 2 or 3 years later. To tell you the truth I don’t even know what this "current" is, I don’t know if it fits into objective criteria. And subjective doesn’t matter. If you mean being popular, it’s not that popular.
Java is still much more used than Python, C# is not even spoken in Javascript, and even PHP is even more used. But it’s time for growth, so people’s perception is that it’s at the top. When something was underused and comes into great use it tends to distort the perception that that new demand is too great overshadowing the normal demand for technologies that are at a normal pace but still at full strength.
Java does everything Python does and vice versa, just like any other language. Some allow to do certain things better, in an easier way than others, each one with its advantages. Java for example is much more robust than Python, although Python is also to some extent so the advantages it saw are relative.
For some reason Python started to be used with artificial intelligence, but everything you can do in Python in this area can do in other languages, usually with more performance and robustness. I don’t know, maybe because it’s easier, who doesn’t know how to program ends up using Python, after all she’s more permissive, lets you make more mistakes. Python facilitates the idea of the "works so it’s right" that people love, and that is not at all robust. And almost everyone who enters the area nowadays does not know how to program and does not want to learn, just want to produce codes.
Python is slightly easier to learn than a more robust language. Javascript is even more, is faster and more permissive (if using Typescript can get a little more robustness) and generally can access all AI libraries that Python accesses, so I can only believe that this popularity is just herd effect, people go to Python because there are people talking about going to Python (JS has much more WTF).
Python is cool, it has advantages and disadvantages. It is better for some things, not others, but it can be used practically for everything. Of course, unless you have some platform restriction, you can’t easily run on a browser, may not run on any embedded device, or may not be ideal to run on mobile, or even within a database, or run directly on hardware, etc. Professional programmers use the best tool for the task and Python is good at several of them, when you need to scripts. Many problems need only them.
Popularity
Little by little you can understand that what we’re talking about here is popularity, and the topic kind of focused on that.
It is undeniable that in recent years Python has grown a lot, especially in the last year. What has changed? Nothing technical, only that there was a conjunction of socio-political factors that created a positive spiral that was feedback. Which makes me increasingly certain that most people who work in the field are not real engineers and are always very susceptible to marketing, It’s no wonder that companies and communities that are behind certain technologies invest so much effort in making it look popular. Popularity attracts popularity (this reminds me Girlfriend for Hire). The language has always been there the same way as always. C# changed much more, opened the fan and did not have the same explosion, still had new adoption (for some reason people program in C# as they did 10, 15 years ago, so I have a talk showing how to program in the modern way).
Unfortunately many people no longer program in PHP, they program in Laravel, CI, etc. They almost never programmed in Ruby, only in Rails. Just as they programmed more in jQuery and now in Angular, React or Vue. Yeah, none of that is programming language, but people don’t even realize it. Those who have entered the area have not learned to program, only use these technologies to gather pieces of Lego and make something work. One of Python’s trump cards is that she has several frameworks with distinct functions and not just several web. Django’s use is even small in proportion to the community as a whole.
Bias
If looking at the existing vacancies means only that the area has a lot of turnover or difficulty filling vacancies with suitable professionals (It’s getting worse, full of vacancies, full of people coming in and the vacancies can’t be filled because people are very low-skilled, and they don’t want to do their homework). This is worse in languages that attract more unqualified people. If you look at it, it looks like you don’t have a job for C and C++, but you do, except that people in this area don’t really change jobs that much, and vacancies are filled a lot on the basis of networking.
If you look at events and congresses, some languages appear more than others. Again C and C++ practically disappear, because if the person only uses for college exercise does not go in these places, and if he is professional even in this manages to get his knowledge in other ways or all in English.
If looking at the OS or similar sites means only that the documentation is bad, that people interested in that technology are more lazy or disqualified, or that the technology gives too much trouble. There is also the other side. D has almost no question in the OS, but because the community has decided to focus on the forum itself. There is distortion for several reasons. Or do you think R is being used as it seems?
If looking at searches indicates only that there is interest in it, even if it is just curiosity. Or it can be just false positive, easy to happen.
Books, conferences and articles indicate this too.
Blogs and the like indicate more community engagement, not necessarily use.
Github just looks at the open source. Are there projects that are usually very internal, who uses it doesn’t make a fuss, or do you think that no one else uses COBOL or Clipper? You’d be surprised. It has language that does not have, or did not have so much community spirit. It has language that people are not very adept of the internet. There is community that beats the drum stronger than is actually used.
If you walk in certain circles tend to think that it’s much more popular than it really is, and tend to think that other things aren’t used that much, especially the ones that are more discreet.
The reality is that it is very difficult to say what is most used, the margin of error is very high, you can only get a notion by looking at many sources. Just don’t use TIOBE as a reference. VB.NET more used than JS and C#? Hilarious! I could cite so many inconsistencies there, but the number of combinations is very large.
We can say that Javascript is the traditional programming language (exceptional Excel, but today maybe JS already win because spreadsheets are not so much used, although it is much more than I would like) more used because people adopt web in exaggeration and is practically the only option for web frontend (along with Typescript now) and is option for backend. Java, C#, Python and PHP are often used for backend, and except the last one, a little bit for desktop too (yes, it’s still important). These are fired the most used and it doesn’t matter which one is the most used.
C and C++ still have strong use, but the bulk of the visible interest is because of college and the like. Swift exists on the map because of iOS, Kotlin has been growing. Delphi is in survival mode, and Ruby is losing space. Perl almost died in fact. Go has been growing, Rust and D serve some niches well. R seems to me to have a more academic but strong use. BASIC survives, mainly with VB.NET. Moon has its niche. But it still has room for COBOL, Fortran, Clipper. Or we can still talk about some use of functional languages like Haskell, OCAML and F#, Scala, etc.
Could you explain your doubt better? What exactly "current"? You want a comparison between languages?
– Costamilam
What it is to be "so current" and "more current than so current" for you?
– RXSD
Current would be in the sense to be popular and widely used, so I notice, including by the questions here of the site, even making a few decades of its creation .
– Luiz Augusto
@Andréfilipe by the time of creation, li python was created in 1989, and java in 1995, correct me if I’m wrong.
– Luiz Augusto
I don’t know much python but I’ve seen it be recommended several times as the language to learn to program, due to simple and intuitive syntax, another point in favor is its versatility, is widely used in AI (artificial intelligence), data science (data science)creation of web servers and desktop applications, all this combined with good performance
– Costamilam
If actuality were an attribute of superiority in a language today we would all be programming in Haskell.
– Augusto Vasques
@Augustovasques Haskell is older than Python :)
– Maniero
@Maniero, you’re right, they’re a year apart.
– Augusto Vasques
python is very easy to understand so is very productive Java is very prolix compared to python and is essentially Object Oriented
– le314u