The Software Carpentry movement aims to save researchers a day a week for the rest of their careers by training people in computational thinking. Led by Greg Wilson, the volunteers run workshops all over the world, covering computational tools such as modular, testable programming (via python or R), version control (via git and github), and automation (via the Unix shell). Even as a relative expert, these workshops are a great experience in hands-on learning of fundamental concepts through practical examples.
The workshops are staffed by volunteer helpers and instructors, and there is an instructor training programme, training the trainers on the Software Carpentry experience. On the 22-23rd October there was an instructor training workshop at The Genome Analysis Centre in Norwich, led by Greg Wilson and supported by Aleksandra Pawlik (Software Sustainability Institute) and Bill Mills (Mozilla Science), which I attended to learn how NGCM could do better in teaching and training.
The workshop was a roaring success: brilliant speakers, excellent organization, lots of interaction, feedback and exercises, and clearly built around a core of hard, practical experience of teaching computational skills. Most of the topics covered, and evidence cited, was not (or should not have been!) new to me. However, to experience topics such as
- Cognitive development
- Reverse Instructional Design
- Teaching as performance art
- Peer instruction
- Feedback and rapid iteration
- Motivation and demotivation
as a connected whole, and following a top practitioner making the links between such disparate topics, made a huge difference. When you see how these topics are relevant to material you care about, and are teaching right now, then you have to engage with the evidence on how to do better. If this approach could be bottled and used in university "lecturer training" courses I've experienced, I'm sure standards would jump.
There was plenty of chat on twitter throughout the workshop as people swapped ideas and comments, and a great atmosphere from all there. Now it's up to us to use these ideas and techniques to do better, whether through future Software Carpentry workshops (seriously, they're great) or other forms of teaching and training. As part of NGCM, I'll be pushing the students to try this to improve their own learning (especially as a group), to have a broader and especially deeper grasp of computing skills, but most importantly to enhance their career prospects by "recognizing good", and using it to do better science.