Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Programming Stats

TIOBE Calculates C++, C, and Python Rose the Most in Popularity in 2022 (infoworld.com) 84

"The Tiobe index gauges language popularity using a formula that assesses searches on programming languages in Google, Bing, Yahoo, Wikipedia, and other search engines," writes InfoWorld. And they add that this year the "vaunted" C++ programming language was the index's biggest gainer in 2022.

TIOBE's announcement includes their calculation that C++ rose 4.62% in popularity in 2022: Runners up are C (+3.82%) and Python (+2.78%). Interestingly, C++ surpassed Java to become the number 3 of the TIOBE index in November 2022. The reason for C++'s popularity is its excellent performance while being a high level object-oriented language. Because of this, it is possible to develop fast and vast software systems (over millions of lines of code) in C++ without necessarily ending up in a maintenance nightmare.
So which programming languages are most popular now? For what it's worth, here's TIOBE's latest ranking:


- Python
- C
- C++
- Java
- C#
- Visual Basic
- JavaScript
- SQL
- Assembly Language
- PHP


InfoWorld adds that "Helping C++ popularity was the publication of new language standards with interesting features, such as C++ 11 and C++ 20."

More from TIOBE: What else happened in 2022? Performance seemed to be important. C++ competitor Rust entered the top 20 again (being at position #26 one year ago), but this time it seems to be for real. Lua, which is known for its easy interfacing with C, jumped from position #30 to #24. F# is another language that made an interesting move: from position #74 to position #33 in one years' time. Promising languages such as Kotlin (from #29 to #25), Julia (from #28 to #29) and Dart (from #37 to #38) still have a long way to go before they reach the top 20. Let's see what happens in 2023.
This discussion has been archived. No new comments can be posted.

TIOBE Calculates C++, C, and Python Rose the Most in Popularity in 2022

Comments Filter:
  • Hahaha, suck it up all you Java bitches who a few years ago said that C++ would die and be replaced by Java.
  • Rust (Score:3, Insightful)

    by backslashdot ( 95548 ) on Sunday January 08, 2023 @04:55AM (#63189164)

    Rust is actually pretty good, but you have to get used to it; which is likely why nobody wants to use it. Still what I think the best order to learn programming is assembly, C, C++, JavaScript, Python. A few months of assembly first so you know how a computer works. Prove me wrong.

    • Re:Rust (Score:5, Interesting)

      by serviscope_minor ( 664417 ) on Sunday January 08, 2023 @05:24AM (#63189192) Journal

      Still what I think the best order to learn programming is assembly, C, C++, JavaScript, Python. A few months of assembly first so you know how a computer works. Prove me wrong.

      It really depends on the person. Some people (many?) like to start from a higher level, like Javascript, actionscript (back in the day), MATLAB if they're engineers, BASIC for kids of the 80s, Scratch for kids now, python for some. It's neat because you can get stuff to work and fill in the gaps. Other people don't believe the magic and can't accept big gaps they need to fill in later and prefer assembly first. Though having taught programming, IME the ratio is about 100:1 against assembly first.

      You're not wrong because there's no right way to learn, but you're not right either for the same reason. What you're proposing works well for a certain type of person.

      I learned BASIC (BBC variety) then ASM then a bit of shell scripting, then C, then a ton more shell scripting and unixy stuff and C++, then others.

    • Re:Rust (Score:4, Insightful)

      by eneville ( 745111 ) on Sunday January 08, 2023 @07:04AM (#63189270) Homepage

      Rust is actually pretty good, but you have to get used to it; which is likely why nobody wants to use it. Still what I think the best order to learn programming is assembly, C, C++, JavaScript, Python. A few months of assembly first so you know how a computer works. Prove me wrong.

      The reason nobody /wants/ to use it is because it is currently catch 22, employers don't have the pool of potential candidates, few candidates invest because few employers offer. Why invest in a software stack that is hard to maintain, since Rust should be easier to maintain?

      Of late though, I do see some jobs in the local area that feature Rust in some way. Give it time, there's lots of reasons to use it. If you're in a job that's programming, start new projects in Rust, don't migrate old things unless there's good reason.

      • My experience differs. My knowledge of rust is directly responsible for getting me into the best job I've ever had with a fantastic company that many apply for and very few get accepted.

        • by keltor ( 99721 ) *
          Every single company in the world currently has "many apply for and very few get accepted" situation - even basic entry level hourly wage earner jobs are currently inundated with applicants. The job market is currently crazy.
          • Even in a good job market this still applies. They're one of the largest privately held companies in the world by market cap, and yet have relatively few employees (when compared to similar market cap private companies, they have toughly 10 times fewer.) Though if you look up the largest privately held companies by market cap, they won't show up in any lists. But if you look up, you might see them.

    • I think the best order to learn programming is assembly, C, C++, JavaScript, Python

      I almost agree...

      Assembly, C, C++, Python, JavaScript

      ...saving the "WTF is wrong with this language" experience for last. :)

      As for assembly, as far as I'm concerned, if you're not comfortable there, you're missing the foundation you need to actually understand what is going on in any high(er) level language.

      • It's hard to write meaningful/useful programs in assembly language these days though. Desktop CPUs are too complex, anything more than a few thousand lines needs you to really grok programming before you even start typing.

        It would probably have to be via. some sort of emulator with a graphical view of the RAM, etc.

        • I'd argue it's impossible to write a useful asm program at all on x86 now beyond tiny utils. The modern instruction set is vast , SSE* alone must be over 100 opcodes and that's before you have to worry about FMA, AVX, gpus, pipelining and intel/amd differences. I doubt anyone could better a modern C ++ compiler for generating efficient assembler on x86 now.

          • I'd argue it's impossible to write a useful asm program at all on x86 now beyond tiny utils. The modern instruction set is vast

            I would agree.

            Even the 286 instruction set was over-complex with all the segmentation and stuff but the modern x64 instruction set is mind-bottling.

            Maybe this is the Arduino can help: The AVR instruction set is very reasonable and you can get instant feedback from flashing LEDs, etc.

      • Re:Learning order (Score:4, Interesting)

        by Dutch Gun ( 899105 ) on Sunday January 08, 2023 @07:22PM (#63190530)

        I learned languages in the exact opposite order. I went BASIC -> Pascal -> C++ -> C. At each stage, I learned more about how the underlying hardware actually worked.I work mostly in C++ these days. Never bothered learning assembly, although you tend to pick up some of that simply by looking at disassembly in the debugger anyhow.

        I don't think it's necessary to learn in a particular order, nor do I think you necessarily need to understand assembly to truly understand what's going on under the hood. You tend to pick that up when working with C or C++ anyhow, since they are a pretty low-level abstraction over the hardware to begin with, and you pick up a deeper understanding over time somewhat naturally. Also, these days, assembly language is an abstraction as well, and doesn't really represent what the CPU is truly doing on the hood (especially x64)..

        The entire notion of "really understand what's going on under the hood" feels a bit like gatekeeping to me, though. Or maybe a bit of "no true Scotsman?" For a JavaScript programmer, understanding what's going on at the near-hardware level seems kind of pointless - far more valuable to understand the complex software stack you're working in, which is pretty far removed from the hardware. It's more valuable if you're working on embedded programming for tiny devices, or need top performance in C++, so you can understand how to make your code more cache friendly, etc.

      • Regarding learning, I'd absolutely agree. I'd go even a step earlier and build flip-flops and NAND gates and counters and stuff on a breadboard. Then working on a simple non-pipelined, old-school CPU like an 8086 or 68000, or maybe today an Arduino. They did all that back in CS programs back in the day; I'm not sure why they ever stopped.

        Then, you can know not just on a logical level but on a physical level what your CPU's op codes are doing. You understand, at least on a basic level, every abstraction

    • Prove me wrong.

      This is not how the burden of proof [wikipedia.org] works.

      • Too bad slashdot basically ignores that these days. The last two days of my posts on slashdot basically involve somebody (DamnOregonian) saying that I've said things that I never said, so I ask him to prove it, so his ultimate reply is to call me a bullshitter as if that is some sort of vindication of his viewpoint.

        Kids these days...

      • Ok professor. This isn't academia. I'm not forcing anyone to believe me, nor did I claim to have proof. I provide no evidence. However I applied some logic to some empirical/anecdotal evidence to make my conclusion. I could very well be wrong. Anyway, I provided a hypothesis/speculation. If someone wants to blindly believe me, that's on them, and they'll likely be doing so based not just on what I said but also their own (possibly biased) experiences. If you're interested in the truth you can find evidence

        • I'm not forcing anyone to believe me, nor did I claim to have proof. I provide no evidence.

          So it's settled: there is no reason to believe you.

    • Re:Rust (Score:4, Interesting)

      by keltor ( 99721 ) * on Sunday January 08, 2023 @03:10PM (#63190026)
      Rust is terrible to use in practice. I'm currently stuck maintaining an application I wrote in hopes that we'd be able to hire some Rust people and evolve from there, but by the time I got a single person hired, we both very much agreed it was just painful in practice. It's Ada all over again.
    • Most programmers barely know assembly. It does not make them bad. Interest and investment in assembly skills probably correlates with general proficiency, but it is not a causation.

  • by Required Snark ( 1702878 ) on Sunday January 08, 2023 @04:57AM (#63189168)
    In alphabetical order, here are the bottom 50:

    ActionScript, Alice, Apex, B4X, bc, Bourne shell, C shell, Chapel, CL (OS/400), Clojure, Common Lisp, Crystal, cT, Elixir, Emacs Lisp, Erlang, Forth, GAMS, Hack, Icon, IDL, Inform, Io, J#, JScript, Korn shell, Ladder Logic, Limbo, LPC, ML, Modula-2, MQL5, NATURAL, OpenEdge ABL, PL/I, Pony, Processing, Programming Without Coding Technology, Q, Racket, Raku, Ring, S, Solidity, SPARK, Tcl, VBScript, VHDL, X++, Zig

    • A Charles Dickens' Ghost of Coders Past of a Pascal dialect is ahead of Rust?

      Sad!

      • You, clearly, have not had the privilege of working in Delphi because of you obvious bias.

        Those doing web development wonâ(TM)t find Delphi appealing unless the buy one of 3rd party libraries. And, the code isnâ(TM)t industry standard or portable across companies.

        But, I donâ(TM)t do web development.

        My biggest gripe about it is that the dev environment still only runs in Windows and cross-compiles for the other platforms. I work in a Windows VM on my Mac.

        Porting the IDE to Mac and Li

        • Relax, it's Palmolive!

          You have to be old enough to have started out programming in Pascal to remember that meme.

          Privilege of working in Delphi? Brother-man, I learned Pascal from Brinch Hansen, himself.

          I started work with Anders Hejlsberg's creation going back to Turbo Pascal Version 2, running it on a dual floppy disk IBM PC.

          Delphi and the things leading up to it have been around for a long time. I was remarking that something that is dismissed by most as an ancient relic is slightly ahead of Ru

    • I wouldn't be the man I am today with out VBScript. VBScript, the language men call for byRef and byVal.

      • I used it a lot back in my Windows-only days (employer's choice, definitely not mine) because it was pretty much the only scripting language that was more or less guaranteed to exist on any Windows machine at the time.

        A horrid beast of a language, but, still, sometimes better than nothing.

        Powershell fills a similar role today. Also horrid, just in a different way.

  • ... that it's time for the weekly language popularity contest post again. What does Bennett Haselton think of it?
  • If they can't get a basic thing like this correct, it casts a huge doubt on their competence and the validity of anything they have to say.
    • Are you one of those idiots who think declarative programming languages aren't programming languages?

      I say this is a primarily-C++ programmer, who doesn't have a gate-keeping complex about languages that don't fit the imperative mould.
      • by Osgeld ( 1900440 )

        I wrote a batch file to find a string in a pile of txt files, Imma real programmer now right?

        • Yes, because unlike you, I don't have a gatekeeping complex, or a need to sustain my ego by looking down on other programmers. What kind of a fucking dickhead loser still holds on to high school attitudes applied to programming languages?
    • I mainly agree with you, but if it is Turing complete it is a coding language, I heard MS even made Excel statements complete and if that's a programming language why not just get over it and not be so rigid.

    • I think my issue with having SQL in the list is because it's not something most coders are working with directly - they're typically going to be interacting with an SQL database via one of the other languages, which often have some amount of an abstraction layer between the language and SQL itself.

      Admittedly I work directly in MariaDB fairly regularly, but I assume that's atypical (maybe I'm wrong).

  • by nagora ( 177841 ) on Sunday January 08, 2023 @06:11AM (#63189226)

    The problem is that people search for different reasons. Clearly assembly language is harder than PHP, so there's a lot of searching and Assembly is higher up than PHP. But that's not why Python is higher up than Assembly.

    Basically this survey tells us nothing very clearly; it certainly doesn't tell us which languages are most "popular".

    • They explain to you what they mean by popular, and no, they do not say that "popular = well-liked".

      You should disagree with their methodology, not merely their use of the word "popular".
  • Rust entered the top 20 again

    Number 10 is PHP with 1.39%

    Does it really make sense to watch for popularity of languages at a sub- percent level? The question may sound rhetorical but I tried to dig up the absolute numbers of "number of skilled engineers world-wide, courses and third party vendors", didn't find any in the two links.

    https://www.future-processing.... [future-processing.com] says "there were 26.8 million active software developers in the world at the end of 2021"

    So Rust with its 0.61% would roughly translate into 130

    • A developer that uses python might also use php and javascript and C# and C++ and SQL and Java as well.

      The percentages don't represent distinct developer groups, so your numbers are wrong and low.
      • You are right. The "ratings" only approximately represent percentage of people knowing the language, but they might be closer to the representation of the percentage of people for whom Rust is some sort of "main" programming language.

        Which does not change the nature of the question: how important are these numbers?

    • Honestly I don't think there is truly a good measurement of the popularity of a programming language. Only three years ago it was hard as hell to find rust crates for specific things, and as of March of last year, every single use case I was at some point looking for is now covered by at least one crate. Among them was generating excel documents, ldap authentication with gssapi, PCSC, PIV, and a few others I can't think of at the moment. At the time I was wanting to learn Rust, golang had these covered bett

  • For C's popularity, without me the language would die a slow atrophying death in a hospice somewhere.

    Jokes aside; I would not use C for web development, PHP is made for that purpose. I would likewise not use C for app development, java cornered that market (on android, I heard there's another environment) now there's talk about a new fad called Kotlin, haven't really got around to look at it yet.
    And there is a lot of hype concerning Go, use that if you aren't confident you can handle your memory.

    But for a C

    • by Jeremi ( 14640 )

      Every time I think "I could totally use C for this", my next thought is "sure, but if I use C++ I'll get RAII/constructors/destructors as well, so I won't have to worry (much) about memory/resource leaks. And I'll just ignore all of the other stuff in C++ that I have no use for."

  • I had to program in all of them at one point of time. (Mostly in school assignments in the distant past I admit. Also Dynamo and a simulation language I don't remember the name of.)

    Oh, and then there's Ada (which I never programmed in but I did write a parser for it using Bison one time.)

    How many of these languages will be remembered as well as the ones I just mentioned.

    • by jstott ( 212041 )

      Where indeed:

      • ADA, No. 26
      • Fortran, No. 27
      • COBOL, No. 31

      So yeah, Fortran beat out some of the "trendy" languages in the headlines including Julia, F/#, and Dart. ADA and Kotlin were nearly tied. Just proving once again that Tiobe ratings are "sound and fury, signifying nothing."

  • by Tumbleweed ( 3706 ) on Sunday January 08, 2023 @09:28AM (#63189372)

    Sad that Nim isn't even on the list. :(

    I'm puzzled as to why C++ is *increasing*, and even more by assembly language beating out PHP.

    Also why is Java so high when Kotlin exists?

    • My guess is searches for C++ increases once again due to the looming C++23 update.

      Java is high because backwards compatibility. Too many enterprise things - expensively developed things - are written with the various Java enterprise ecosystems. The people with money are not going to upend all of that to lean on a language created by a small IDE company.
  • by fyngyrz ( 762201 ) on Sunday January 08, 2023 @10:36AM (#63189470) Homepage Journal

    Many times when opening Slashdot I am greeted with the following advertisement:

    Do you develop on GitHub? You can keep using GitHub but automatically sync your GitHub releases to SourceForge quickly and easily with this tool so your projects have a backup location, and get your project in front of SourceForge's nearly 30 million monthly users. It takes less than a minute. Get new users downloading your project releases today!

    Now. Given that SourceForge is being maintained by the same people who maintain (cough) Slashdot, I can't imagine why I would be motivated to trust anything I've written to SourceForge.

    I mean, seriously. Slashdot doesn't even support unicode in 20-frigging-23, and the list of unsupported but useful HTML is long and distinguished. The people over at the other Slash-based site have all that stuff done, and more.

    Perhaps if they want developers to use SourceForge, they should show that they know how to maintain a website first.

    </RANT>

    • Perhaps if they want developers to use SourceForge, they should show that they know how to maintain a website first.

      They'd also have to take the name of their business out of the word filter here, and also reverse their ban on stories critical of Elno. You can't trust them not to remove your projects if they conflict with their agenda. Then again, you can't trust github either, e.g. they recently removed AUTOMATIC1111's SD webui repo for links to content that didn't align with their values (probably waifu diffusion or something.) I moved to gitlab when M$ bought github, SFSG.

  • by jonathantn ( 6373084 ) on Sunday January 08, 2023 @11:04AM (#63189520)
    There is no way that Visual Basic is more popular than JavaScript. I don't know who they are polling, but that isn't a reality.
  • I know everyone want to put bumpers in the gutters these days. But once you poke your machine into a panic a couple times you learn to be real careful with memory. Longtime ago. I don't argue with the fact that that can be a dangerous thing. I'm critical of rust because its following of zealots. OMG I've misplaced my bias! It will buy me time to see if the language sticks, I guess. I'm actually warming up to it. It has a way that reminds me of the coercive way that Objective C makes you write in a certain p
  • There are some highly unrealistic results here. For example, VB usage shot up in 2020 from below Javascript to more than double it in a single month? RPG in the top 50? There is very little correspondence between this list and stackoverflow tags.

    The dataset for these statistics must be tiny, or maybe their methodology includes the use of a random number generator, good for clickbait.
    • by vadim_t ( 324782 )

      TIOBE themselves explained what they do: https://www.tiobe.com/tiobe-in... [tiobe.com]

      TL;DR: "They google for +" programming" and extract the "X million results" stat. That's it.

      So yeah, I wouldn't trust that this is good for anything. It's vulnerable to all kinds of errors -- whether one refers to "Go" as "Go" or "golang", whether the search engine considers "C++" to be mostly the same thing as "C", whether the particular culture in a given community results in the expression "$LANG programming" to be used more often

  • I would like to see more use of Objective-C. It's a very good language that doesn't get the love it deserves.
  • ..."Get Devs Panties In A Bunch" list.

  • It was actually very predictable. The language is easy and people get good money. I've been looking into Phyton's minimum wage recently, I'll learn here [studydriver.com] if anyone is interested. At first, of course, you get the minimum. In a year, you can climb very well. And then just continue in the same spirit.

I think there's a world market for about five computers. -- attr. Thomas J. Watson (Chairman of the Board, IBM), 1943

Working...