Software Carpentry for the NHS

Posted by a.pawlik on 15 December 2014 - 2:00pm

By Aleksandra Pawlik, Training Leader.

Last month saw us run a special Software Carpentry course for students undertaking the MSc in Clinical Bioinformatics course at the University of Manchester. This combines an academic curriculum with a work-based programme.

The students are already qualified professionals and based at various clinical units throughout the UK, with teaching take place during short, intense training sessions.

The instructors at the Software Carpentry workshop were the Institute’s Aleksandra Nenadic, who taught for the first time, and myself. We were also supported by Mike Cornell and course leader Professor Andy Brass who acted as helpers.

After a few discussions with Andy, we decided to embed the regular Software Carpentry workshop into a week-long training program that aimed to teach the students best practice in programming but also give them a higher level overview to help them in their future careers. With this in mind, we included a module on unit testing to demonstrate alternatives to regression testing.

We also added a brief introduction to handling XML files with Python using the ElementTree library. The students were then given an assignment to write a simple XML parser for files used in bioinformatics. The students were divided into groups of four and had to use the tools and methods we had previously covered in order to complete the task. The assessment criteria were largely based on whether the students had wrote, modularised, documented and tested well-structured code. The use of version control was another criterion. The Software Carpentry instructors were not involved in this assessment but Andy told us that their results were outstanding.

It should be mentioned that the group consisted of 12 students in total, which obviously made the teaching much easier in comparison to regular workshops which are on average attended by 30 or more students. As usual, the students’ skills varied and some of them were obviously more advanced than others. However, we linked to extra material on the workshop website which allowed the more advanced students to work at their own pace while we focused on teaching those who were less familiar with the given topic.

In my experience, teaching at Software Carpentry workshops is always an enjoyable experience as the attendees really want to learn the skills they need for their everyday work. In this case, the students were highly motivated and very keen to work throughout the material. Several of them also signed up for the next Manchester Data Carpentry workshop which took place two weeks’ later. Overall, I found this very rewarding as an instructor.

Andy summed it up like so. "Students were hugely appreciative of the SW carpentry course. It was interesting to sit in at the back and watch just how engaged they were with the process. They were almost annoyed with us that something so useful to them had not been made available earlier to them".

As a result, we now aim to make regular Software and Data Carpentry training more accessible for NHS-based trainees.