How do you review code that accompanies a research project or paper? Help rOpenSci plan a Community Call

What is the culture of the lab / group around feedback and code collaboration?

  • Different standards will apply if code review is a regular routine vs. multiple folks working together on a coding project vs. PI or other mentor being asked to review code written solely by one person prior to submission.

What are the use cases?

  • Is the code being used for one-off purposes, or will it be re-used?
  • Who is going to maintain it?
  • Is it being included with a paper or developed as software for the community?
  • This matters in terms of training and time as well as what coding standards are expected by the community.

What are some practices that PIs can implement / adopt?

  • training and clear expectations for lab members
  • guidelines for code to be modular and testable
  • guidelines for code reviews and collaborative work (which GitHub workflow are you going to use?)
  • continuous integration and linting to automate tests (and also allow self-code-review and quick feedback)
  • handling author/code contributions and whether to use public/private repos
3 Likes