Lab Coding Guidelines
This is a summary of the 2018-10-10 lab meeting where we discussed coding practices. The full notes are available online.
Desired Qualities:
- completeness
- code for all the figures and analyses
- external dependencies documented
- readable
- uses good standards for code style
- comments help guide navigation to different parts
- (re)usable
- description of how to run everything, few changes needed to run it all
- examples for functions
- functions written to be flexible (e.g. less dependence on “magic numbers” and hard-coded parameter values)
Practices:
- linter (for style)
- tests (to check functions, could also provide simple examples)
- pair programming checks for readability
- documentation
- refactoring core code into reusable packages
- containers
Action Items:
- training (and organizing it)
- toolchain (linter, tests, development tools)
- workflow and organization
- regular practices