Counting Stars on GitHub
adereth.github.io
adereth.github.io
On the other hand, I feel it sort of pushes me in the wrong direction. Stars aren't a good indicator of use, or even importance. For instance, cleaver is not technically challenging, yet it shares the same number of stars as numpy [1].
So, not sure how I feel about them - not sure what they measure.
I don't know when numpy switched over to github, but their website still uses SF to distribute the official binaries. On the other hand, many projects initially started as github repos and naturally draw people that way. As an example, consider d3, where the main page rests on d3js.org but most of the links point to the github project wiki.
[0]: https://sourcegraph.com/github.com/jdan/cleaver [1]: https://sourcegraph.com/github.com/numpy/numpy
disclaimer: I am one of the creators of Sourcegraph and would love to hear what you think about it!
Here's my site for anyone curious: http://hubreports.yougeezer.co.uk
"Looking at the top repo for each language also exposes a weakness in the methodology: GitHub’s language identification isn’t perfect and there are number of polyglot projects. The top Java repo is Storm, which uses enough Clojure (20.1% by GitHub’s measure) to make this identification questionable when you take into account Clojure’s conciseness over Java’s."
Looking at Bootstrap, the classification doesn't seem to be strictly based on percentage:
- CSS 59.8% - JavaScript 39.7% - Python 0.5%
...but GitHub Search says JavaScript. I do see that if I do a search query with a language filter, I get different results.
I did pick an older version as they don't always run the latest release. Handy as you can filter out items flagged as "markup". Plus, have to watch out for languages like Mirah that are oddly indexed (same repo count as Ruby).
The problem with 'language popularity' is that we looking probably 90% at web-projects being based on Github, so within those projects, CSS and Javascript are pretty much a given, as they are the default client side-libraries. You can't build a website without CSS and rarely do without Javascript (on the front end).
For example: I have a number of small Go projects that are incorrectly categorized as CSS or Javascript. One such example is a project explicitly designed to be a Go webserver that you can just "go get" (or git clone) and run immediately, with no extra setup, sort of like Twitter Bootstrap, but for the backend: https://github.com/ChimeraCoder/go-server-bootstrap
Because it self-hosts the Bootstrap files, and because the lines of Go code required are relatively small, less than 5% of this project is detected as being written in Go, even though I didn't write a single line of Javascript or CSS myself for the entire project.
(Yes, I know I could pull in the Bootstrap, etc. from a CDN, but this is just to illustrate the limitations of an automatic language detection model that the developer has zero control over).
Perhaps it has something to do with (at least in part) Prolog and Perl sharing the same extensions?
some ref: https://github.com/search?l=R&q=rebol | https://github.com/search?l=R&q=rebol&type=Code
Pull requests welcome :)
Looking at vendor.yml, I'm actually not sure why this is happening. The repository I linked to above only has two files that end in .js: bootstrap.js and bootstrap.min.js[0], and only one that ends in .css (bootstrap.css). Unless I'm misreading the regex in vendor.yml, it seems like they should be excluded[1] but they aren't, and this isn't the only project of mine for which this is happening.
I'm fairly certain it's picking up those files and not miscategorizing the Go files for some reason, because when I delete those files and instead serve the CSS/Javascript from a public cache, it categorizes the repository correctly, as is the case with this project (based off of go-server-bootstrap): https://github.com/ChimeraCoder/pluto
[0] https://github.com/ChimeraCoder/go-server-bootstrap/tree/mas...
[1]https://github.com/github/linguist/blob/master/lib/linguist/...
(^|/)jquery([^.]*)(\.min)?\.js$
while the Bootstrap regex in question is (^|/)bootstrap([^.]*)(\.min)\.(js|css)$
with the ".min" not optional. (Looks like this was the intent [1]).The 68.9%/26.5% percentages match the 130k/50k ratio of bootstrap.css to bootstrap.js, so it looks like only bootstrap.min.js is being excluded?
[1] https://github.com/github/linguist/commit/d5002ef06a9f346391...
EDIT: I just realized that the entire song can be about switching to open source development on github.
A young, but not that bold, startup founder is losing sleep, dreaming about the things that they can be. He doesnt think the world is sold, he's just doing what they're told by VCs. All his risky career decisions make him feel alive. And sure enough like many other startups his hits the deadpool. Take that money watch it burn, sink in the river, the lessons are learned. So he moves to release the tech as open source software and starts counting the stars on github instead of dollars...
LOL
When I say that the even pure star count has a lot of interesting things in it...I mean even in the simplest sense. I know or have used all of those repos with the exception of jQuery-File-Upload and adobe/brackets, but I can be a real dilettante. But in the top 100, there's plenty that I've never heard of. Even within plain Ruby-land, I'm always running into gems that have been around for a few years or are highly starred (Spring and Middleman among them, in the last couple of weeks).
What I'd like to see is even further categorization of the gems...something similar to the Ruby Toolbox (https://www.ruby-toolbox.com/categories/Active_Record_DB_Ada...)...where you can find repos based on use-case, not just language. I do like Toolbox's emphasis on release dates and latest updates, as well as pure total download numbers. I've found that number of contributors, rate of pull requests/issues dealt with, and rate of recent updates, is as useful a metric as star count.