Slashdot Mirror


Which Programming Language Is Most Popular - The Final Answer? (zdnet.com)

An anonymous Slashdot reader writes: Following a common technique among political pollsters, a technology columnist combined the results from various measures of programming language popularity for a more definitive answer about the most important languages to study. He used IEEE Spectrum's interactive list of the top programming languages, which lets you adjust the weight given to the number of job listings and number or open source projects, then combined it with the TIOBE Index (which is based on search engine results), and the PYPL Index, which checks the number of tutorials for each programming language on Google.

The results? "The top cluster contains Java, C, Python, and C++. Without a doubt, you should attain familiarity with these four languages." He points out they're not tied to a specific programming platform, unlike languages in the second cluster -- JavaScript, C#, PHP, and Swift -- while the last two languages in the top 10 were Objective-C and R. "The C-family of languages still dominates. Java, C++, C, C#, and even Objective-C are all C-based languages. If you're only going to learn one language, you should pick one of those." But his ultimate advice is to "learn multiple languages and multiple frameworks... Programming is not just an intellectual exercise. You have to actually make stuff."

16 of 401 comments (clear)

  1. This again? by Dunbal · · Score: 5, Insightful

    Seriously Miss Universe is only once a year. Yet I'm seeing "which is the most popular language" every month or so here. Who gives a shit? Certainly not your CPU. It all gets compiled down to assembly anyway. THAT is the most popular language, even if few humans code in it nowadays all computers read it.

    --
    Seven puppies were harmed during the making of this post.
    1. Re:This again? by Jonner · · Score: 5, Informative

      "Assembly" is not a programming language. Rather, there is at least one "assembly language" for each CPU instruction set. More importantly, compilers rarely produce any kind of assembly language any more, though there are various types of intermediate representations used by interpreters and compilers. Every CPU executes instructions in a machine language. There are several such languages in common use, most importantly those understood by the x86 and ARM families.

    2. Re:This again? by Anonymous Coward · · Score: 5, Insightful

      "Assembly" is not a programming language. Rather, there is at least one "assembly language" for each CPU instruction set

      An assembly language you say?...so humans can program in it? Kind of like a programming language?

      More importantly, compilers rarely produce any kind of assembly language any more

      They do if you pass the -S flag.

      Every CPU executes instructions in a machine language. There are several such languages in common use, most importantly those understood by the x86 and ARM families.

      Yeah, computers execute machine code, assembly is the language humans write to generate machine code. Thanks.

    3. Re:This again? by MightyMartian · · Score: 4, Informative

      He's not even right in a pedantic way. Assembly languages are programming languages. Not a very easy set of languages, to be sure, but then again neither is Brainfuck.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    4. Re: This again? by K.+S.+Kyosuke · · Score: 5, Informative

      and the original 1983 version of Pascal.

      I think the 1970 version of Pascal just got offended!

      --
      Ezekiel 23:20
    5. Re:This again? by NoNonAlphaCharsHere · · Score: 4, Funny

      Which language would you have sex with?

      Perl, obviously, it has the most holes in it and sucks the hardest. There are countless ways to get fucked by Perl.

    6. Re:This again? by Big+Hairy+Ian · · Score: 5, Informative

      It all gets compiled down to assembly anyway.

      Actually it gets compiled down to Machine Code. Assembly Language is simply Machine Code rendered in a human readable format.

      e.g. ld a,1 in Z80 assembler would be 3E01 in HEX

      --

      Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    7. Re:This again? by jellomizer · · Score: 4, Insightful

      Well developers should be concerned about that.
      If you are a Perl Programmer, or Ruby programmer, and you see that your favorite language is falling off the list, perhaps it may be important to your career to brush up on the popular languages. I myself rarely do C or C++ programming, mostly Python, C# and Java. However every once in a while I will do and do some C/C++ coding on it to see what is new and discover things that I had learned in other languages had also been in C/C++ or was recently added to it. While my professional work, doesn't need me to use C/C++ knowing that it is still a popular language means I should keep up some practice in it.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    8. Re:This again? by jellomizer · · Score: 4, Insightful

      Assembly isn't hard, however it is tedious. You have a relatively small set of commands that do simple things. So for example if you want to print something. You will need to assign the memory address/registers for your text, populate that memory address with the data. Tell where it will look for that set of data, then call the interrupt that will have the video processor turn your string to text.

      or you can use printf that does all that, and more for better performance, as it can buffer the data set and display the data more efficiently. Because the person who wrote the printf probably spent a lot of time to get that command right, while if you are working on your own app. You probably don't have the time to recreate all that work for a simple result.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  2. My Precious by ramorim · · Score: 5, Funny

    As you can C there is only one Programming Language to rule them all :)

  3. Re:What about English? by ShanghaiBill · · Score: 5, Insightful

    English can, and should be, logically structured. Is its complexity that is holding back from the use by the masses?

    English can be precise if you choose your words carefully. But you will soon find that you are saying or typing WAY more than if you used a real programming language to do the same thing.

    Would you rather type: for (int i = 0; i < 10; ++i) {

    Or: Using an integer with at least 32 bit precision initialized to zero, test if the integer is less than 10, and if so perform the specified task, and then increment the integer, and repeat the test.

    Which would you rather debug?

    Do you think mathematicians should also eschew mathematical notation?

    Do you think chemists should describe molecules in English, rather than using formula or diagrams?

  4. Which programming language! by Camel+Pilot · · Score: 5, Funny

    Man I am falling behind... I have never heard of the Which programming language and here we are told that it is the most popular. And I thought I was a software professional. BTW just so I have straight is it WHICH or Which or just which - I don't want to embarrass myself at the next meeting when I propose we do the next project in Which.

  5. Re:What about English? by EmeraldBot · · Score: 5, Insightful

    I would rather use the language that enables the most users to instruct their computers on what they want done. Stupid battles over curly braces and punctuation does nothing to further this goal. Humans have understood how to interpret human language, it is high time we taught our machines to do the same.

    You completely dodged his point. Seriously, go to a mathematician sometime, tell him to write everything in pure English. None of this quadratic stuff, we only live for "x equals minus b plus or minus the square root of b squared plus 4 times the value of a times c divided by the value of 2 times the value of a". Because that's much more accessible and readable than some scratch marks, clearly.

    Next up will be the elimination of slang, yes?

    --
    "Set a man a fire, he'll be warm for the rest of the night. Set a man afire, he'll be warm for the rest of his life."
  6. Re:What the Idiotic Hell./ by ShooterNeo · · Score: 4, Interesting

    Of course popularity matters.

    1. More popular languages you can find less expensive developers for...(or more total developer talent for a given amount of money)

    2. More popular languages are likely to have stackoverflow posts with examples for every single basic task and explanations about what errors mean. (before you gloat about how you don't need help from SO, have you ever faced goddamn C++ linker errors? Might as well have an Ouija board out to find out what the mistake is)

    3. More popular languages work on more computers and are likely to continue to work in the future

    4. More popular languages tend to be faster. Usually a shit ton faster. Java has gone from a bloated mess to a bloated mess that is often within spitting distance of C on performance shootouts. That's from the popularity spurring further development. C is almost always king of the hill and nothing is faster. Python? Rust? Whatever n00bs. Those languages may be nice to write complex code that only gets run occasionally but if you need high end performance they aren't going to cut it.

  7. Re:Yeah, but... by arth1 · · Score: 5, Interesting

    Don't forget shell scripts.
    I do development in C and many other languages, but I bet that most of the code I write is in posix sh, bash or perl.

    Some quite advanced systems are written as scripts. When timing is not essential, it can be a rational choice. And even then, the majority of a system can be written as scripts, with only the timing-critical components being compiled code.

  8. Murphy Says... by sycodon · · Score: 4, Funny

    It will be the language least suited to your task, but insisted upon by your managers.

    --
    When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.