Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: GitHub trending alternative that ranks repos by contribution rate (krihelinator.xyz)
142 points by nagasaki45 on Jan 21, 2017 | hide | past | favorite | 35 comments

I tried to do the opposite once: to rank GitHub repos by effectiveness of contributions, where effectiveness is measured as stars divided by the number of contributions. Sort of, best things done quickly. With all cons and pros of this metric, I've got these projects in top 5:

1. ievms: Automated installation of the Microsoft IE App Compat virtual machines, https://github.com/xdissent/ievms

2. resume: Resumes generated using the GitHub informations, https://github.com/resume/resume.github.com

3. impress.js: It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers, https://github.com/impress/impress.js

4. deepdream: Neural Network art, https://github.com/google/deepdream

5. favicon-cheat-sheet: cheat sheet to favicon sizes/types, https://github.com/audreyr/favicon-cheat-sheet

Resume gives me a weird feeling because of their "star to use" system. On one hand it prevents abuse, which is fair. On the other it makes you star the project just to try it out, broadcasting to my followers that I used the system, creating an undeserved network effect.

yeah. really sad to see that type of- can i call it dark pattern?- on GitHub. obviously not an apples to apples comparison- but markdown-resume is where it's at anyway.


Fantastic that #2's description is:

> scheib's chromium.org fork for personal use, updated when useful to me.

-- EDIT:

Oh, but of course, it's just because he pulled thousands of commits from upstream...

Yeah, I don't think "contribution rate" is a great idea, at least not as implemented.

I think stars are a better measure, because ranking by contribution rate is just selecting for big projects. It also purposely omits one author projects.

Agreed, quality over quantity. Plus there are plenty of excellent tools that aren't being actively developed but are still very popular.

Why not both, allowing different settings/selections?

Stars can also be gamed. As Zalatax mentioned in this thread, Resume requires you to star it before use.

I would love more discoverability for Github - but can't help but think this doesn't reflect what is "trending". Github does, fairly accurate, show what's trending - I think it's just that trends in software development can fatigue and annoy a lot of developers.

From what I understand, creating an algorithm to reflect what is active/popular/well-supported and well-contributed, without creating the over-saturation/bubbling/reddit-like effect is hard to do, and doesn't necessarily get easier with a large data set.

I hope someone more clever than myself can come up with something, though!

This site has a list of repos with fast growth in their number of stars: http://gittrends.io/#/explore?page=1&language=All&domain=All.... The list seems to be based on the shape of the curve of stars growth.

One of the problems I see with stars on github is the extreme hype around new JS frameworks, which is especially noticable in GitTrends. These projects are indeed trendy, but when you try to choose a tool / technology stars become problematic. I'm not saying that the metric I propose is more "objective" in any sense, but in my subjective opinion it promotes better values for open source projects.

Moreover, please don't think that I only count commits and see the about page (http://www.krihelinator.xyz/about) for more details about the metric.

Yes, I agree, but I also think the most interesting comparisons are intra-ecosystem. It does not make sense to use stars to compare a JS framework with a Clojure one, for example

Maybe an algorithm that ranks based on number of unique contributors in the past month or so?

I agree, that's why the number of contributors in the last week have the most weight in the metric. See the about page (http://krihelinator.xyz/about) for more details.

Yeah but Free Code Camp can't honestly be 'trending' for two years straight.

It does because one of the getting started tutorials features a GIF that suggests newcomers star their repository.

I did that for languages with pull request as metric https://madnight.github.io/githut

Wow! this is realy nice. The languages list looks quite similar to the one on the Krihelinator (http://www.krihelinator.xyz/languages), which is encouraging for both projects, I believe :-)

Source is written in Elixir: https://github.com/nagasaki45/krihelinator

Most languages's contribution rate drops around Christmas time , except Haskell http://www.krihelinator.xyz/languages/history?languages=[%22...

Truly a hobby language that programmers dream of using and only get to program in it for two weeks in a year.

Even though this metric favours commercially-funded development, I found it interesting to look through the list, thanks to the author for putting this site together.

I also discovered an promising project I wasn't aware of, which was wp-calypso:


It's still too early to say for sure, but it looks like we may be seeing the start of WordPress migrating away from PHP.

Thank you back for the positive feedback!

Someone already reported that commercially-funded projects get high in the list (https://github.com/Nagasaki45/krihelinator/issues/100). I'll need to think what to do about it...

I find this idea good, github stars and number of forks is usually not a great metric to measure the quality of a project.

(Tho contribution rate is probably not perfect either but atleast we know the project is active)

Do you normalize the contribution rate by the number of contributors?

More contributors is a sign of a good project though; it shouldn't be penalized for that and, if anything, the spread over contributors should reward a project as being better (often a sign of more different people using it, improved bus factor, distributed ownership/governance/approval, etc etc)

The way contribution rate is calculated is documented in the about page (http://www.krihelinator.xyz/about). I hope that it answers your question.

In general, it seems that just from reading the term "contribution rate" several people predict that it only count commits. Commits have the least weight in the calculation. The number of contributors are much more important as well as number of issues and pull requests.

Package manager repos like Cocoapods and Gentoo's ebuilds are going to have a high contribution rate because they are updated every time any single one of their packages is updated.

Wasn't krihelinator the same guy who was doing revision history on his repositories and making himself the only contributor? (someone please correct me if I'm wrong)

That sounds horrible! It's definitely not me

Why is vscode showing up twice? Once under "Microsoft" and then under "microsoft". The numbers to the right are different too.

It's a bug :-)

Already reported (https://github.com/Nagasaki45/krihelinator/issues/99) and will be handled soon.

It would be nice to show repos from different date using a history plot

Why was this flagged?

I'm not the flagger, but my first assumption is that it was an accident. I've accidentally fat-fingered the flag button numerous times when browsing HN on my phone, and I haven't always (immediately) realized it.

New project never go to trending, lol

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