2016 JavaScript Rising Stars
Since they didn't publish their data source, let me add a useful note: How to count the number of stars using GitHub Archive and BigQuery.<p>Naive query:<p><pre><code>  #standardSQL
  SELECT repo.id, ANY_VALUE(repo.name) name, COUNT(*) as num_stars
  FROM `githubarchive.month.2016*`
  WHERE type = "WatchEvent"
  GROUP BY repo.id
  ORDER BY num_stars DESC
  LIMIT 1000
</code></pre>
But let's fight "star fraud". There is an easy way to register "fake" stars - if you star and unstar a project repeatedly, each time this will register as a WatchEvent on the GitHub Archive log.<p>Better query, removes duplicates:<p><pre><code>  #standardSQL
  SELECT repo_id, ANY_VALUE(name) name, COUNT(*) as num_stars
  FROM (
    SELECT repo.id repo_id, ANY_VALUE(repo.name) name, actor.id
    FROM `githubarchive.month.2016*`
    WHERE type = "WatchEvent"
    GROUP BY repo.id, actor.id
  ) 
  GROUP BY repo_id
  ORDER BY num_stars DESC
  LIMIT 1000
</code></pre>
If we put all together, these are the real results:<p>* <a href="https://docs.google.com/spreadsheets/d/1aDlXrk3U1z5s0-1Is8KHOowJ_oSw79mzwAOPmK5LmeI/edit" rel="nofollow">https://docs.google.com/spreadsheets/d/1aDlXrk3U1z5s0-1Is8KH...</a><p>Projects like 'fivethirtyeight/data' lose -864 stars (23%), going down 230 places in the ranking, while projects like 'FormidableLabs/nodejs-dashboard' lose less than 1% of their stars, going up 49 places.<p>When I said 'stars fraud' I'm not presuming malice, but with these star rankings we do create an incentive :).<p>Disclaimer: I'm Felipe Hoffa, and I work for Google Cloud <a href="http://twitter.com/felipehoffa" rel="nofollow">http://twitter.com/felipehoffa</a>