My colleague Fred Gibbs recently posted an excellent overview of some of the issues surrounding coding in history education. To teach coding or to not teach coding is an issue I’ve wrestled with for years and have, thus far anyway, always come down on the side of not teaching it. For one thing, I’m not much of a code monkey myself, and so I could only teach very limited skills to my students. In fact, most of my skills fall into the category of site design (not that this site is an excellent example of such skills), and so I’m really not going to be much help to my students.
What I have made a strong case for in various venues over the past few years is that we have to teach our students higher order technical skills, especially information search, retrieval, and analysis, if we want them to be able to take advantage of the wealth of historical content now available online. To leave it to Dr. Google or Dr. Yahoo to teach our students these skills is to abdicate our responsibilities to our students.
I checked, and the first time I raised this issue here was in 2007. Since then, I’ve incorporated teaching search and retrieval skills into all of my classes and, overall, my students seem to appreciate the time we devote to the topic. This semester I’m teaching an honors research seminar in the program I direct these days and I’ve assigned The Craft of Research (Booth, Colomb, Williams, 2008) and this book devotes exactly one page to searching the Internet for sources. (75-76) As a result, I’m devoting a lot of time in class to working with such sources, because much of what my students will be working with will be found online.
But I’m not teaching them anything that might be considered coding, and because this is an honors program I do feel a little guilty that I’m not. After all, shouldn’t our best students get the most sophisticated work we can offer?
Fred makes a very useful distinction between programming and scripting–a distinction I hadn’t really thought about until I read his post. I think that if we can lower the entry barrier on scripting, then teaching that, rather than programming, holds much greater promise.
At its simplest level, one way to get students to think about scripting is the “advanced search” feature on most search engines. The search interface does the actual scripting for the user, but it seems to me that this interface is the best place to introduce the concept of scripting. Once students play with those tools a bit, then they can be shown the advantages that more sophisticated scripts might offer them as researchers.
Will that inspire them to start coding? Perhaps…but likely not. I have taught long enough to know that only when something we are teaching becomes intrinsic to the entire course–not just to this week’s assignment–will large numbers of students buy in.
Fred says in his post that he’s intending it to be the first in a series. I look forward to reading whatever comes next.
Hi,
thanks for this interesting post. A week ago, as a non-coder historian, I tried to argue that it was a necessity to learn to code. I based my idea on the fact that I need, nearly on a daily basis, to deal with programming for my historian’s work. This needs corresponds to your idea (or Fred Gibbs’s) of scripting. See here: http://www.clavert.net/wordpress/?p=385 (in French). I don’t do, in this post, the distinction between scripting and coding, probably because I lack a strong experience of coding/scripting.
I think there is another point that strengthen the idea of teaching code, or at least scripting, to historians: it is a good way to learn to communicate with professional developpers who will be able to assist you or develop for you more advanced applications that can be usefull for your research. As I now work daily with programmers, I remarked that it was really important to be able to understand each other – and this is not easy. Just think about the definition of “document” in history and in computing.
Best regards,
FC