Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Programming Stats

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

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."
This discussion has been archived. No new comments can be posted.

GitHub's Four Most Popular Programming Languages Remain: JavaScript, Java, Python, and PHP

Comments Filter:
  • Web languages (Score:5, Insightful)

    by Actually, I do RTFA ( 1058596 ) on Monday November 19, 2018 @12:36AM (#57665910)
    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.
    • Re:Web languages (Score:5, Informative)

      by AmiMoJo ( 196126 ) on Monday November 19, 2018 @04:03AM (#57666296) Homepage Journal

      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.

    • 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 .

  • by nyet ( 19118 ) on Monday November 19, 2018 @12:40AM (#57665926) Homepage

    It's kotlin.

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

  • I feel left out. First there was darkness. Then there was C. Then there was the kernel. Then there was Linux. Then there was Android. Then, finally, there was light. Through the gift of C, the world can now see!
    • Well, before C there was B, before which there was BCPL (the language MUD 1 was written in - making BCPL the most important language in the universe). Before that was CPL. And before that, darkness.

  • by Rosco P. Coltrane ( 209368 ) on Monday November 19, 2018 @12:44AM (#57665938)

    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.

  • PHP7 caught my attention, looking like a Python wannabe with generators and anonymous functions. Can't find a decent reference guide to get myself up to speed. Where is O'Reilly when you need them?
  • by UnknownSoldier ( 67820 ) on Monday November 19, 2018 @01:06AM (#57665968)

    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.

    • by Tablizer ( 95088 )

      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.

    • 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.
      • This. In 2018 the standard programming language for the web should be something better than Javascript.

        But you have to admit, it somehow feels cool, once you know it. Try programming Euclid's algorithm in a single line in another language. In Javascript you can do it like this:

        var xyGcd = function gcd(a,b){ return b ? gcd(b, a%b) : a; }(x, y);


        .
        • by Anonymous Coward on Monday November 19, 2018 @03:35AM (#57666236)

          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))))

        • by gtall ( 79522 )

          You could knock that out in APL from the 60's.

        • proc gcdE {a b} {expr {$b==0? $a: [gcdE $b [expr {$a%$b}]]}}

          Tcl is important in this debate as it was an early rival to Javascript, being incorporated into a number of web browsers as opposed to merely being something that could be included.

      • by AuMatar ( 183847 )

        Its popular because its the easiest thing to use for a rank beginner. Want to learn C? You need a compiler and you'll be doing console apps for a long time. Want to learn Java? You need to deal with the JDK, and you need to write console apps or make ugly Swing apps. Want to learn Python? Compiler again, and I don't even know if there is a ui library. Then we have build systems.

        Want to learn javascript? You need a browser, and can jump right into a graphical app. If your goal is to learn how to pro

        • Swing apps are not ugly. They look usually like your OS GUI. If you use an ugly OS ... your problem.
          There are plenty of C interpreters ... no need for a compiler.
          Python is not compiled, it is either run by an interpreter or in an REPL environment.
          Javascript easily runs standalone ... just use Rhino or Node or any other JavaScript interpreter.
          In PHP it is as easy as in any other language to separate GUI code from back end code. But for toy projects it is easier to mix it and unfortunately toy projects have t

          • Want to learn C? You need a compiler

            There are plenty of C interpreters ... no need for a compiler.

            Let me try to guess what grandparent is really getting at: Neither a C compiler nor a C interpreter ships with the operating system included with most desktop and laptop computers. You typically must install Visual Studio or Xcode.

            Python is not compiled, it is either run by an interpreter or in an REPL environment.

            A Python interpreter does not with the operating system included with most desktop and laptop computers. You typically must download and install Python at Python.org, and a stand-alone executable created by bundling the interpreter, standard library, required third-party modules,

            • My Mac came with Python, gcc and PHP preinstalled.
              No idea what a modern Ubuntu will install by default, though.

              Windows ... oh yeah.

              • by tepples ( 727027 )

                First, macOS has for a long time shipped some ancient version of Python, often even older than what Debian or Ubuntu LTS ships. (Ubuntu 18.04 currently comes with Python 3.6.) This has confused users who saw, for example, a SyntaxError when a program uses with (program written for 2.5 -2.6 when macOS was shipping 2.4), a "command not found" when a program's shebang line specifies python3 (Python 3.x when macOS was shipping only 2.x), or await (introduced in 3.5). Users have ended up having to install Xcode

      • The primary criticism of PHP these days is the library. Yes, a lot of work has gone into cleaning things up, but PHP is weighted down by a lot of legacy cruft. This is true of most languages as they evolve, but PHP's beginnings were so mucky, that supporting legacy code has bequeathed to PHP programmers a gawdawful set of core libraries. But if you stick to the modern feature set, it's no better and no worse than many scripting languages.

        I still have a thing against Javascript. I find it tiresome and ineleg

    • by Joce640k ( 829181 ) on Monday November 19, 2018 @04:26AM (#57666366) Homepage

      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.

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

        HTML and CSS. And if you absolutely need interaction beyond link navigation, form submission, and checkbox collapse/radio tabs, you can use any language that isn't JavaScript but transpiles to JavaScript or compiles to WebAssembly. Or you can skip a web browser and provide a set of native applications for the end user to download, optionally audit, optionally compile, and install.

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

        I wasn't aware that home ISPs were still bundling web hosting now that most subscribers were putting their work in silos [indieweb.org] such as

      • Any browser that supports plugins could theoretically support other languages.

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

        Such as this one.

        https://webperl.zero-g.net/ [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.

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

    • by Njovich ( 553857 )

      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.

      I've seen plenty of code monkeys writing C and Java. The languages are by themselves hardly more complicated than PHP, yet are far more vulnerable to the 'just buy a bigger server' paradigm.

      PHP sol

    • JavaScript is actually a very fine language.

      It only has two flaws: historically bad integration into browsers, aka incompatible ideas how the DOM should work/be accessed and handling of primitive types. E.g. automatic coercion.

      If you think otherwise, you are a programmer who has not much clue about programming languages. are popular because any code monkey can use them. This actually indicates clearly that you have no clue about programming languages ...

      • People who shit on javascript are nearly universally poor programmers, its almost a reliable indicator.

        All languages have quirks and foibles; but javascript is an amazingly flexible and powerful little language. Its as near a perfect unification of LISP and C++ as you could ask for, all wrapped up in a beautiful async event loop.

    • 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.

      Who said they were "gourmet"? The summary said they were most popular, on a repository website.

      Anyway, different strokes for different folks. Being usable by people outside of a guild is actually a feature. Maybe not a feature that you are interested in, but a feature nonetheless.

  • by Qbertino ( 265505 ) <moiraNO@SPAMmodparlor.com> on Monday November 19, 2018 @01:12AM (#57665974)

    ... 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.

    • by Tablizer ( 95088 )

      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.

      Unless you are a really big org, why can't regular RDBMS be used for the same thing? (And RDBMS are getting "scale-ier" over time.) That way when you do need something that RDBMS already provide, you don't

    • NoSQL is a very old concept. MUMPS has a hierarchical database built into it. DB4 and GDBM are arguably just as NoSQL as Memcached. OODBMS predate Memcached as well.

      Web developers don't drive anything, just as change directory developers didn't drive the BBS scene, although those were the most common utility.

  • The problem with these sorts of studies is that the definition of what a "language" is has changed radically over the past 10 years.

    React, Angular, Vue and other frameworks may have their roots in Javascript, but the programming experience can be radically different and the code may look alien and indecipherable to those unfamiliar with each flavor. If we're going to use the linguistic metaphor of "languages" to describe code, then we must consider these to be new languages as they are not understandable b

    • by AuMatar ( 183847 )

      No we don't. That's like claiming C++ for linux and C++ for windows are different languages. An argument like this is just foolish, nobody would agree with that. A language is a set of syntax. A bunch of libraries and frameworks you use doesn't change that. Its still all Javascript.

      • The framework adds its own vocabulary. One has a call for this, another one has a call for that, they both have a call for the other but use different names. Once the frameworks start taking over they might as well be different languages.

        Cockney rhyming slang and valspeak are both technically English, but I suspect speakers of one have trouble understanding the other. Or medical jargon and legalese.

      • Is Jython the same language as Java?

        If no, then a hosted language is not the same as the hosting language.

        As for C++, suggest comparing a Visual Studio 6 C++ program or even a VS2015 C++ program with a GCC C++ program, an Intel C++ program or a Green Hills C++ program.

        They are not the same. Those five compilers all support stuff that the others cannot run. Porting between them is a serious pain.

        Even just porting between VS6 and VS2015 is agony. And what's with this "oh, we deprecated POSIX"?

        No, if you don't

  • by aglider ( 2435074 ) on Monday November 19, 2018 @02:39AM (#57666138) Homepage

    > 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 [github.com] (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.

    • Github's defaults probably contribute to this. You have to setup a repo according to Linguist.

      For example, I have a Github repository that's a whole lot of C and Objective-C. However my help documentation is written in HTML/CSS, and uses Apple's JavaScript. There's a little bit of XSLT used for generating documentation, and the end result, if I don't configure Linguist, Github reports my project as being HTML and JavaScript.

      The most important part of the project is pure C, but unless I manually configure th

    • by swilver ( 617741 )

      So, you'd favor verbose languages or languages that are so unreadable it's better to rewrite the whole unit?

  • We have completely fucked software.
  • So the programming language for people who dont know how to code isn't doing well. Who would have thought?
  • by jd ( 1658 ) <imipakNO@SPAMyahoo.com> on Monday November 19, 2018 @01:04PM (#57668940) Homepage Journal

    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.

  • Each problem space is likely to settle on its own most popular tool. Java fills the role of megalithic system design suitable for huge teams and projects. PHP dominates at generating web pages. Python has several niches in academia, control systems, and online news media. JavaScript runs the web front end, and also is the goto for writing network code to tie together web services et al.

    New languages need to fill a niche better than the current crop in order to become dominant.

  • I'm just posting to thank the submitter and/or EditorDavid for using the Oxford comma.

Think of it! With VLSI we can pack 100 ENIACs in 1 sq. cm.!

Working...