Live data from Hacker News

Programming-language popularity by GitHub pull requests

lemire.me

31–40 of 73 posts

Re: Programming-language popularity by GitHub pull requests

#31
post #8

Lovely last sentence: believing c# being an underrated language. Very true, also public pull request are not friendly to dark matter enterprise software :)

Yeah. The runtime has a few warts, but the language is pretty solid. I've come to appreciate it a smidge more than Java. I think it falls in the "underrated" category as it "feels" a lot like Java and many people consider it just MSFT's attempt to avoid tying their technical future to a property "owned" by a competitor instead of a decent language in it's own right. Truth is, it's probably both.

Re: Programming-language popularity by GitHub pull requests

#33

> Go is holding at nearly 10%: it underwent a fast rise but seems to have plateaued starting in 2018. I imagine that the imminent release of Go 2.0 could help. Is Go 2.0 imminent? Any sources and details of this?

No: definitely not imminent, and probably never. Originally "Go 2" was the name for a real version 2.0 where the Go team would make breaking changes and fix any warts. However, over time they decided a big breaking release wouldn't be necessary (or a good idea), and decided just to keep iterating on 1.x in a backwards-compatible way, even for large features like the addition of generics in 1.18. At this point "Go 2" is a "useful moniker" for an abstract future version of Go with additional features. See https://go.dev/blog/go2-here-we-come

I think this is great for stability, and as a result Go looks to be avoiding the Python 2 to 3 ten-year-migration.

Re: Programming-language popularity by GitHub pull requests

#34
post #3

Clicking through to the underlying data, it seems that 2% of all code is written in Nix. I doubt that is the current state of the industry. For example, I doubt that 2% of programming jobs are for Nix codebases. For that reason, I am consuming a very large salt crystal alongside this information.

Agreed, but I’m looking for what’s next, not the current state of the industry or jobs. I’m riding the JS/TS wave for a while but I can already imagine improvements. If a language is rising, I’ll check it for those needs. Nix has been getting attention among my friends. I’m still in “wait and see”. The next big thing after TS won’t be an incremental improvement. It will solve big problems like: - Too many ways to do…

Scala is at 1.7% in the actual data, and it’s generally appropriate for a niche language like this (although Rust is below it, even though the HN bubble might make you think otherwise).

Re: Programming-language popularity by GitHub pull requests

#35

Great project, nice to see a more detailed view :) See also: https://octoverse.github.com/2022/top-programming-languages (which we publish annually and has a few related stats)

Those numbers seem more believable and probably better sourced than those in the post.

Re: Programming-language popularity by GitHub pull requests

#36

I ... don't think this is a good metric for 'popularity' but rather a good metric for stability/volatility. I would say that from working on a JS project, it's volatile af. You can use a package that will be abandoned tomorrow and you have no idea. Meanwhile, the languages near the "bottom" are quite stable languages to work in (as well as a pleasure). They even /almost/ noticed it themselves when mentioning golang 2…

It's a good proxy for both. Both popularity and volatility have misleading statistical failure modes if measured purely by pull requests. The author did narrow it down into what it mostly accurate represents though: > Nevertheless, in my view, the number of pull requests is an important indicator of how much people are willing and capable of contributing to your software in the open source domain.

There has to be something to contribute to first -- i.e., new features or bug fixes. Once software reaches a level of stability, there aren't new features to be built, or bugs to be fixed. That doesn't mean there aren't contributors out there, willing to contribute to something new.

Re: Programming-language popularity by GitHub pull requests

#38
You're all wrong. FORTH is the best language ever. You kids get off my lawn!

(just kidding)

JavaScript has warts, but if you drink enough, you can pretend it's Scheme. Python isn't a language but a family of languages. Guido thought it was a good idea to change the semantics AND syntax between minor revs, so... no... having to re-code my apps every two years is a deal-killer for me. Sadly, the same applies to rust. I'm not the biggest fan of C++, but a friend pointed out some of the more recent language additions make it a much better language. And they added them without removing reverse compatibility. Or at least to a greater degree than python and rust.

Also, if you're picking a language to use based mostly on a popularity contest, you get what you deserve. Start with understanding what your needs are, then pick a language that allows you to model your computational requirements in a way that meets those needs. Maybe after that look at associated tools and libraries (I'm mostly concerned with debuggers since I usually debug things with a debugger rather than print statements). Then maybe think about popularity, you probably do want to be able to hire people, but it always seemed to me to be a premature optimization to say "oh. Java is real popular, so we're going to use Java 'cause we can hire people who claim to know it."

But there are some niche financial engineering teams I know who are very happy with using niche OCaml derivatives. They're completely okay with hiring people with Lisp or Scheme or "popular" ML derivative experience and then giving them a couple months to learn what's going on locally.

And heck, I've been on projects where we used COBOL and it was exactly the right language for that job. Was thinking about this the other day... I sort of miss Pascal and Delphi. meh. Life moves on.

Re: Programming-language popularity by GitHub pull requests

#39
> I find that building and publishing Java artefacts is unnecessarily challenging, compared to JavaScript and Python.

I'm not a big fan of Python's jumble of competing build tools but personally, I stick to venv + pip and it generally works out. However, having dealt with both maven and npm, the headaches with npm's build process are so annoying, its not even funny. Comparatively maven is rock-solid even if you may not like its xml-based configuration.

Re: Programming-language popularity by GitHub pull requests

#40

What language do you recommend purely for getting a job, GO or Java? I have few years of experience with JavaScript.

Purely for getting a job and not FAANG or a startup?

Java is everywhere in any enterprise that does internal software development. The quality of that code is another discussion. You will also be likely working on very legacy code bases that are in the process of finally moving from Java 8 to Java 11.

Post reply on HN