Big Code vs. Science 2.0
This post originally appeared on the Software Carpentry website.
The original goal of this course was to give scientists and engineers the skills they needed to build large pieces of software without heroic effort. It's increasingly clear, though, that another goal is equally important: to help them take part in what's sometimes called "Science 2.0": the sharing of information through the Internet. Cameron Neylon's slides on capturing process are, like Jon Udell's on computational thinking, a good summary of the skills required—skills which overlap with, but are distinct from, those needed by software developers.
One interesting wrinkle on this is that Quantiki (a web site devoted to quantum information science) is now hosting video abstracts for papers. As their site says, "The abstracts provide a 'teaser' for the paper and should guide the audience into your work, emphazising what you think is the most important result." This is very cool, as is the video that accompanied the paper in Cell about the effects of adding the human FOXp2 gene to mice. With teenagers routinely creating and sharing how-to videos for skateboarding, it's time scientists started documenting their lab procedures and popularizing their work the same way. The question is, what can we teach so that these archives will be findable and searchable?
Another interesting development is Mendeley (which decloaked a couple of weeks ago). Its goal is to make tagging, sharing, and discovery of scientific information so easy that it becomes ubiquitous. This will require new social skills (not to mention better legal and institutional frameworks); to be really effective, it will also require people to pick up new technical skills so that they can customize, blend, and filter information. Again, what can we teach, and how should we teach it?