And Now There Are Three
A new book has just been published that covers much of the same material as Software Carpentry, and a great deal more: Paarsch and Golyaev’s A Gentle Introduction to Effective Computing in Quantitative Research: What Every Research Assistant Should Know. It covers almost everything I would want to see in a one-semester course for new research students: the Unix shell, data organization, the basics of Python, data analysis, “geek stuff” (including hardware and algorithm analysis), numerical analysis, some worked examples, Python extensions, and preparing manuscripts with LaTeX.
By trying to cover so much, this book necessarily spreads itself thin: I don’t think anyone who isn’t already familiar with Make or Git would be able to use them after these brief introductions. That said, this book deserves a place alongside Haddock and Dunn’s Practical Computing for Biologists and Scopatz and Huff’s Effective Computation in Physics, and I think anyone contemplating a graduate-level computing course would do well to explore it.