Slashdot Mirror


GitHub's Four Most Popular Programming Languages Remain: JavaScript, Java, Python, and PHP (thenewstack.io)

A recent TechCrunch article claimed to have identified the best indicator of programming language popularity: GitHub's annual "State of the Octoverse" reports. So Austin-based technology reporter Mike Melanson explored the new verdict in GitHub's 2018 report: It felt to me like the overarching theme of the numbers was one of quiet stasis for the year past, at least when it comes to those languages deemed the cream of the crop. One of the first graphics offered in the post shows the top languages according to the number of repositories created and we see that everything seems to be flowing along, just as it has for the last decade. While GitHub points to a "steady uptick" for JavaScript after 2011, it looks like this list of languages hasn't changed much over time. [The graphic shows the four most popular languages -- every year since early 2014 -- have been JavaScript, Java, Python, and PHP.]

When we look at the top languages according to the number of contributors, we see a similar story, with the top four languages mirrored. In this chart, of course, we see that Ruby is on a steady decline, while Typescript is on a steady rise. The only surprise to be seen here is that C, after a brief uptick in popularity, has taken a bit of a nosedive over the past year. Either way, seven of 10 languages have the same exact ranking....

Finally, beyond the language rankings themselves, GitHub offers a wonderful analysis of just what it is that makes a particular language popular in 2018, boiling it down to three key characteristics: thread safety, interoperability, and being open source.

GitHub's report also identifies its fastest growing languages over the last year -- including Kotin, TypeScript, Rust, Python, and Go. "This year, TypeScript shot up to #7 among top languages used on the platform overall, after making its way in the top 10 for the first time last year," the report notes.

"TypeScript is now in the top 10 most used languages across all regions GitHub contributors come from -- and across private, public, and open source repositories."

24 of 144 comments (clear)

  1. Web languages by Actually,+I+do+RTFA · · Score: 4, Insightful

    So, a website with programming tools is primarily used by people who use web technologies. Shocking. Meanwhile, most C++ people are probably just all self-hosting repos.

    --
    Your ad here. Ask me how!
    1. Re:Web languages by AmiMoJo · · Score: 4, Informative

      I know a lot of C/C# people use GitLab and BitBucket because they give you free private repos. With GitHub free accounts can only make public repos.

      Web developers are used to doing everything in public, because everyone gets to see their code and most of it is using public frameworks anyway.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:Web languages by angel'o'sphere · · Score: 2

      So, a website with programming tools is primarily used by people who use web technologies.
      It is not a "web site", it is a source code repository, aka version control system.

      And the only thing you could remotely call web related "technologies" are JavaScript and PHP ... Python is a language and a platform, so is Java.

      Meanwhile, most C++ people are probably just all self-hosting repos.
      Yes, and shockingly the C++ crowed produces probably not much open source code ... or it would be in public accessible repos ...

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  2. Kotlin by nyet · · Score: 2

    It's kotlin.

    Taking bets on how long /. will take to fix the typo. My bet is "after the heat death of the universe".

  3. Python is popular by Rosco+P.+Coltrane · · Score: 2

    not because it's such a great language - it's good alright, but no better than a lot of others - but because when you need to do something, you can be almost certain there's an easy-to-use module to do exactly what you need out there.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  4. Re:JAVA What? by Rosco+P.+Coltrane · · Score: 2

    Nah... Since they turned it into a script, it's gotten much better. Get with the times man!

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  5. Popularity !== Best by UnknownSoldier · · Score: 4, Insightful

    By this retarded logic McDonalds is gourmet food with the *billions* it serves. Hint: It isn't.

    Likewise, shit languages like Javascript and PHP, are popular because any code monkey can use them. But ignoring a problem doesn't make it go away. i.e. Memory management. To paraphrase JWZ, "Now you have two problems." This attitude of just throw more hardware at it is naive and non-scalable for certain problems.

    Almost no one cares about performance, minimal code libraries, and non-bloated apps. The lower the bar for programming the worst this is going to get.

    It's no surprise that "Worse is Better" W.R.T. programming languages has taken off. This has been happening for 30+ years.

    1. Re:Popularity !== Best by Tablizer · · Score: 2

      JavaScript and PHP are fine if they are used how they were intended to be used: glue languages handling events and HTML templating. If you write OS's or entire GUI engines in them, or try to make them replace RDBMS, you deserve to be fucked.

    2. Re:Popularity !== Best by phantomfive · · Score: 2

      Javascript isn't popular because "any code monkey can use them." It's popular because people are forced to use it. That is all.

      PHP has a good paradigm: when people criticize it, they always criticize the details of the implementation, not the overall concept. Admittedly there are enough implementation mistakes to ruin the cake.

      --
      "First they came for the slanderers and i said nothing."
    3. Re:Popularity !== Best by Anonymous Coward · · Score: 4, Insightful

      APL: âOE/(^/0=Aâ.|X)/AâââOES/Xâ

      Awk: 'function gcd(p,q){return(q?gcd(q,(p%q)):p)}{print gcd($1,$2)}'

      Dc: [dSa%Lard0] [dup rollup rem] while pop.

      K: gcd:{:[~x;y;_f[y;x!y]]}

      Perl 6: my &gcd = { ($^a.abs, $^b.abs, * % * ... 0)[*-2] }

      R: %gcd%" - function(u, v) { ifelse(u %% v != 0, v %gcd% (u%%v), v)}

      Scheme: (define (gcd a b) (if (= b 0) a (gcd b (modulo a b))))

    4. Re:Popularity !== Best by Joce640k · · Score: 4, Insightful

      Likewise, shit languages like JavaScript and PHP, are popular because any code monkey can use them.

      No, they're "popular" because that's all there is.

      In a web browser? What can you use that isn't JavaScript?

      On an ISP-hosted web server? What do they give you except PHP?

      Plus: Most JavaScript/PHP is written in the form of unimportant little snippets, that's why it ends up on GitHub.

      --
      No sig today...
    5. Re: Popularity !== Best by jd · · Score: 2

      Not necessarily.

      A language that isn't type safe is inherently going to have a higher defect density unless the programmer is using strict software engineering methodology. It is also less capable of optimizing, as it cannot determine if the constraints necessary are met.

      They also have certain limitations. I'd hate to see the NAG or Netlib libraries rewritten in Javascript. Rewriting OpenMPI or HDF5 in Python might be doable, but would the result be useful?

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    6. Re: Popularity !== Best by jd · · Score: 2

      Any browser that supports plugins could theoretically support other languages.

      https://www.tcl.tk/software/pl...

      Such as this one.

      https://webperl.zero-g.net/

      Or this one.

      But web programmers show no serious interest in either. That could be because of install base, but then that's because of install base and not because the options aren't there.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  6. The web folks embrace new ... by Qbertino · · Score: 4, Insightful

    ... solutions and methods of development within hours.

    I'm a relatively conservative developer in the web camp and it amazes me day in and day out how the web folks just automate away truckloads of menial tasks with some new tool that came along last week. A first look into npm has everyone joking but a second look reveals how they use their tools at hand to automate just about everything and get to go home early every other day. Example: many web centric repos on GitHub are actually used as distribution servers with a completely automated process for end-user software updates attached. And while many would think "OMG, how could you?"this is actually pretty smart. Another thing is this newfangled NoSQL fad which should better be called "We don't do relations and normalization". However, think about how often one-to-many is resolved outside of its original relational trail (almost never) and suddenly these super flat high speed data dumps aren't that stupid an idea.

    Conclusion: That the web camp basically owns and drives development methodologies and PLs these days doesn't surprise me the least and if you're some C++ snob I'd be careful to judge too quickly.

    My 2 eurocents.

    --
    We suffer more in our imagination than in reality. - Seneca
  7. Flawed metric, IMHO by aglider · · Score: 2

    > the top languages according to the number of repositories created

    In the web and mobile days you will obviously see more and more stuff in PHP, Python, Java and the likes.
    And fewer in C, C++.

    IMHO you'd not even just count *all* projects.

    Because a project like Linux (99.999% C) cannot count the same as a python-based or java-based toy project.

    You'd better count the overall number lines of code. Or, better, the overall number of modified lines of code at any time.

    Then you'd discover the real truth.

    --
    Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
  8. Re:JAVA What? by AuMatar · · Score: 5, Informative

    Have an Android device? YOu know, the smartphone owned by over 80% of the world? Over 90% of the apps on there are written in Java.

    Work with servers? A large amount of backend webservices are still written in Java. Especially large scale ones.

    It isn't used much for desktop apps, but its used pretty much everywhere else.

    --
    I still have more fans than freaks. WTF is wrong with you people?
  9. Strawman by Hognoxious · · Score: 2

    Nice try, but neither the title nor the article state that those languages were the best.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  10. C++ disappeared up its own backside by Viol8 · · Score: 3, Insightful

    The language is now so large and complicated because the ISO committee just won't leave well alone, that its a virtual cliff face for newcomers to climb in order to learn it. So thats the next generation lost. And even the current generation of C++ coders such as myself have given up learning the latest drafts of esoteric garbage that have been shoe-horned into it by people who clearly have too much time on their hands. I stopped at the 2011 iteration of the language, 2014 and 2017 have passed me by because it appears to be a law of dimishing returns leaning the new stuff and frankly I have better things to do with my free time.

    1. Re:C++ disappeared up its own backside by Viol8 · · Score: 2

      Thats all nice in theory, but in practice in a job you'll be working on all styles of C++ and you DO need to know all of it to be effective. Ditto when it comes to interviews. "Yeah, I'm no beginner but whats dis lambda shit? You not needin that bro!" isn't going to get you a job.

  11. Re:JAVA What? by angel'o'sphere · · Score: 3, Insightful

    Work with servers? A large amount of backend webservices are still written in Java. Especially large scale ones.
    If they are not written in Java then in Groovy, Scala or Kotlin, running on the JVM, using the Java infrastructure like web serves such as Tomcat or Jetty, running big data frameworks/tools like Hadoop, Spark or Cassandra.

    The snobs out there simply don't realize that 90% of their daily computer interaction that involves something else than their own computer or tablet reaches out to backends written (partly or completely) in Java, may it be FB, Amazon, Twitter, or their bank, booking a ticket for a plane or a theatre.

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  12. Re:Interesting: No C++ by DrXym · · Score: 2
    Vastly more likely is that fewer and fewer C++ projects are starting because its lunch is being eaten by other languages. If speed / memory are not critical then a higher level language (e.g. Java, Python, Go etc.) is more appropriate. And if speed / memory is critical then a language like Rust has a distinct advantage in a number of regards.

    I write C and C++ everyday but if I were contemplating writing something new and without some incredibly good reason I would be hard pressed to convince myself to use either.

  13. Re:JAVA What? by EasyRhino · · Score: 2

    There is a huge amount of server-side application and server code written in Java. Consider all the Java application servers available on the market (e.g. from IBM, Oracle, Red Hat, etc.) in addition to more lightweight servlet containers (e.g. like Apache Tomcat). There's also a huge community around Spring. Java is not dead. Even if all new development on Java stopped now the existing code-base would keep Java relevant for years.

  14. Misleading by jd · · Score: 2

    There are many ways of measuring popularity.

    Would a thousand copies of a change directory utility be one project or a thousand?

    Would a thousand line tightly-written program that has a million users be considered equal to a thousand line badly-written program with five users including the programmer's mother?

    Does a verbose language get counted the same way as a clean language?

    Does a language that inspires errors and thus fixes count as being as active as a language that inspires trust?

    How would you differentiate fixes from upgrades?

    These are serious questions. You could develop an AI to examine language characteristics, type of use,and unique addresses of downloads, but I see no obvious way to use any such metric and no serious possibility of such a metric being accepted. You'd get just as many arguments.

    We all look at metrics to tell us something profound. In truth, you're going to get a better answer from CowboyNeil.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  15. Re: Grumpy old men stick to Cobol by jd · · Score: 2

    Not really. I just see some impressive circles.

    Python is just BASIC with libraries, just as BASIC is Fortran without libraries.

    Everything old is new again. That's why it's called a revolution.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)