Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Formalise method to distribute Code Review Asignees. #31

Merged
merged 13 commits into from
May 2, 2024
Merged

Formalise method to distribute Code Review Asignees. #31

merged 13 commits into from
May 2, 2024

Conversation

afermg
Copy link
Collaborator

@afermg afermg commented May 1, 2024

This is not an urgent PR. Based on a chat with @shntnu, we are coming up with a way to distribute code reviews in a way that is fair to everyone. To do so, we first ought to know who is reviewing and has reviewed other PRs before. This is not directly accessible through GitHub so I use one of dogsheep's tools to fetch it. Then I use datasette to visualise it on the browser, which makes it universally accessible.

The current way to do this requires the installation of two packages (github-to-sqlite and datasette). I added pyproject.toml and poetry.lock files to make this reproducible. Producing the data requires one command and opening in a browser another, making it pretty accessible. Adding the toml and lock files may be an overkill, but it ensures reproducibility.

The alternative is to use Github Actions to automate this and put the .db somewhere accessible, then access it with datasette-lite. The downside is that managing credentials and auth to upload the updated database somewhere will add overhead. I'd like to get opinions from @leoank on this matter, even if I'm not suggesting him as a reviewer.

Other opinions on how to distribute code-reviews in an unbiased manner are welcome.

Let me know if anything else needs to be done to merge this. I didn't put it in ./libs as it is more of a management module, so I created the ./management/ folder for these things.

See example of asignee's visualisation. Here the number on the right of the usernames is the number of pull-requests in which they are involved:
image

Instructions on how to reproduce this can be found here.

@afermg afermg changed the title Formalise method to distribute asignment. Formalise method to distribute Code Review Asignees. May 1, 2024
@afermg afermg merged commit b21082f into main May 2, 2024
@shntnu
Copy link
Contributor

shntnu commented May 4, 2024

Thanks for trying this out! This is an experiment, so it's worth keeping the pros and cons in mind as we try it out.

Potential benefits: increased fairness, transparency, objectivity, reproducibility, encourages participation.

Potential downsides: added complexity, the risk of discouraging organic collaboration, and the possibility of gaming the system or overemphasizing quantity over quality.

@shntnu shntnu deleted the gh2sql branch May 4, 2024 00:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants