timcdlucas/unit_test_for_infectious_disease

Good software practices

Closed this issue · 1 comments

Not sure if an issue is the best place for this. But that's where it's going for now!

Good code practices:
Version control
Unit tests
Continuous integration
Defensive programming
Don't Repeat Yourself
No hardcoded parameters
Code comments
Function documentation
Examples/vignettes
Quick start/installation guide

I'm taking a lot of these from these papers

https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1006561
https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1002802
https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.1001745

Also I'm not quite sure of the scope. There's stuff about reproducible research which is related but maybe out of scope.
https://www.researchgate.net/publication/258350100_Ten_Simple_Rules_for_Reproducible_Computational_Research

I think this is what I said I'd do. https://github.com/timcdlucas/unit_test_for_infectious_disease/blob/master/task_list.md

But maybe I said I'd go into more detail or look at how you would quantify these things? Let me know.

@t-pollington I started a wiki.
https://github.com/timcdlucas/unit_test_for_infectious_disease/wiki

Just adding relevant lit as I find it for now.