Research IT

Remote Advanced Scripting Workshop

Research IT Research Software engineers, Anja Le Blanc and Douglas Lowe recently ran a five day scripting workshop for NERC funded Environmental Science PhD students. Find out more about the workshop and the challenges of running such a workshop online


In late 2019 NERC approached Prof David Schultz (Department of Earth and Environmental Sciences) to organize a scripting workshop for the benefit of NERC funded UK environmental science PhD students. This would be along the lines of a previous workshop he ran in 2018. However the previous trainer had since left the University of Manchester so he approached Research IT for help. This was when we stepped in to help Prof Schultz in organizing the workshop.

It seems like we started the preparation for this event in a different age - back before the pandemic hit and made all in-person events impossible. It was hoped to run the event in-person on campus and the event had been postponed several times before the decision was made to finally run it online. Over 30 students at various stages of their PhDs signed up to take part in the workshop.

By now we have much more experience in Research IT of running training online using Zoom, but a hands-on workshop running over several days provides its own challenges. The Software Carpentry style of teaching where people follow the material by typing along has proved very popular in our day-long courses, so we applied it to this workshop as well.

The students who applied for the course came with differing degrees of experience in using the Bash shell with the main aim of the course being to teach a range of advanced skills / tools / best practice for their further research. To make sure everyone started out with a common basic understanding of Bash shell, the first half-day consisted of a standard Intro Bash course. Students also learned how to use the version control tool Git to keep their research safe.

The second day, we taught the ‘advanced’ materials for Bash scripting. The material was especially developed for this workshop by Douglas and consisted of the tools that would help an experienced researcher in building workflows to efficiently work with larger sets of data.

Research can outgrow the capacity of the student’s own machine so on the third day we invited the ARCHER2 team to provide students with an introduction of how to get started on an HPC system. HPC is not the only technology used for off-loading work, but Cloud resources could be employed as well – so next month there will be an additional day just providing a general understanding of how best to use Cloud resources.

After learning about so many new tools, we asked the students to apply some of these to their own research for the last two days. These were dedicated to project work with experienced researchers on hand to provide advice and support. Students were invited to ask questions or discuss their research to see how scripting can help in their area of interest. We were keen to see how the students applied their new found skills to their research so they were invited to present their outcomes from the last two days with Amazon vouchers were awarded for the best work.

What was needed to make the event happen?

Delivering a course of this size and length was a challenge so it is worth recapping what technologies were employed to make the workshop successful:

  1. Zoom – on online meeting space with all required functionality for remote teaching.
  2. Apache Guacamole – a remote Linux desktop that provides a graphical desktop in a browser window.
  3. Slack – a shared workspace for the team to communicate outside of video calls.
  4. Gather.town – an online social space to allow small-group video chats in a game-like environment.

All teaching was carried out using Zoom sessions, during which people had the opportunity to ask questions either in the chat or by unmuting the microphone. All chat messages are lost after leaving the session, but the teaching sessions could be recorded, and these have been shared with the students. Slack filled the gap for sharing more long-lived information about what is coming up, or where materials could be found, as well as anything which lay outside of the main video sessions.

Gather.town (https://gather.town/) was used for a course social on the Tuesday afternoon. One of the most difficult aspects of in-person events to replicate on-line is the opportunity to chat informally with other participants about your work. Although still not a perfect replacement, Gather.town offered a more usable space for this kind of interaction than Zoom. Providing the Apache Guacamole remote desktop as an optional tool for our participants helped us to ensure that everyone had access to the same tools (no matter what operating system they were working on locally), and reduced some of the technical support burden involved in hosting workshops like this remotely.

We received some good feedback and of course also some great suggestions for improvements – in case we run such an online workshop again. We proved it is possible to run a multi-day online event, but we still think face-to-face is better!

Prof. Schultz gave thanks to the Research IT team: “Given the tremendous uncertainty of not knowing when and if we could deliver such a workshop on campus, I’m immensely appreciative of the hard work that the Research IT Team, especially Anja and Doug, did to deliver such an educational workshop in such unusual circumstances and get such glowing reviews from students.”.

All the materials from the workshop can be found on the Research IT GitHub site.