Where is the Puck Going to Be?
Looking at the schedule for Science Online London 2011 makes me feel that Software Carpentry is showing people how to solve yesterday's computational problems—that it's answering the questions people had (or should have had) in 1995, when desktop applications were the only game in town, and when computers were primarily used for calculating, rather than for sharing. They still are, and I think that version control and regular expressions and what-not are still the rock on which more novel things are built, but a lot of other things are taking shape in the fog. You can call it "open science" or "science 2.0" or whatever you want, but its focus is on sharing information more effectively by changing publication models, enabling reproducibility, making data findable, encouraging scientists to use groupware (sorry—we're supposed to call it "social media" these days), and so on.
I'd like Software Carpentry to help people get ready for this brave new world. No, scrap that: I'd like Software Carpentry to help people create it, but I'm finding it hard to make up a syllabus that will prepare people for something that doesn't yet have a clearly-defined core. Should we teach people how blogs actually work, on the assumption that RSS (or something like it) will be how scientific information is exchanged and aggregated in the future? Should we spend more time on provenance, or on next-generation build tools, or something else entirely? And crucially, what should we drop to make room? Scientists certainly don't have any more time to learn this than they did when we started in 1997; how do you think priorities have changed since then, and what should we do about it?