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

 



Forgot your password?
typodupeerror
×
Java Programming

C# Challenges Java in Programming Language Popularity (infoworld.com) 109

"The gap between C# and Java never has been so small," according to October's update for TIOBE's "Programming Community Index".

"Currently, the difference is only 1.2%, and if the trends remain this way, C# will surpass Java in about 2 month's time." Java shows the largest decline of -3.92% and C# the largest gain of +3.29% of all programming languages (annually).

The two languages have always been used in similar domains and thus have been competitors for more than 2 decades now. Java's decline in popularity is mainly caused by Oracle's decision to introduce a paid license model after Java 8. Microsoft took the opposite approach with C#. In the past, C# could only be used as part of commercial tool Visual Studio. Nowadays, C# is free and open source and it's embraced by many developers.

There are also other reasons for Java's decline. First of all, the Java language definition has not changed much the past few years and Kotlin, its fully compatible direct competitor, is easier to use and free of charge.

"Java remains a critical language in enterprise computing," argues InfoWorld, "with Java 21 just released last month and Java 22 due next March. And free open source binaries of Java still are available via OpenJDK." InfoWorld also notes TIOBE's ranking is different than other indexes. TIOBE's top 10:
  1. Python (14.82%)
  2. C (12.08%)
  3. C++ (10.67%)
  4. Java (8.92%)
  5. C# (7.71%)
  6. JavaScript (2.91%)
  7. Visual Basic (2.13%)
  8. PHP (1.9%)
  9. SQL (1.78%)
  10. Assembly (1.64%)

And here's the Pypl Popularity of Programming Language (based on searches for language tutorials on Google):

  1. Python, with a 28.05% share
  2. Java (15.88%)
  3. JavaScript (9.27%)
  4. C# (6.79%)
  5. C/C++ (6.59%)
  6. PHP (4.86%)
  7. R (4.45%)
  8. TypeScript (2.93%)
  9. Swift (2.69%)
  10. Objective-C (2.29%)

This discussion has been archived. No new comments can be posted.

C# Challenges Java in Programming Language Popularity

Comments Filter:
  • Dumb (Score:4, Informative)

    by phantomfive ( 622387 ) on Sunday October 15, 2023 @12:48AM (#63925851) Journal

    Java's decline in popularity is mainly caused by Oracle's decision to introduce a paid license model after Java 8. Microsoft took the opposite approach with C#. In the past, C# could only be used as part of commercial tool Visual Studio. Nowadays, C# is free and open source and it's embraced by many developers.

    Java is free and open source. Choose a language, but don't turn your brain off.

    • Re: Dumb (Score:4, Informative)

      by DrXym ( 126579 ) on Sunday October 15, 2023 @06:03AM (#63926113)

      The code is open source but the Oracle builds are not. Yes there are alternative builds like Corretto but this sort of shit annoys people. So too does the glacial pace of improvement in Java land althought Java 21 has some good stuff. I dont see C# being much better though. If I were starting a fresh project not sure I'd want to use either of them.

    • So is C# and .NET.

  • Meaningless (Score:5, Insightful)

    by Mrs. Grundy ( 680212 ) on Sunday October 15, 2023 @01:09AM (#63925869) Homepage

    From the description of the index [tiobe.com]:

    'Basically the calculation comes down to counting hits for the search query +" programming"'

    Which somehow gets turned into "Programming Language Popularity" because? By my calculate "remote control programming" is significantly more popular than "sql programming".

    • Some languages need the "+programming" more than others.

      Java is an island in Indonesia where 145 million people live. So if you Google for "java," you will learn about the island instead of the language.

      Likewise, python is the name of a snake, and "go" absolutely needs to be "go programming".

      But C#, PHP, and Kotlin work as naked searches.

    • by sosume ( 680416 )

      They should analyse technical questions to chatgpt and aggregate that by unique users and programming language.

  • Assembly? People still program in Assembly?

    I mean, I still regularly (weekly) program in assembly but I was using that fact to justify being post-human.

    It would be interesting if they broke it down by CPU - eg, z80, 8080/85, x86, ARM, etc.

    GrpA

    • by ShanghaiBill ( 739463 ) on Sunday October 15, 2023 @01:25AM (#63925885)

      The index isn't a measure of popularity but a measure of Googling.

      I rarely program in assembly, but when I do, I do a lot of Googling for the mnemonics and opcodes.

      So that gives it a high score.

      • Re: (Score:3, Insightful)

        by backslashdot ( 95548 )

        Measuring something by number of people googling for tutorials and how to do basic shit is a measure of how asinine the language is.

    • There are some things you can only do in assembly.

      I'm only familiar with x86, so can only relate to that.

      One such thing is switching to protected mode.
      Interrupts are also impossible to manage using higher level programming languages.
      Communicating with hardware is also impossible with higher level languages.

      On the other hand, there are some fun bugs which can cause headaches.

      To be honest, I found the x86 instruction set quite easy to learn.

      However, assembly is quite a while ago for me and I don't use it anym

      • Re: (Score:2, Informative)

        by Anonymous Coward

        Communicating with hardware is also impossible with higher level languages.

        Yeah, it's far too difficult for high level languages to include constructs like variable := port[$250]; or port[$250] := value; like Pascal used to to.

        • The syntax was/is a bit different. But that is actually how it was done in Pascal and Modula 2. Not sure, was it written Modula II?
          All languages from the Pascal family, Modula, Modula 3, Oberon, had syntax constructs to address hardware, in sane way, and were used to write whole operating systems.

      • by Anonymous Coward
        Sheer nonsense. I've written interrupt handlers in C, C++, Ada, and Modula-2. I'm also written hardware drivers in these languages. Heck, I once had to program a DSP using Ada without an OS underneath it.
    • by Osgeld ( 1900440 )

      I don't think its a part of the survey's used but its still pretty popular in embedded. While I know its popular to take a "controller" running several hundred Mhz so they can run micro python on it to control a lamp timer in the hobby world, but in the real world you might have a 0.3 cent 8 bit job with bytes of ram and a half a K of stroage to accomplish the same tasks

  • If you want to dig a hole you can use a finger, a hand, a shovel, a post-hole digger, an auger, a backhoe, or whatever.
    None of those are more "popular" no matter how much they are used, because the tool should fit the job.

    Java has its merits, I'm sure.
    C++ has its merits, I'm sure.
    A competent programmer will choose the tool that best fits the context of their goal. That includes a lot of factors including their target application, the documentation required, the organization paying them and its requirements

    • "If you want to dig a hole you can use a finger, a hand, a shovel, a post-hole digger, an auger, a backhoe, or whatever."

      Exactly, and tiobe would say the post hole digger is the most popular way to dig holes based on people googling the cheapest thing available they don't already have.

  • OpenJDK isn't a fork of Java, it's not an open source implementation of Java akin to Mono, it's as if Microsoft open sourced their implementation of C# adopted some kind of community governance model and called it OpenCS, and built their distribution from that upstream source.

    Microsoft did actually do this apparently, but it's called Roslyn, managed by the Net Foundation. The only difference is Microsoft charges for commercial use of their development environment not their runtime distribution AFAIK. Where

    • by Guspaz ( 556486 )

      Roslyn is Microsoft's C#/VB compiler/code analysis tools, not a language or runtime. It, like the rest of C#/.NET stuff, is opensource under an MIT license.

      It's not quite accurate to say that Microsoft charges for commercial use of their development environments. They have development environments like Visual Studio that require payment for certain commercial uses but are free for others (for example all commercial open source development qualifies for the free community license), and they have development

    • Microsoft charges for commercial use of their development environment

      One of them. VS just one dev tool among many, and you can use it for free for most things, particularly open source and if your company has 1M$ revenue. You can also use Microsoft's VSCode, which is fully open source and free for all uses, or any other tooling.

  • Counting Google hits (for words, some of which happen to also be the names of programming languages) is stupid.

    We should just ask ChatGPT what the most popular programming language.

  • These indexes are also dependent from how much help is searched on internet by programmers. On my own, I only search for help when using python, never for assembly or C++. Draw your own conclusions...
  • by christoban ( 3028573 ) on Sunday October 15, 2023 @03:10AM (#63925985)

    Java was only ever popular because it was taught in practically college in the world for a very long time. Now Python is enjoying that same advantage. C# and .Net were forced to be good on its own merits, and it shows, with its breadth of usage scenarios.

    • by sosume ( 680416 )

      Java was so hip in the 90s, it meant cool hipster programmers with their Macbooks, sitting in a Starbucks all day, sipping their Frappuccino lattes, eating avocado toast, listening to acid jazz, and programming enterprise Java beans for the back-end and applets to dominate the web.

      That was the marketing. In reality it was a slow, bloated platform that was insanely complex to properly deploy or develop for, and had all kinds of weird stability and memory usage issues. Those cool hipster programmers turned al

      • macbooks? frappucino's? in the nineties? wtf are you talking about. Java in the nineties was writing applet games on geocities and grunge, metal and techno parties.

    • I really need to proof read better.

    • C# and .Net were forced to be good on its own merits

      Oh my god. Dude, you are killing me. C# and .Net were both forced down or throats. I am glad you can find some happiness coding in them, but many others can not.

  • Java and C# (Score:4, Funny)

    by Qbertino ( 265505 ) <moiraNO@SPAMmodparlor.com> on Sunday October 15, 2023 @04:21AM (#63926051)

    Java is a modern PL that combines the awesome readability of C with the blazing speed of smalltalk.

    C# is a update that takes Java and adds in the wonderful portability of Visual Basic.

  • Popular != good. In fact, it is often an inverse correlation.
  • by Anonymous Coward
    So, one turd languages is more popular than another turd language.
  • Every one of these "most popular programming language" charts claims the same thing but shows different results. Seems all they are meant to do anymore is get programmers all hot and bothered that their language isn't being used as much.
  • Funny to look back and notice how many of the once-kool languages came and go, heck many of them never even made it within the top 10!
    The sad part is when corporate pressure try to shove-and-litter them into OSS projects that at some point folks will have to clean up.
  • I've been in Java since 1997 and .NET since 2002.

    I'm quite OK with Java being a thing of the past. Once Oracle got a hole of it the writing was on the wall to walk away.

    C# just seemed to evolve better. Java promised write once, run everywhere, but always fell short. Now with C# I'm quite happy to develop on Linux. MS has got Debian repos for me all ready to go, easy updates, everything stays where it should.

  • Where it's so safe, you can't see it at all.

  • Popularity of Programming Language

    Where is profanity in that list?

Life is a healthy respect for mother nature laced with greed.

Working...