sagesharp / foss-heartbeat

(Unmaintained) FOSS Heartbeat analyses the health of a community of contributors. :heartbeat:
https://sarahsharp.github.io/foss-heartbeat/
Other
315 stars 38 forks source link

Track connectors #10

Open sagesharp opened 8 years ago

sagesharp commented 8 years ago

Who is a connector?

Often times, newcomers don't know who to add as a reviewer, and their pull requests languish. One type of contributor is the "connector", someone who tags the right person to look at the issue or pull request. An example of this is @rust-highfive, a bot that suggests reviewers for pull requests. Non-bot contributors do this by knowing the skill set of the community and tagging the right person.

How to tell if someone is a connector?

  1. They are the first person to tag another person who hasn't previously commented on the issue or pull request (and isn't the person who opened the issue or pull request).
  2. That person comments on the issue or pull request.

What can we do with the data?

Since it takes non-bots a while to learn which people in the community have domain-specific knowledge, it would be interesting to look at ramp-up time. It would be good to acknowledge the connectors on the active contributors list. Further, we can use the data to do hypothesis testing. E.g. we've identified @rust-highfive as a connector; do pull requests they comment on get closed faster than pull requests they didn't comment on?

How do we get the data from github?

We should currently have all the data we need, since we have issue and pull request comment text. Look for any tags, extract the username from the tag, and look to see if they commented after they were tagged. Discard if they commented before they were tagged. Create a new contribution type and record those contributions in connectors.txt.