35 comments

[ 3.0 ms ] story [ 84.4 ms ] thread
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)

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.
Why not both, allowing different settings/selections?
Agreed, quality over quantity. Plus there are plenty of excellent tools that aren't being actively developed but are still very popular.
Stars can also be gamed. As Zalatax mentioned in this thread, Resume requires you to star it before use.
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.

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 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.
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!

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.
Maybe an algorithm that ranks based on number of unique contributors in the past month or so?
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
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 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.
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:

https://github.com/Automattic/wp-calypso/blob/master/README....

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.

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.
It would be nice to show repos from different date using a history plot
New project never go to trending, lol