Slashdot Mirror


RedMonk Identifies 2017's Most Popular Languages: JavaScript, Java, And Python (redmonk.com)

Twice a year the tech analysts at RedMonk attempt to gauge adoption trends for programing languages based on data from both GitHub and Stack Overflow. Here's their top 10 list for 2017: JavaScript, Java, Python, and PHP, followed by a two-way tie between C# and C++, a two-way tie between Ruby and CSS, and then C at #9, and Objective-C at #10. But their GitHub data now counts the number of pull requests rather than the number of repositories. An anonymous reader quotes their report: Swift was a major beneficiary of the new GitHub process, jumping eight spots from 24 to 16 on our GitHub rankings. While the language appears to be entering something of a trough of disillusionment from a market perception standpoint, with major hype giving way to skepticism in many quarters, its statistical performance according to the observable metrics we track remains strong. Swift has reached a Top 15 ranking faster than any other language we have tracked since we've been performing these rankings. Its strong performance from a GitHub perspective suggests that the wider, multi-platform approach taken by the language is paying benefits...

Of all of the top tier languages, none jumped more than TypeScript on our GitHub rankings, as the JavaScript superset moved up 17 points.... PowerShell moved from 36 within the GitHub rankings to 19 to match TypeScript's 17 point jump, and that was enough to nudge it into the Top 20 overall from its prior ranking of 25... One of the biggest overall gainers of any of the measured languages, Rust leaped from 47 on our board to 26 â" one spot behind Visual Basic.

Swift and Scala and Shell all just missed out on the top 10, clustering in a three-way tie at the #11 spot.

7 of 125 comments (clear)

  1. Because they weren't written in just ten days by raymorris · · Score: 4, Insightful

    > why are they better?

    *Why*, the *reason* they are better, is that the creators had more than 10 days to design, plan, implement, integrate, and test them. Several years, in most cases.

    Netscape very much wanted a client-side programming language built into the browser for their big 2.0 release. The original plan (Scheme) didn't work out, so with just ten days left before the public beta release, Brendan Eich designed and implemented, and integrated Javascript.

    It was a pretty amazing accomplishment - I rather doubt I could do that in ten days. Also, there are many areas where the ten-day schedule is apparent, such as inconsistencies in the naming and format of Javascript functions. In ten days there was no time to have a full complement of types, in fact Javascript can't handle integers. That's a problem because, for example it means 9999999999999999 is equal to 10000000000000000. Floating point comes with all kinds of errors. You're actually not supposed to ever compare to floating point numbers for equality, you're supposed to check whether the difference between them is small. Since JavaScript only HAS floating point numbers, it can't tell whether or not two numbers are equal, in the general case.

    JavaScript generally ignores errors and carries on. If you're driving somewhere and you realize you're going the wrong direction, you'd stop and turn around, right? Not JavaScript. When JavaScript notices it's doing something wrong, it continues full speed ahead, intentionally continuing to screw more and more things up.

    Type coercion in Javascript is nuts. In Javascript, 1 + 2 = 12, sometimes.

    One of the four useable types Javascript does have is Number. But 1 is not a Number.

    Number has properties MIN_VALUE and MAX_VALUE.
    Keep in mind, though, -1 is less than Number.MIN_VALUE, and MAX_VALUE is less than MIN_VALUE.

    Again, I couldn't write a better language in 10 days. Give me 60 days, though, and I might have built something better than Javascript.

  2. Re:java by j-b0y · · Score: 4, Insightful

    Java has a robust and widely used and robust frameworks for applications so in many cases the developer can focus on the business code; several mature development environments which hook into the reflection capabilities of the language to make coding quite pleasant; a rich set of tools useful for program qa and developer support; a massive developer pool. As a language it's OK, but language wars are so 90s.

    For a business that needs to get stuff done that's pretty important. For projects with lifetimes potentially in decades Java is an easy choice. A good programmer is a good programmer in any language; Java can make mediocre programmers productive. That might sound deeply unsexy to the slashdot crowd, but I think that's the reality of an awful lot of SW development, which is internal or contracted development for businesses.

    --
    Please remain calm, there is no reason to pani... wait, where are you all going?
  3. Re:Counts sharing, not use. Javascript always shar by Gravis+Zero · · Score: 3, Insightful

    You won't find Linux or Apache on Github, for example...

    Linux kernel
    Apache HTTPD Server

    I'm not saying you're wrong, but your examples are wrong.

    --
    Anons need not reply. Questions end with a question mark.
  4. That's how these things always go by Sycraft-fu · · Score: 4, Insightful

    Whenever there's a "language popularity" thing online they always do their research by looking at what people are doing online. Either what they are talking about, what they are sharing, etc. Somehow none of them ever consider how horribly skewed this is.

    The simplest counterexample to something like this is embedded software. It is unarguable that there's a lot of development of that going on. Everything today gets controlled with a micro-controller or small CPU. Actual custom designed ASICs/circuits are reserved for only a few applications, most things get a more general purpose device and do it in code. Your car, your cable modem, your microwave, your TV, etc all of them run code.

    Well guess what? That embedded code isn't done in Javascript or Ruby or any of these other trendy languages. Often as not it is done in C/C++ (and sometimes partially or all assembly). It just isn't the sort of things that gets posted about online. First the code is almost always proprietary, so the project itself isn't going to get posted as it is property of the company that paid to have it written and second it is professionals working in teams doing it, not people who are getting started out or playing around. They are likely to get help internally, not talk about it on the Internet.

    So if you want to look at Github to see what is popular on Github, that's cool, but when people try to generalize that to development overall, it is false. To get a feeling for what is really popular in software development you'd have to poll programmers working at a variety of big companies since that's where a lot of the code is being generated.

  5. Popular?? by maroberts · · Score: 2, Insightful

    I do JavaScript development. That does not necessarily mean I like JavaScript

    --

    Donte Alistair Anderson Roberts - hi son!
    Karma: Chameleon

  6. Re:I thought it was Rust. by DrXym · · Score: 3, Insightful

    Exactly. Java, C++ and C are not going to go anywhere for a long time. Even if Rust is better for a whole raft of systems programming tasks it's not like anyone is going to go out and rewrite code that already works. More likely usage for Rust will grow with IoT since code needs to be performant, reliable and secure and C / C++ really aren't suitable for that task.

  7. Python by fluffernutter · · Score: 5, Insightful

    I just want to say. Good for Python. I know a lot of people hate it but once you get past the static indents there is a lot to like about the language.

    --
    Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.