Excuse me if it has been posted before. Copied and pasted from TIOBE Index - TIOBE
"Take a look at Fortran! This dinosaur is back in the top 20 after more than 10 years. Fortran was the first commercial programming language ever, and is gaining popularity thanks to the massive need for (scientific) number crunching. Welcome back Fortran. " Tiobe index april 2021
Fortran rises from 34th position to 20th in one year, yeah!!!
I suggest that we track down news sites which relay the news without explanation, and often with surprise or even disbelief. For example this is a translation of a French tech news site :
Fortran is now back in 20th position, which makes it more popular than languages like Objective-C, Scratch, Transact-SQL, Rust or Kotlin! This revival of popularity is however difficult to explain even if the pandemic has, as in the case of COBOL, often reminded administrators of the harsh reality of the technical debt and of the quantity of ancestral programs still running in a corner, sometimes forgotten by all.
This surprising return can be explained by its ability to facilitate massive calculations, especially for scientific calculations.
which says nothing, as there is no reason for a surge in massive calculations from one year to the following. Although it is not false, since it is the reason we are here.
How do you explain the return of Fortran to the top 20 most popular programming languages?
and I posted a message in their forum with some explanations. At least this site does not just express prejudice, but asks its users to express themselves.
Most of those sites just relay the TIOBE news, without inquiring further. We could post there some comments about the Fortran-lang.org community, whose frenetic activity on the web for one year can not be unrelated to that revival.
Fortran is up to 14th as of July 2021, compared to 17th in June and 50th a year ago. Better to rise than fall, but I am dubious that Fortran’s popularity has risen so dramatically. Classic Visual Basic rose from 20 to 11 over the same time period, but Microsoft has discontinued it in favor of VB.NET, so I don’t see that as a viable language for new development, regardless of the TIOBE ranking. Improving the Fortran ecosystem, as people are doing, is the important thing. At least a rising rank and accompanying publicity may encourage new people to explore that ecosystem.
So once Fortran falls out of the ranking again in a year or two, we will simply say that those rankings don’t really represent anything useful anyway. But now while Fortran is up, we should say that of course those rankings are 100% accurate!
The graph starts a little before 2002 and Fortran is on a steady down fall. I think that is accurate. There is a peak in April 2005, and a few smaller peaks between 2015-2017, that’s probably all noise. We have now surpassed both those peaks and are now at the level of 2003. If we can raise from the current 1.12% to 1.5% or more, then we will be at the highest point ever in this graph. Perhaps then we can have a discussion.
In general, pypl (PYPL PopularitY of Programming Language index) has a much less ad-hoc methodology than tiobe. Tiobe counts the number of web-pages (rather than views), and for very specific terms that can lead to some fairly major distortion.
That new ranking confirms that there is a growing activity around Fortran on the net. Here we now why, but as suggested by @Beliavsky the community should use it to attract people toward Fortran, before its ranking falls again in one or two years as @certik said (the community’s effort these 18 last months is tremendous, but will probably finally normalize). Note that in that July TIOBE Index, there is no comment in the text about Fortran’s rise.
Another minor positive point is that the Fortran logo is used in the TIOBE page!
The PYPL ranking that @oscardssmith send is interesting. They compare how often people search for “LANG tutorial”. Fortran is not even on the list, so I compared it myself:
And as you can see based on this, the ranking is Fortran < Cobol < Julia < Ada. I am surprised how much Ada is up in this ranking — is Ada really used that much? Is Ada used more than Fortran on GitHub?
Regarding what @themos said, we should do that ranking! The NERSC cpu-hour usage is available online, and it lists percentages by code. Then we lookup each code which language it is written in. I have done that about 5 years ago, and VASP (Fortran) is by far the most used code there. That is consistent with other clusters that I have seen. We should try to collect such data if they are public, and present it ourselves. Of course, the HPC data is really lagging behind, as it takes a long time for a code to mature to be used at HPC clusters.
@vmagnin, do you have any tips how we can use the temporary (?) TIOBE ranking to attract people towards Fortran?
In the tech news about that latest TIOBE index, there is often no comment about Fortran, although it jumped from the 50th rank one year ago to the 14th rank (no comment on the TIOBE page itself…). When possible, we can post messages on these news websites to comment and explain that rise, and guide them toward the Fortran-lang.org site.
Thanks, that’s what I thought. So Google trends for Fortran tutorial vs Ada tutorial is not representative either of the “open source use of those languages”. Perhaps there are a lot of codes in industry/labs (although not what I can personally see).
As a new user of Fortran, I may be one of the people included in the rise on the chart if it is accurate. There are a few things that got me interested in Fortran and a few things that made me take it seriously. One big one is that the Flang compiler in the LLVM project appears to be taken very seriously with major support from high tech players like NVIDIA, Arm, etc. If you browse around on HPC websites and look at presentations about supercomputers, Fortran is always there. The presentation by Damian Rouson of the introductory Fortran videos on the Sourcery Institute website is very compelling. As far as features that make it very attractive, just how similar it is to using Numpy is the most attractive feature combined with how it has the ability to be incorporated into C/C++ programs or make standalone programs, and that it is easy to install. From the outside, you may assume that Fortran is more difficult than C, lacks major features, and that the syntax is strange. Realizing just how similar it is to Numpy could change people’s minds. But i had to spend a lot of time working on a Makefile so the work you’re doing with fpm will be very useful. As far as other attractive things for the future, I could see Fortran being used in WebAssembly for doing science in webpages.
The GitHub repo Full-Stack-Fortran, a “toolchain to compile Fortran to Webassembly, and a few projects using it” has 78 stars and was explained here.
Those noisy segments tend to correlate with the Fortran standard releases (The 2015 was an exception due to renaming to 2018, perhaps more reflective of the Fortran committee activities and compiler developers). Increasing the frequency of standard releases seems to be a good way of increasing and maintaining Fortran’s popularity. I have seen these popularity peaks even more pronounced with F77, F90, and F95 releases.
Steve Lionel said last month (here, @20min) that he is not really a fan of the TIOBE index because it uses a really poor way of describing popularity by the number of questions posted on a list of forums and github commits while a lot of Fortran is done and lives outside that environment.
He is obviously right. Fortran’s return in the top means something (facts can’t be denied) but the index underestimates Fortran a lot.
My experiences as
a student : all numerical analysis courses I was forced to attend to for general culture during my studies had Fortran 77 as programming language, and it was in the late 90s mid 00s ; the first programming course I had was in Fortran 77. This seemed totally absurd for me at that time, but now I know.
a scientific in mathematics, in algebraic geometry, not doing anything programming related but having friends also doing mathematics but numerical analysis where a whole segment of the community codes in Fortran sinces decades and still does, friends in physics where almost everyone in some segments is coding in Fortran
a person working in quantitative finance needing extremely efficient Monte Carlos and PDEs solvings : critical sections of codes are usually in C++ but at least at two previous employers, I discovered, moved, that the most critical sections of the C++ critical sections were in Fortran 77-ish. In quantitative finance a whole community of people learned basic numerical algorithms in Fortran from the book Numerical Recipes in Fortran, as it was the bible, even if they coded in C++, and even now that the book has been rewritten for C++
There is a tutorial for people who happened to learn Numpy first. My first array language was Matlab, but since Python is so common now, I see a tutorial like this as essential.
Thanks @implicitall for the link. I wrote that tutorial about 10 years ago because I thought the syntax and semantics is so similar. @lmiq I would be interested in learning your perspective. For me the biggest selling point for Fortran, compared to Python (which I also use) is speed and robustness. With fpm and LFortran, I think it might become a lot easier to use Fortran than Python, but currently I still find Python easier to use.