Hacker News new | past | comments | ask | show | jobs | submit login
RedMonk Programming Language Rankings: January 2017 (redmonk.com)
62 points by deepanchor on March 21, 2017 | hide | past | favorite | 33 comments

The data looks reliable. Especially that it mostly overlap with other similar stats like this one:

# Language | Popularity | Avg. Salary global


1. Javascript | 30.13% | $60,186

2. Java | 27.5% | $61,741

3. Python | 15.58% | $66,353

4. C# | 12.8% | $66,470

5. SQL | 10.97% | $54,139

6. C++ | 9.95% | $69,092

7. Php | 8.74% | $53,420

8. Node.js | 8.45% | $64,818

9. C | 6.28% | $67,720

10.Ruby | 5.08% | $68,478

More stats and details https://jobsquery.it/stats/language/group

Why is node.js in a separate category of its own? It's not a language, it's a framework written in Javascript. If anything, shouldn't it have its number added to the Javascript category?

Any reason to scrap the thin layer of JavaScript from other languages and plop the big lump of it right on the top? It's not like Node.js captured more than 2% of market.

Key things I noticed:

Rust jumped from #47 to #26

Swift jumped from #24 to #16

There is word 'embiggen' before that I knew only 'enlarge'.

"A noble spirit embiggens the smallest man." (Springfield town motto)

What is wrong with embiggen? It's a perfectly cromulent word.

Is there any interest in Swift outside of the Apple ecosystem? I've been slowly adding to my iOS/Swift Topics on Github: https://github.com/melling/ios_topics/blob/master/README.org

Recently, I've been tossing around the idea of creating a cross-platform repo. There seems to be some nascent interest:



The speculation on /r/Rust is that since they now base popularity on pull requests, the fact that these languages are developed on Github is a significant boost to their numbers. Both of the projects have 100+ PRs open most of the time.

Interesting that Emacs Lisp is way below the line and VimL is way, way, way below the line.

Is it really that people don't have questions, or maybe they have better forums for accessing help -- from emacs.stackexchange.com to emacsWiki to IRC.

Not sure if its a sign of a highly usable language, great community outside stackoverflow or frustration with lack of response from stackoverflow.

Because people use those languages for configuration, and Github is hugely popular for storing dotfiles. Configs are forked, tweaked, and reuploaded a lot more than "actual" programs, because popular starter packs and so on get huge followings, and there is a much smaller barrier to getting started playing around with them. Meanwhile, they're not really that complex, and most have other sources of question resolution (inbuilt docs, online communities often inside GH issues), so not much need to go to S/O.

I want to agree, but look where shell and perl are.

What insight do people derive from these rankings?

What can such a "language ranking" be used for?

Why is XML listed as a programming language?

People: What to study, what to choose for personal projects, what to put on your resume.

Companies: What languages to standardize on

I would be wary of basing those choices on these data. If I just learned about the concept of programming languages for the first time, I might refer to this for a vague understanding of which languages are popular--I might not opt to learn Coq over JavaScript, but it's not obvious from these data that picking JavaScript will be of greater benefit to my career, interests, or organization than Scala. This seems like one metric to consider, and not even a very good one. In particular, popularity on StackOverflow should probably count against a language, but these rankings consider it a virtue.

SO popularity is neither clearly positive, neither clearly negative.

Why not positive: because if there are lots of questions about something, it must be very hard, with lots of gotchas, unclear points.

Why not negative: because if there are lots of questions about something, it must be very popular, so many newcomers have their trivial questions, which do not necessarily indicate problems about the language.

Right, the SO value is approximately the product of popularity and difficulty; the GH value is approximately popularity, so if you difficulty is approximately SO/GH.

If this would be true, then "XML" and ASP would be the hardest languages. Also this would suggest that TeX for example is simpler to use than Python or Ruby.

I do not think this stands.

Hence, "approximation". In particular, XML isn't a programming language, so questions about it are more likely to pertain to writing parsers and the like. TeX users may well have other sources for answering their questions. The approximation is very rough, but there is clearly a signal in the noise.

If having a github repo factors into your hiring choices, then you're more likely to find compatible hires if you use one or more of the languages in the top-most, right-most blob, and still pretty good if you use a language from the less tight blob below that. Although, of course, you should use the language that is most right for your tasks, and most approved by your developers.

Similar statement for "what if I want lots of SO help for my language."

Similar statement for "what if I want lots of potential contributors to my GH project."

And, for any language that you use, regardless of where it falls on the graph, you get to say "Huh."

And you get to discover new languages you've never heard of.

I think the github repos are not relevant in hiring for most applicants, usually are good only as an info to have a card to start a conversation about some topic the applicant is expected to be somewhat proficient.

Why would I want SO help for a language? Why is SO help needed for a language? Maybe it is just me, but I find SO largely overrated. Does it sound like a good business decision when starting a project: Let's use JavaScript, as there is a lot of StackOverflow help(?) about that language! I want to solve problems with a project, and for this the language is mostly irrelevant, and the help about the language is even more irrelevant. I won't have solutions for my problem, modeling it, solving it. The ecosystem is more relevant, but on SO the ecosystem related questions are usually killed off by the mods, as not being proper questions, so usually blogs with benchmarks or opinion pieces are more useful, yet those are not factored into this measurement.

When starting a project do I want to make a project to have many contributors? Personally I start projects to solve problems, not to attract people, though I work in the software industry, not in entertainment. Sarcasm apart: If the project solves a problem for lots of people, it will surely attract contributors, even if it is done in a mildly popular, but not esoteric language. If I'd find a project in perl which is useful for me, and would need to hack some on it, I might even pick up some Perl to do it, and contribute it back. If a project is not useful, it can be written in however popular language, nobody will use it.

The next point is valid, I said huh, when I saw that C is still kicking.

Discover new languages? If I have never heard of them, that is probably for a reason. There are way more than being useful. Knowing a few (practically one from every paradigm, and some popular ones) on a basic level, and 1-2 at a good, one at advanced level is enough. Missing a few esoteric languages will likely not have an impact on my career.

One would be what are the language to look out and learn because they are getting popular in market.

It doesn't really matter. After knowing a few, you pick one up in a few months, and the rest will come with use. Looking out for trends won't help, as you can get only limited experience without using a language for solving real problems.

Solving Project Euler or HackerRank in a different language is fun, but does not really teach you a language. Languages are more than languages, they have ecosystems and conventions around them, and many of those come up only when doing larger scale problems to solve real problems. Few people do it for themselves as a hobby, most do fun stull as hobby, and do these as work.

Thank you. This is going to help settle a debate here in the office about whether to standardize on Ruby or Python. (The correct answer being Python, of course.) /s

Comforting to see Scala up in there. Makes me feel better about the time I've been pouring in.

Scala jumped a couple of spots from last ranking. Before that it was behind Shell, R, Perl and now ahead of them.

no idea why you are being downvoted for expressing a valid opinion

Probably downvoted by someone who has to use sbt daily?

I see the same for my comment which was non-controversial observation.

Interesting how 'Arduino' and 'Bitbake' are considered programming languages in this list.

How in the world is "—me Maker Language" in the top 30 by SO rank? I assume Game Maker Language? But http://stackoverflow.com/tags/gml/info only has 190 tags...

Its a well known fact that languages are not detected correctly on GitHub (linguist). One example is Perl.

So I would say this data is not 100% reliable, perhaps even very unreliable for some languages.

Has anybody managed to customize powershell for interactive usability?

I'd love to switch from zsh to posh.

What do you mean with interactive usability exactly? I use PS daily and though I'm still learning I haven't got mcuh complaints so far, on the contrary, object pipeline vs text pipeline is a win imo for what I use it for. Depending on what version you use, make sure you run it in ConEmu (better terminal), have PSReadLine (readline, visual tab completion, ...) and Jump-Location (like z). VSCode integration is good (debugging etc just works), Visual Studio integration as well probably but haven't tried that, yet.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact