Compare programming language health over time

LanguageHealth is an easy way to compare programming languages based on how healthy they are over time. There are many tools out there for charting programming language popularity, but they tend to use metrics that I don't find very useful. LanguageHealth looks at the fraction of open-source commits to projects in a language.

Would you recommend this product?
No reviews yet
Hey Product Hunters! Like you, I spend a lot of time analyzing the programming language ecosystem. I created LanguageHealth to help me figure out which languages are growing or dying.
@mitch_crowe This is so cool! Really surprised by the increasing gap as Java rises and Ruby falls. Was there anything you saw in the data that surprised you?
@abadesi Thanks! I’m glad you found it useful. I was surprised by how much Ruby is falling too. I was also surprised by the fall of Clojure and strength of Go in contrast . I’m particularly interested in front-end languages, and TypeScripts strength and Elms sturdy rise were really great to see.
Could you please elaborate on how you define health? I'm a UX designer with some basic knowledge of HTML/CSS/JS, so my question might be very rudimentary. But if I, for instance, compare JavaScript with CSS and HTML, CSS by far exceeds the other. What does this mean? From a UI standpoint, I really like the execution. I guess that's why I also want to understand the content :)
@salmiak I'm interested too on how you create this metrics. Some languages are more verbose than other, resulting in a big variation in commit numbers: is that managed on LanguageHealth? Nice UI btw 👍
@salmiak For sure! Currently, the number you see there is calculated in the following way: 1) Compute `N(m, x)`, the total number of commits to public projects on GitHub in month `m`, where GitHub determines the *primary language* to be `x`. 2) Compute `T(m)`, the total number of commits to all public projects on GitHub in month `m`. 3) The number shown is `N(m, x)/T(m)` for each month. So, in short, it is the fraction of commits to a given language, which roughly maps to the amount of open-source work being done. CSS and HTML are a bit anomalous as languages. They don't really compete against other languages for mindshare in the same way as, for example, Ruby and Python do. They are also frequently secondary languages in repositories alongside other languages. I suspect that both of them are actually *more* important than these graphs show. In the case of CSS, I think it is dominating the other two because there is a huge number of CSS frameworks out there.
@cnivolle Thanks! You're absolutely right. Each language encourages different programmer behaviour and that affects the data. Looking at the number of *commits*, rather than things like lines of code, is intended to help mitigate this, but there's not doubt that's not perfect. I'm not doing anything else to account for this. I'm not really sure what you *could* do, but I'd be really happy to hear ideas ;-).
C# fanboy checking in. Growth against Java!
@lwansbrough True! C# seems to be getting pretty steady growth.