Teaching basic lab skills
for research computing

First time for everything

This spring I found myself back in a new situation, an anxious instructor in front of a room full of anxious students. My last teaching was many years back, as a teaching assistant in graduate school, and then a few lectures as part of an intermediate-level course for graduate students. But those were rather theoretical, blackboard affairs. This was my first attempt at teaching software, and with live coding demos. Didn’t Steve Jobs himself say “never give a software demo”? (Okay, maybe not.) In the end though, I was happily surprised by the experience.

Getting there is half the fun

At the end of the long German winter, a group of us had come together with the idea of holding a useful workshop or two for our institutes - the GFZ German Research Centre for Geosciences, the Potsdam Institute for Climate Impact Research (PIK), and the University of Potsdam (UP), and others.

After much discussion, we settled on two two-day workshops to be held in May - one a Python Novice workshop, and the other on R. There was strong interest and many more people wanted to take part than we could fit.

We had a large group of instructors and helpers with a diverse background. One or two had done this before; three of us had just completed the SWC instructor training course, but hadn’t checked out yet. Martin Hammitzsch led us in wisely lowering our sights to something achievable, and in managing much of the administrative work required to get us there. We were fortunate to have a great venue available. (Literally, as it was at the GeoLab meeting space in the base of the Great Refractor, one of the important scientific instruments of the end of the nineteenth century.) Little set-up time was needed, as we were able to distribute preconfigured disk images to all the computers in the room.

Both courses were delivered in English. This created a few amusing issues like “Where is the control key on this German keyboard?”

Getting to know you

We began the first morning with all participants giving short “lightning talks”, limited to two minutes and one slide. This was an effort to build a software-oriented community by finding common interests across the many disparate research groups in our cross-disciplinary institutes. The results were an impressive demonstration of the range of talents present here.

The big day

I gave the “Introducing the Shell” introduction. As I got started, I had an insight: Every one of us in this room had mastered a second (natural) language. So surely getting started on a couple of computer languages and dialects (bash, git, Python, R) wouldn’t actually present much of a hassle for the participants. I found this thought reassuring, at least - I hope they did too.

Things unfolded more or less smoothly over the rest of the workshop. The most satisfying feedback was that we obviously enjoyed guiding the students and benefitted from having strong material. Or that we went slowly and carefully so that everyone could keep up. Much credit is due to the SWC community for giving us such a solid, well-structured base to work from, and to Martin for his leadership in educating us about the goals of SWC, and for his organisational expertise.

These workshops were a good learning experience for the instructors (for the participants too!) and we look forward to putting on an even better workshop in 2018.

Classroom shot

WORKSHOPS · GERMANY · SOFTWARE CARPENTRY

Dialogue & Discussion

You can review our commenting policy here.