In the new issue of BioCoder, Peter Sand writes about Hacking Lab Equipment. It’s well worth a read: it gives a number of hints about how standard equipment can be modified so that it can be controlled by a program. This is an important trend I’ve been watching on a number of levels, from fully robotic labs to much more modest proposals, like Sand’s, that extend programmability even to hacker spaces and home labs.
In talking to biologists, I’m surprised at how little automation there is in research labs. Automation in industrial labs, the sort that process thousands of blood and urine samples per hour, yes: that exists. But in research labs, undergrads, grad students, and post-docs spend countless hours moving microscopic amounts of liquid from one place to another. Why? It’s not science; it’s just moving stuff around. What a waste of mental energy and creativity.
Lab automation, though, isn’t just about replacing countless hours of tedium with opportunities for creative thought. I once talked to a system administrator who wrote a script for everything, even for only a simple one-liner. (Might have been @yesthattom, I don’t remember.) This practice is based on an important insight: writing a script documents exactly what you did. You don’t have to think about, “oh, did I add the f option on that rm -r / command?”; you can just look. If you need to do the same thing on another system, you can reproduce what you did exactly.
Documentation and reproducibility are important qualities for scientific experiments. And we’ve seen problems with both in recent years. Some of these errors are an artifact of the way institutional science works. Some are the result of an inadequate understanding of statistics. But particularly in biology, there’s a more basic problem: it’s just hard to duplicate results, which can vary on something as apparently insignificant as whether the lab uses glass or plastic test tubes, or the experimenter’s pipetting technique. So, it’s important to document exactly what’s done and how it’s done, in a way that is maximally reproducible, with as little variation as possible. That’s what a script accomplishes. Just as a script records exactly which commands were executed, a program in biology records exactly what you did. Was the temperature 40 degrees, or 45? Did you pipette 5 microliters or 6? Or 50?
Hacking lab equipment to make it programmable doesn’t yet solve the problem of reproducibility. Nor does it solve the problem of performing boring lab procedures by hand. We’ll need language for describing experimental procedures in a standard way, a much larger range of devices that can be automated, and more. But it’s a start on both of these problems, and an important one.
To download the current issue of BioCoder, visit the BioCoder website.