Hello Imperial RSEs and researchers, and welcome to our October 2021 newsletter. October marks the start of another academic year at Imperial and hopefully one where there is more opportunity to get back to in person teaching/learning and also the opportunity for the research software community to start thinking again about running in-person events and training as the academic year progresses. This October also marks the 6th anniversary of our Research Software Community, with the mailing list being set up and initial members signing up back in October 2015. Awareness of and support for research software engineering at Imperial has grown significantly during this time with the set up our central Research Software Engineering team, a range of new software-related training opportunities, local, departmentally-based RSE teams emerging/growing and individual departmental RSE roles beginning to appear around the College. We look forward to the continuation of these advances in the coming months and years to ensure that we can continue to enhance our skills and develop research software that can support the best possible research outputs.
This month we announce our first research software community event for some time that is taking place on Thursday 18th November, we hope that many of you will be able to join us for that. We also continue our “Research Computing at Imperial” series highlighting key members of the College community who are helping to develop research software or support and manage the processes and teams associated with it.
In this month’s newsletter:
Are you relatively new to developing research software? Do you want honest, helpful feedback on your code? Consider applying to join the Software Sustainability Institute’s Code Review Clinic taking place as part of their “Research Software Camp: Beyond the Spreadsheet”. There’s still just time to apply…applications close on Wednesday 27th October (or once all slots have been allocated).
Applications for the 2022 round of the Software Sustainability Institute’s Fellowship Programme also close soon - the deadline is Sunday 31st October. This programme provides an excellent opportunity to obtain some funding to support you in activites that you are keen to pursue and that are also in line with the SSI’s aims and goals. This may include things like attending conferences/workshops and running events. Four current or former members of our Imperial research software community have previously been awarded an SSI fellowship.
On Thursday 18th November, we’ll be having our first local research software community event for some time, with a lunchtime tech talk and a welcome to all the new members who have joined us over recent months. Full details will be posted in the next few days. Please register to attend through this link (Imperial login required). We know that online event fatigue is significant these days and many of us are keen to get back to meeting in person. We plan to start organising in-person events again in the coming months but in the meantime, we hope to see many of our new community members at this session. We also hope as many existing members as possible will take this opportunity to re-engage (virtually) with the community.
For those of you using HPC infrastructure and interested in container technologies, the Nordic RSE community’s November Research Software Seminar may be of interest: Blurring the lines: Singularity containerisation of SLURM orchestrators takes place via Zoom, 12:00-14:00 (GMT), Tuesday 23rd November.
For anyone already using, or planning to use, the UK’s National Supercomputing Service, ARCHER2, the ARCHER2 team will again be running their ARCHER2 for Software Developers training course on the 29th-30th November, 10:00-16:00 GMT.
The International Conference on Software Engineering (ICSE2022) takes place in May 2022 in Pittsburgh, PA, USA. While the deadline for submission of ICSE2022 papers passed some time ago, there are a number of other conferences/workshops co-hosted with ICSE which may be of interest to the RSE community. Take a look at the International Conference on Technical Debt (TechDebt 2022) (submission deadline 13th Jan 2022), the International Conference on Automation of Software Test (AST 2022) (submission deadline 7th Jan 2022), for which the theme is Software Quality and Trustworthy AI, and the Mining Software Repositories Conference (MSR 2022) (submission deadline 20th Jan 2022).
Continuing our series highlighting key members of the College community helping to provide, manage and support research computing and research software services, this month we have an introduction from Diego Alonso Álvarez, Acting Team Lead for the College’s RSE team based within the Research Computing Service:
I joined the RSE team in 2018 after 13 years working in research - in semiconductor materials and solar cells - as a PhD student, first, and then as a postdoc and research fellow. I was mostly an experimentalist and spent a fair amount of time working in the lab and making sense of the wealth of data I was collecting.
As a self-taught programmer, my skills in software development were sketchy at best at that time. However, they were more than enough to write small tools to simulate my experimental results and to control the equipment in the lab. I discovered that it was quite fulfilling, especially creating neat graphical user interfaces to facilitate other people using those tools. It came as a surprise to me that precisely doing that was the role of research software engineers.
As part of Imperial’s RSE Team, I have been involved in tens of projects on exciting areas of science that had little or no relationship with my background. I have been continuously learning during this time, shifting fields, trying new tools and advising others on how to write better software for their research. We are here to help researchers create impact with their work and to support a thriving community of RS specialists at Imperial.
Our Research Software of the Month for October is EpiEstim.
EpiEstim is software which has become the gold-standard to estimate in real-time the epidemic reproduction number Rt, i.e. the average number of secondary infections generated by each case in an epidemic. EpiEstim is useful to evaluate at any time whether an epidemic is under control (Rt < 1) and if not, to quantify the extent of additional efforts necessary to bring the epidemic under control. In particular, it can be used to assess the effectiveness of interventions aimed at reducing transmission.
EpiEstim has been applied to quantify the transmissibility of various pathogens, including Ebola, influenza, Zika or cholera. It has become particularly prominent during the COVID-19 pandemic and is being widely used by academics, public health agencies and governments worldwide to monitor SARS-CoV-2 transmission.
EpiEstim is freely available in three versions: an Excel spreadsheet, an R package, and an interactive online application. The software and the underlying estimation method have been described in Cori et al. AJE 2013 and Thompson et al. Epidemics 2019.
Thursday 14th October was the first International RSE Day, a number of national RSE communities ran events (see details on the Research Software Engineers International site), and there were various other events and activities taking place too - you can catch up with some of what happened through Twitter via the hashtag #InternationalRSEDay.
Have you got your Hacktoberfest t-shirt yet?! If you haven’t there may just be time since Hacktoberfest 2021 continues until the end of October!
Following the recent AGM, the Society of Research Software Engineering has a new President along with a number of other new and existing trustees taking on key roles in the Society. You can see their announcement on Twitter.
The government report “Large-scale computing: the case for greater UK coordination**” was published towards the end of last month (see the tweet announcing the report). The report includes mentions of research software engineering and various related activities and groups/communities.
The RSdropinUK research software drop-in sessions continue on alternate Wednesdays from 13:00-15:00. Drop in with your technical questions, debugging issues or just to get some general advice about research software engineering, training, or how to get involved with the RSE community. The next sessions will take place on Wednesday 27th October, Wednesday 10th November and Wednesday 24th November. You can drop in without registering - the Zoom link will be posted in UK RSE Slack’s #general channel - or you can register to attend the next session via this form and we’ll email the link to all registered participants shortly before the session.
At our next session on 27th Oct, 13:00-15:00, we’ll be running a short “Absolute Beginners Guide To…creating a basic website with GitHub Pages” from around 13:15.
We’re also still looking to sign up helpers for the session series. If you’d like to help out by joining one session per quarter or once per month, sign up through the helper registration form.
Looking a little way ahead to December, on the 8th, 9th and 10th December we’ll be running another Python Software Carpentry workshop in collaboration with UCL and other institutions through the RSLondon community. The workshop will cover use of the Bash shell, Git version control and Python programming. If you’re interested to get involved as a helper or to have an opportunity to instruct at one of these sessions, contact Jeremy Cohen. As with our last RSLondon Software Carpentry sessions, this will take place online and we’ll be using breakout groups for the exercise elements of the workshop.
It’s already almost 4 weeks since the end of SeptembRSE, the month-long, virtual celebration of RSE held in place of the annual RSE conference. With it’s extremely impressive Gather-based virtual conference centre and a remarkable array of talks, tutorials, mini-workshops and panels this was a great way to see the huge variety of work going on in the RSE space. As a follow-up to the conference, Co-Chair, Christopher Woods, has written up his Reflections on SeptembRSE.
If you have a Computer Science background, you’ll almost certainly be familiar with “Design Patterns” and the design patterns book that is very widely used in software engineering courses - Design patterns: elements of reusable object-oriented software by the “Gang of Four”, Gamma, Helm, Johnson and Vlissides. If you’re not familiar with design patterns (or you’re looking to refresh your knowledge), the StackOverflow blog recently published a post providing a helpful overview of design patterns: Why solve a problem twice? Design patterns let you apply existing solutions to your code
For any MATLAB developers (or indeed music fans) out there, take a look at this fascinating article on how MATLAB helps revive The Beatles only live album. The article may now be a few years old but it’s a great demonstration of what can be done with a language like MATLAB that many people in our community use extensively.
The NIH Office of Data Science Strategy’s Best Practices for Sharing Research Software FAQ.
…continues weekly via Teams - normally on Friday afternoons at 3pm but check our Slack workspace for exact times and connection details.
The Imperial Research Software Community Slack workspace is a place for general community discussion as well as featuring channels for individuals interested in particular tools or topics. If you’re an OpenFOAM user, why not join the #OpenFOAM channel where regular code review sessions are announced (amongst other CFD-related discussions…). Users of the Nextflow workflow tool can find other Imperial Nextflow users in #nextflow. You can find other R developers in #r-users and there is the #DeepLearners channel for our new AI/ML group. Take a look at the other available channels by clicking the “+” next to “Channels” in the Slack app and selecting “Browse channels”. If you want to start your own group around a tool, programming language or topic not currently represented, feel free to create a new channel and advertise it in #general.
See the Research Computing Service’s Research Computing Tips series for a variety of helpful tips for using RCS resources and related tools and services.
Imperial’s Research Software Directory provides details of a range of research software and tools developed by groups and individuals at the College. If you’d like to see your software included in the directory, you can open a pull request in the GitHub Repository or get in touch with the Research Software Community Committee.
Drop us a line with anything you’d like included in the newsletter, ideas about how it could be improved… or even offer to guest-edit a future edition! rse-committee@imperial.ac.uk.
If you’re reading this on the web and would like to receive the next newsletter directly to your inbox then please subscribe to our Research Software Community Mailing List.
This issue of the Research Software Community Newsletter was edited by Jeremy Cohen. All previous newsletters are available in our online archive.