Imperial College Research Software Community Newsletter - December 2023

The holidays and the end of another year are almost upon us! 2023 has been an interesting year for the Imperial Research Software Community and our related projects and activities. While our main source of funding ended in the summer of this year, which has made running community events a little more challenging, we have been keeping in touch via this monthly newsletter and our Slack workspace. We were also able to run our end-of-year festive get-together earlier this week. It was great to see some of our members joining us in person to hear talks from two excellent speakers and join us for food and a chance to chat.

Earlier in 2023, we were involved in running Imperial’s first “Research Software Champions” programme, supported via the College through Research England research culture funding. This scheme brought together an enthusiastic group of 14 Champions from departments across the College who undertook a variety of activities to raise awareness of good “research software culture”, highlighting the importance of core skills and best practices. The scheme was very successful and I’m pleased to say we’re now looking for another cohort of Champions for 2024 so, if you’re a PhD student, look out for more information in the “News” section below! This project also supported the development of a new Research Software Directory for Imperial - this will be made publicly available in the coming weeks and is a great place to be able to showcase your software to the Imperial community and the wider world!

In July, a number of members of the community joined us for the 1-day Research Software London annual workshop which attracted around 80 attendees from across the London and South East region. RSLondonSouthEast 2023 was held at Imperial’s South Kensington Campus and offered a programme of talks, alongside posters and opportunities for networking and discussion.

Looking ahead to 2024, we’ll be aiming to expand our committee enabling us to better share the workload of managing our activities, and we’ll be looking to offer more events and opportunities for training in core research computing skills. If you’d like to be part of this and help us to grow and develop the community, get in touch!

Wishing you all the best for the holiday season and the new year and a good break.

Dates for your diary

And a few reminders of events we highlighted last month…

Research Computing at Imperial

This month, in our series highlighting key members of the College community helping to support research computing and research software services, we hear from Dr Stefano Galvan. Based in the Department of Mechanical Engineering, Stefano has been a longstanding member of our community committee and he has played a key role in helping to sustain and support our community over a number of years:

I view my journey in software design, implementation, computing hardware, and ICT as an ongoing development. It all started when I was 12, writing my first original program in BASIC for the Commodore 64. Fast forward to today, and I find myself employed as a Senior Research Software Engineer in the Mechanical Engineering department, where software is both my passion and my work, shaping every decision in my career.

After earning my Ph.D. in Computer Science, I spent a few years in industry, first as an ICT manager and later refining my skills as a Linux kernel hacker for embedded systems. Upon returning to academia, I collaborated with various groups in the Department of Mechanical Engineering, contributing to two large-scale EU projects on robotic neuro-surgery. I designed and developed code mainly in C++, Python, MATLAB, and used ROS, the robotic operating system, a communication framework for distributed systems. Linux is my go-to system, and I’m always happy to help those using it or transitioning from other operating systems.

In case you are wondering, there’s a lot of code development in Mechanical Engineering, from simple prototypes to full-fledged commercial products. My role involves assisting researchers at every stage of software production, from design to implementation, and from usability to maintainability. I aim to shape the approach towards software, considering it not just as a tool but as a proper form of research output. I’m also trying to convey the message that, given the resources invested in producing good code, it should be preserved for the benefit of future generations of researchers. And that requires good documentation, proper versioning and, in some cases, an easy-to-use user interface.

I’m always up for a chat about software, so feel free to reach out to me via email or on Teams.

Research Software of the Month

We don’t have any Research Software of the Month for you this month, however, we’d instead like to highlight that there’s still time to get coding as part of “Advent of Code 2023”!

Even if you’re not participating competitively, AoC provides a great way to test and improve your coding and problem solving skills and algorithmic knowledge. It’s also a perfect opportunity to get started with a new language and quickly learn the core features and API.

Ever thought about learning Rust? Go? Scala? Or maybe something more traditional - C++? FORTRAN? Or, simply use your favourite language at the moment to work through the puzzles!

RSE Bytes

News

Blog posts, tools & more

Some reminders…

RS Community Slack

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 AI/ML-related questions and discussion. 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.

Research Software Engineering support

If you need support with your code, seek no more! The Central RSE Team, within the Research Computing Service is here to help. Have a look at the variety of ways the team can work with you:

HPC documentation and tips

All the documentation, tutorials and howtos for using Imperial’s HPC are available in the HPC Wiki pages. See also the Research Computing Service’s Research Computing Tips series for a variety of helpful tips for using RCS resources and related tools and services.

Research Software Directory

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.

Get in Touch, Get Involved!

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.