Programming Practices

Version Tracking

We use git.

You will use git.

You will have your own (or equivalent, like gitlab) account.

Your projects will each have their own repository on


I use a combination of R, python, Snakemake, awk, and bash. I lean heavily on R to produce visualizations and interactive documents/sites and Snakemake to reproducibly process data in projects.

Projects you do with me will likely have to be written in some combination of the above languages, so they can be supported after you leave (or you’ll have to talk me into learning language X).


Everything you do is to be written in code. The expectation is you can run (ideally one) script/Snakemake file and reproduce virtually all of the downstream analyses from the raw data.


comments powered by Disqus