From all the people here with Python/R/Matlab backgrounds I was kind of surprised that C and Java are up at the top…
The TIOBE rankings are noisy. Previously:
I’m not at all surprised that Java is at the top. Whenever I’m programming in it, I have search the docs 5 times per minute!
“July Headline: All time high for the R programming language”
comparing Julia vs. R ( by github pull requests ) - 2020Q2
Ranking by github pull requests. ( 2020 Q2 )
We did a bunch of analysis of the Tiobe methodology here:
To summarize, Tiobe’s rankings are based on how may web page hits each language has for the phrase “$lang programming”. This methodology has severe problems. One problem is that people talk and write about different languages differently for linguistic reasons, so for some languages the phrase “$lang programming” is used a lot, whereas for others that phrasing isn’t used as much. For whatever reason, “Julia programming” just isn’t a phrase that people use to talk about Julia very much.
An even deeper problem with Tiobe’s methodology is that search engines return essentially random and frequently changing values for the number of hits on a given phrase. The number of hits reported can change massively from second to second with seemingly no rhyme or reason and it doesn’t seem like most search engines make any effort to ensure consistency or accuracy of the number of hits for a phrase. If you think about it, the question “how many web pages are there containing this phrase?” is not a really well-defined question—what exactly counts as a web page these days when there’s so much dynamically generated content? It’s also not something that search engines have much incentive to accurately measure or report since nobody looks beyond the first couple of pages of search results. Who actually cares about how many pages of search results there are?
My personal take away is that the Tiobe index doesn’t actually mean much except for the very top spots. It’s only a ranking that people talk about because people talk about it. There are a number of other indexes that have saner methodologies and are much more consistent over time, such as the IEEE Spectrum and PyPL rankings, which rank Julia as the 23rd and 26th most popular languages, respectively. Not only are these indices much less noisy then Tiobe, but their rankings also seem to make more intuitive sense.
Quite frankly that sounds like (to me) a terrible way to do ranking.
Frankly speaking, I think the TIOBE index is useless. Specially for analyzing trends month by month. The closest thing to a proper ranking that I think merits some consideration is this: https://redmonk.com/sogrady/2020/02/28/language-rankings-1-20/
RedMonk is discussed in that link and it’s a pretty good ranking, although it has some interesting biases that are quite significant. In short, it’s based on number of GitHub pull requests by language and number of questions tagged with a language on StackOverflow.
Julia does pretty well on the GitHub stats since it’s Julia and most packages are developed on GitHub. But this is quite biased against languages that aren’t developed on GitHub. It’s also biased against languages that may be quite popular among those who aren’t professional software developers, like R, Matlab or Mathematica, and to some extent Julia. It’s biased in favor of languages that are developed on GitHub and are primarily popular among software engineers, especially ones who like new-fangled tools like
git—so languages like Rust, Go and TypeScript.
Oh, I agree. RedMonk is clearly biased towards OSS. But at least the incorporate several metrics that developers might actually find useful and they acknowledge the methodology shortcomings. I don’t think is perfect by any means, but I think at least offers some information about trends.
I have always found baffling how much importance some people give to the TIOBE index given how… lazy the methodology is. But maybe Scratch is really close to taking over Ruby and I am just in denial
TIOBE Index for September 2020
- Julia: 28. ( 0.55% )