Take five minutes to simplify your life with Make
WARNING: Because of the Markdown rendering of this blog, tab characters have been replaced with 4 spaces in code blocks. For this reason, the makefile code will not work when copied directly from the post. Instead, you must first replace all 4-space indents with a tab character.
I use GNU Make to automate my data processing pipelines. I've written a tutorial 1 for novices on the basics of using Make for reproducible analysis and I think that everyone who writes more than one script, or runs more than one shell command to process their data can benefit from automating that process. I'm not alone.
However, the investment required to learn Make and to convert an
entire project can seem daunting to many time-strapped researchers.
Even if you aren't
living the dream—rebuilding
a paper from raw data with a single invocation of
make paper
—I still
think you can benefit …