Report: Java 'Surges' Back Up in Programming Language Popularity (zdnet.com) 60
"The programming language Java's popularity has been slowly declining in some programming language index rankings, but it's popped back into the second spot in RedMonk's latest chart," reports ZDNet:
Javascript still rules in RedMonk's Q3 2021 language popularity rankings, which have been updated twice a year since 2010.
Python overtook Java for the second spot in RedMonk's Q2 2020 ranking, and Java has remained there in Python's shadow ever since, but now it has jumped one spot to second — a place it once again shares with Python. As RedMonk analyst Stephen O'Grady notes, Java's consistent third placing over the past year was "prompting questions from observers as to whether it was fated to a gradual drift down these rankings".
Tiobe's CEO Paul Jensen last September said Java was in "real trouble" because of a notable decline in its share of queries for programming languages on major search engines. But now, according to RedMonk, Java has 'surged' back. "This would be less of a surprise but for many of the language's competitors — and, it should be said, the odd industry analyst or two — writing regularly recurring epitaphs for the stalwart of enterprise infrastructure," said O'Grady.
The article also reports that Google's Dart programming language "made its debut in RedMonk's top 20 this month and displaced Perl."
Python overtook Java for the second spot in RedMonk's Q2 2020 ranking, and Java has remained there in Python's shadow ever since, but now it has jumped one spot to second — a place it once again shares with Python. As RedMonk analyst Stephen O'Grady notes, Java's consistent third placing over the past year was "prompting questions from observers as to whether it was fated to a gradual drift down these rankings".
Tiobe's CEO Paul Jensen last September said Java was in "real trouble" because of a notable decline in its share of queries for programming languages on major search engines. But now, according to RedMonk, Java has 'surged' back. "This would be less of a surprise but for many of the language's competitors — and, it should be said, the odd industry analyst or two — writing regularly recurring epitaphs for the stalwart of enterprise infrastructure," said O'Grady.
The article also reports that Google's Dart programming language "made its debut in RedMonk's top 20 this month and displaced Perl."
Or Maybe.... (Score:5, Insightful)
Re: (Score:2)
And here's the drought map:
https://droughtmonitor.unl.edu... [unl.edu]
Notice anything special about Arizona. Hint: a few days of rain do not the End-O-Drought make. Now go back to school and learn some SCIENCE.
Re: (Score:3, Insightful)
Redmonk's methodology [redmonk.com] is to count Github pull requests and Stackoverflow queries.
The Github count can be skewed by a few small projects that have a lot of pulls.
The Stackoverflow queries will be higher for complicated and confusing languages or for languages with new features. An old, simple, and stable language like C is not going to have many new questions, but that says nothing about its popularity.
Actually . . . (Score:2)
It's covid related.
With the skyrocketing price of lumber, no-one can afford the stakes needed to pound through its heart, and it just keeps coming back . . .
Why (Score:2, Insightful)
Why are all the most popular languages bad languages -_-
I guess I shouldn't complain, at least Mumps isn't on the list this year. [slashdot.org]
Re: (Score:2)
"Bad" meaning tedious and boring yet has the mature libraries to handle your money, insurance, business... and so they do. The world couldn't last if the financial wares were written in your favorite language, it couldn't do things properly.
Re:Why (Score:5, Insightful)
You say that like it's not true.
It always amazes me when I see people who aren't technical people that have to look at our old COBOL-based system to understand some business logic and they can follow the code just fine. Try that with C++ or Python or Java or any of the modern "good" languages and you'd have a very different experience (well, I'm throwing Python under the bus a little there because the rewrite of the system is largely Python-based and they seem to handle that pretty well for the most part too, so maybe that one is unfair... but the basic point still stands).
Re: (Score:2)
> Python or Java or any of the modern "good" languages
BWAHAHA.
Python and Java are shit languages, not good languages.
Re: (Score:2)
Seems the business world disagrees with you; maybe you're clueless.
Re: Why (Score:2)
Re: (Score:2)
Re: (Score:3)
> I have never really understood this whole good language vs bad language thing.
I can explain that quite easily.
Good languages fail fast, provide good runtime performance, support multi-paradigm programming, provide good idioms, provide good readability by not being extraneously verbose, and do not impose artificial structure.
JavaScript is a shit language. I'll give an example of why by explaining "fail fast".
One of JavaScript's bad design is that, by default, it lets you use variables without previousl
Re: (Score:2)
Re: (Score:2)
> namely trying to define such things in absolute terms.
Incorrect. How do you know a language is poor or good? By ...
a) comparing it against others, and
b) looking at the metrics that you care about.
It isn't an absolute comparison but a relative one.
> For example you say good languages should "provide good runtime performance". I don't even know what that means.
What, you don't know how to:
* benchmark execution time?
* measure the RAM needed by the application?
* measure the time it took to write?
If som
Re: (Score:2)
Re: (Score:2)
There are effective ways to communicate and ineffective ways to communicate.
ALL code is communication. Badly designed languages allow, and even encourage, bad communication styles; they usually lack structure. This is especially true in old, deprecated languages.
Writing good code takes discipline. While you can write bad code in any language it is harder then it should be to write good code in a badly designed language. You will have idiotic rules designed by amateurs who don't understand the context of
Re: Why (Score:2)
Programmers are supposed to be engineers who choose the best tool for the job.
LOL, no. If you think of them as artists, and of operations people as carpenters on a movie set, a lot of things will make more sense.
Re: (Score:2)
Re: (Score:2)
Re:Why (Score:4, Insightful)
it is moving money and resource transactions properly, so yes it is. The COBOL language designers (and sure, Java too) have proper understanding of the issues. The fad languages don't have that.
Re: (Score:2)
Rust...solving C/C++'s problems. :-D
Re: (Score:2)
Yes Rust has the financial libraries going
well C++ has them too but it's worrying to have financial programs in a language that is scary unsafe
Re: (Score:3)
Re: (Score:2)
Yeah, I think so too, I just wanted to see what comments people would reply.
Re: (Score:2)
COBOL is a great language.
Fixed that for you.
Explain...I'll bet $100 you can't. (Score:3, Insightful)
Just because you don't understand it, doesn't mean it's bad. There's a reason why so many who are more experienced and intelligent than you choose it. Everyone who is anyone uses Java somewhere, even companies who prefer other languages, like Facebook and Microsoft. Most profitable companies use it as well. It's not the right choi
Re: (Score:2)
Why is Java "bad?" I'll bet 100 dollars you don't have a deep enough understanding of Java and the programming language landscape to make that evaluation.
If you're willing to actually put $100 on the line, I'll explain it for you.
I've programmed in Java for a long time.
You never gave an explanation (Score:2)
Why is Java "bad?" I'll bet 100 dollars you don't have a deep enough understanding of Java and the programming language landscape to make that evaluation.
If you're willing to actually put $100 on the line, I'll explain it for you.
I've programmed in Java for a long time.
You never explained. :)
Java has succeeded in spite of it's creators and current owner. It has had many self-inflicted disadvantages, particularly around licensing, yet still succeeds.
Why is Java "bad?"
It definitely has served our server side needs much better than it's two main competitors, node.js and python...especially for projects that have lived longer than 5 years.
Re: (Score:2)
Re: (Score:2)
"Why are all the most popular languages bad languages"
Because all the other languages are bad too
Criteria (Score:2)
>Tiobe's CEO Paul Jensen last September said Java was in "real trouble" because of a notable decline in its share of queries for programming languages on major search engines.
So a programming language is "in trouble" when it's not searched for on major search engines as much? What is the link? Where is the relevance of "search engine query numbers about language" to "relevant of language"?
Re: (Score:2)
Ya, I was going to comment on this remark too. Basically "in trouble" in what way? Projects don't pick programming languages based on how popular they are, they pick them based on the intended use case -- at least both are true in my 30+ years experience.
For example, Javascript is always going to be high on the list as long as there is a LOT of programming being done for websites and browsers. Java is better suited for other things. I use it when I need something that will run across multiple platforms,
Re: (Score:2)
> Projects don't pick programming languages based on how popular they are, they pick them based on the intended use case
LOL... https://www.youtube.com/watch?... [youtube.com]
Re: (Score:2)
Ya, I was going to comment on this remark too. Basically "in trouble" in what way? Projects don't pick programming languages based on how popular they are, they pick them based on the intended use case -- at least both are true in my 30+ years experience.
Yeah, but this is Tiobe's entire methodology. They probably go to get funding based on the genius of it. So, you know. Meanwhile, people still use Visual Basic.
Compiled languages require less web searches (Score:2)
Another reason queries are a garbage metric is how low SQL is. Nearly everyone uses SQL, yet it is always low in the metric. Why? Most feel they have learned enough SQL to do their job (in my experience, most haven't, but still...)
Very few developers can avoid SQL. Very few can avoid bash. However, both are older than me and most of us rely on mem
Just stop (Score:2)
Language "popularity" contests are one of the most inane/useless things that circulate around the internet. Can we outlaw them yet?
Re: Just stop (Score:1)
Re: (Score:2)
Language "popularity" contests are one of the most inane/useless things that circulate around the internet. Can we outlaw them yet?
There are quite a few things wrong with these league tables. The metrics used to measure popularity may of dubious validity. One metric appears to be number of internet queries about a language. That might indicate would-be users struggling with a new language, rather than that the language is widely used. In any case, what does it matter whether a language is popular or not? I am more interested in whether a language gets results, and has adequate support and libraries to get real work done.
Java has one major problem (Score:4, Interesting)
Java's popularity decline can be traced to pretty much one thing: Oracle.
Oracle decided to do a whole bunch of licensing shenanigans with the JRE and JDK that essentially meant everyone had to abandon the old "official" JDK and move to the OpenJDK. A lot of people used that opportunity to just drop Java entirely.
What we're probably seeing is most new development looking at using things that aren't Java, while existing Java code bases have moved to various OpenJDK builds. The decline in popularity was during the "oh no, Oracle is Oracle-ing everything up" period, but it appears (from what I can tell) that the community has stabilized around various OpenJDK builds.
Java isn't going to go away, but Oracle's attempt to commercialize it by moving the "official" distribution to a weird sort of subscription model definitely caused a lot of people to reevaluate their long-term use of Java.
Re: (Score:2)
Java is doing fine and it has become a more pleasant and appealing language during the last few years. Lambda based APIs have delivered a useful degree of functional programming. Streams are nice and deliver easy parallel programming. Throw in lombok and a bunch of boilerplate vanishes. Spring Boot alleviates most of the dependency management and packaging pushups. The IDEs are still awesome.
Who cares about Oracle's JDK? Just used Corretto or something. They're all fungible now.
Memory usage is st
Re: (Score:2)
You seem to know what you're talking about, but make a blanket statement that memory usage is excessive. This depends on what you're doing, and also how much leeway you give the JVM. You want it to run with 500 MB? No problem, it just can't handle as many threads in parallel then. If you find you're using a bunch of memory? It's not Java, it's your code.
Same with NPE's. It's your code. Check what's going in and *reject* it early by failing fast. Use immutables (with checks in constructors) and optio
Re: (Score:2)
This depends on what you're doing, and also how much leeway you give the JVM
Less and less given competing contemporary tools. Programs I write in Python and Go use vastly less memory than the equivalent Java program.
It's your code.
No, it isn't. Real Java programs have many dependencies and those dependencies have flaws. You can write perfect code and end up with NPEs because some dependency is imperfect. Eliminating these failures requires language design changes. If Java were designed today by the sort of people that appreciate the Billion Dollar Mistake of null references would see that th
Re: (Score:2)
Regrettably, this is true of most languages in widespread use today.
There is such a thing as inventing the wheel unnecessarily by not using common, vetted, and reasonably self-contained libs, but there also is such a thing as sentencing your product to permanent dependency hell, and also pervasive and hard-to-debug quality issues, by recursively and probably unknowingly including hundreds of dependencies of unknown quality.
As in most things, there is a balance that minimizes the combined cost of both proble
Re: (Score:2)
Re: (Score:2)
Re: (Score:1)
Java's popularity decline can be traced to pretty much one thing: Oracle.
This, specifically the fight with Google. I had two projects that were good candidates for a Java solution, both of which were delayed while the the supreme court case moved forward. Once the issue was settled one of the delayed projects moved forward with Java, the other had been canceled.
The delayed reaction in the surveys absolutely matches my experience. Business likes certainty, and now that we know that Oracle can't demand an intrusive license for all things that use Java APIs, business feel it's safe
Re: Java has one major problem (Score:5, Interesting)
OpenJDK is the official reference JDK now, it exists due to efforts to open source Java that started under Sun, and Oracle continued. OpenJDK IS Oracle's project... and the Java community's. It is the upstream OSS project of the current Oracle JDK
All Oracle did was, after like ten plus years of OpenJDK catching up to Oracle JDK by Oracle slowly removing third party proprietary code from the non open source side and building up the open source side so it could be come the official Java reference, was to make the switch.
What Oracle is asking you to pay for is now A BUILD of OpenJDK with extras like nice Windows installers and support.
It's not that different from RedHat's evolution to Fedora as the OSS upstream. Before Fedora, RHEL was the same situation, free to use, everybody used it, you paid for RHN subscriptions to get updates. Post-Fedora, nobody really uses RHEL without a sub, you use the official upstream project Fedora or something like CentOS if the difference between the upstream and RHEL are too much. Right now the difference between Oracle JDK and OpenJDK is not very much at all. Let's be honest, it's mainly in the Windows installer, you wimps. There isn't even a need for the equivalent of a CentOS in the JDK world because Oracle didn't go out of their way to make the upstream as different as possible from the commercial offering like Red Hat did.
Re: (Score:2)
When Oracle starts to behave more like a software company, and less like an extortion racket, I might have more confidence in using its products, including OpenJDK, or others derived therefrom, such as MariaDB.
Until then, I try to stick with alternatives that are less likely to result in me or my employer being sued.
Re: (Score:2)
Oracle decided to do a whole bunch of licensing shenanigans ...
That is a major consideration for many people. A wee bit off-topic, but I recently migrated my PCB CAD system from closed-source Eagle to open-source Kicad. One major reason for this was not liking the new software-as-a-service license terms introduced when Eagle was taken over by Autodesk. Another consideration was a colleague in mechanical engineering accidentally upgrading his Autocad, and landing our firm with thousands of pounds in license fees. It was eventually sorted out, but it makes you wary of fi
Re: (Score:2)
Comment removed (Score:3)
Hmmm (Score:2)
Re: (Score:2)
> But I very much doubt that anyone would consider Java for a new blue skies projects.
Then you're just living in a fairy tale. New Java projects are started every day by businesses that value continuity, maintainability and stability over the latest fad.
Re: (Score:2)
This. Heck where I work is *still* trying to convert off of our old system (an IBM created code generation language)