HomeNews and blogs hub

Feedback on the PRACE Software Carpentry boot camp

Bookmark this page Bookmarked

Feedback on the PRACE Software Carpentry boot camp

Author(s)

Mike Jackson

Posted on 19 December 2012

Estimated read time: 5 min
Sections in this article
Share on blog/article:
Twitter LinkedIn

Feedback on the PRACE Software Carpentry boot camp

Posted by m.jackson on 19 December 2012 - 3:45pm

By Mike Jackson.

2012-PRACE-OverShoulder_0.jpgBefore and after our recent PRACE Software Carpentry boot camp in Edinburgh, we asked attendees to complete two questionnaires, to gather information on the background, expertise, interest and expectations of the attendees, and, then, to assess whether these expectations had been met. So what did these reveal?

The majority of our attendees were PhD students, closely followed by post-docs and a sprinkling of graduates and undergraduates, a couple of principal investigators and a systems/support attendee. Their disciplines were varied and included biology (and related disciplines), physics, astronomy and geosciences with additional attendees from chemistry, engineering, statistics, mathematics and informatics.

In terms of previous experience, the major gaps were unit testing and plotting with matplotlib. It's perhaps reassuring that many already had some experience of version control, which we deem to be one of the most important tools we teach.

Expertise plot

The attendees' interests complemented their experiences with shell and testing being of most interest.

Interest plot

From our post-boot camp questionnaire, we discovered that of the 20 attendees who completed the questionnaire (out of a total of 36), the majority agreed that they now had a good understanding of the tools we'd taught. The exceptions were for Make and matplotlib, which reflects the rushed presentation of the former, due to running out of time, and the little time scheduled for the latter. Comments from the attendees also expressed the desire for more on Make, for example "more about tricks and tips on things you CAN'T find online", and matplotlib.

Understanding plot

There was an intention amongst the attendees to use everything we'd taught, strongest in the shell and version control. There was some interest in Make and matplotlib. Perhaps of concern, there was less inclination to undertake unit testing, though one attendee did comment that it "seemed quite trivial and needed a bit more context on when it can be really useful".

Intentions plot

As to the boot camp as a whole, there was unanimous agreement that it had been an enjoyable experience and all but one considered that they'd learned something useful that would help their research. All but 3 agreed that they'd recommend a boot camp to their fellow researchers and that universities should offer boot camps to their researchers as part of in-house researcher training programmes. When asked whether a 3 day boot camp with a day on tools and techniques specific to their domain would be useful, 15 agreed and 2 disagreed.

As to the content of the boot camp, some attendees wished we'd covered more advanced features of the shell (e.g. starting with scripting and moving onto sed and awk) and spent less on basic Python (e.g. data types). There was a suggestion that attendees cover the former before they arrive and, for the latter, the attendees are expected to be familiar with programming so should be able to pick up Python basics very quickly. One attendee commented that "I think that it should be more thought about who this course is for. A scientist who wants to learn and use programming in their research or an individual who is already familiar with programming but not necessarily Python."

Some attendees would've preferred an introduction to scientific libraries e.g. numpy, scipy and cython. One attendee commented that they did "feel like I was a little short changed on the complicated work." Some attendees suggested that a 3rd day would've allowed for more time to be spent on such subjects as testing, Make and matplotlib as well as the practical we ran to bring all these together.

A couple of attendees recommended covering Git instead of Mercurial, as Git was claimed to be more prevalent. Providing Git material is on the TODO list for Software Carpentry.

One interesting suggestion was to provide an introduction to "How to use the internet to find answers". Certainly, I'd view a search engine as an essential software development tool!

This and the other comments perhaps go to show that we can't please all of the people all of the time but such experiences do allow us to learn more about how we can deliver boot camps that can more directly satisfy the training needs of researchers!

As a final comment, "I thought it was fantastic, thanks for putting it on."

For all our raw data, please see BitBucket or GitHub. Thank you to Phil Fowler for sending me his gnuplot scripts to help create the images!

Share on blog/article:
Twitter LinkedIn