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 from adding a simple
Makefile to your project root.
When done right, scripting the tedious parts of your job can save you time in the long run2. But the time savings aren’t the only reason to do it. For me, a bigger …