Teaching basic lab skills
for research computing

Feedback and wrap-up from York

The SoundSoftware project arranged a Software Carpentry bootcamp for the week preceding DAFx'2012, the conference on Digital Audio Effects, at the University of York.

This bootcamp featured two days of non-subject-specific Software Carpentry material, presented by Greg, and an additional day of material specific to audio and music researchers, presented by Adam and Becky of Codasign. Many thanks to Greg, Adam, and Becky for their hard work.

Subject-specific third day

We think this was well-received, though some attendees (and helpers!) were beginning to flag by the third day. With more practice it might be possible to start introducing more subject-flavoured material into the first two days as well. This seems like an experiment worth repeating.

The third day was closed with a short but lively discussion session about applying Software Carpentry methods in the context of the researchers' own work.

Python code from the audio and music day can be found on Github or code.soundsoftware.ac.uk.

Co-location with a conference

We had hoped that co-locating the bootcamp with the DAFx conference would get us a higher attendance and make things easier for participants, but at least in this case that doesn't seem to have happened. We had enough people (26) to fill the room in comfort but we were below capacity, and only 5 participants reported that they were also attending the conference.

(The bootcamp was advertised mostly during the summer break, which probably explains this to some extent. Our fault; we could have done better here.)

Software requirements

This bootcamp had a particularly tall list of software requirements and prerequisites. So as an alternative to installing the software natively on their own machines, we also provided a virtual machine image that attendees could run up in VirtualBox. A handful of people took advantage of this and it seemed to work OK for them.

In previous bootcamps we have been involved with, Windows users have had far more problems getting software installed than those on other platforms. This time around, we switched to MinGW (from Cygwin) which worked a little better, and at the same time we found that users with OS/X 10.8 were having far more problems with Python versions and dependencies than we had experienced previously — so the spread of difficulties was more even than usual.

Good and bad

These are from the end of the second day (i.e. non-subject-specific material).

Good Bad
  • Emphasis on peripheral stuff like time management
  • Reading material suggestions
  • Virtual machine provided with stuff already installed
  • Well-designed website that supports the workshop
  • Varied approach
  • Learning Python
  • The venue
  • Working in pairs and teams a lot
  • Good thinking about software development
  • Range of difficulty: good entry level, plus harder stuff
  • Very interactive
  • Cookies provided
  • Day not too long, divided up into good chunks, not overloaded
  • Personal insight in anecdotes
  • Meeting other people
  • Ending the day in the bar
  • Free to attend
  • Speed of Python stuff — too fast to follow
  • Practical examples left incomplete, not enough time
  • Time constraints
  • Didn't learn enough Python to go away and code it instead of other languages I already know
  • Lecture notes not enough
  • Breakfast not provided
  • Bit preachy / evangelical at times
  • Would like more detail on unit testing
  • Assumptions about programming ability — standards too high
  • Use of coloured sticky notes irritating and distracting
  • Lighting — don't get on with strip lighting
  • Started too early (9am)
  • Would have liked a bigger project using version control and Python together


Dialogue & Discussion

You can review our commenting policy here.