Time flies and it goes even faster when you are busy and enjoying things. The first two months of the year have been like that for me, and I cannot believe that days are becoming longer and trees are starting to blossom!
I would like to take this opportunity to encourage you all to meet other minds alike in the research software world. Research software engineering is not only about the tools and techniques to develop good quality and sustainable software. It is also about creating communities of practice. About learning together to solve problems that affect a particular topic. And meeting people, exchanging ideas and collective knowledge is more important that the specific tools used to solve a problem because they can help you to tackle other issues, as well, not only the original ones.
Dive now into this newsletter and find all the options that are available to you to make this happen. Take your pick and make the most of it, engaging with the people behind those initiatives, workshops or blog posts.
Are you interested in measuring the carbon impact of information technology? Then join this workshop organised by the Sussex Digital Humanities Lab on Tuesday 5th March, which will bring together technical experts and interested parties to explore the current state of digital carbon measurement, and what the future holds.
Taking place as a fringe event of AI UK 2024, the workshop “Latest Developments in Physics-Informed Machine Learning” will be held at Imperial College London’s South Kensington Campus on Monday 18th March, 13:00-18:00.
…and mentioning AI UK, the Alan Turing Institute will host the data science and AI conference, AI UK 2024, on the 19th and 20th March 2024 at Queen Elizabeth II Centre in Westminster. Registration is open. Also note that prior to AI UK, on Monday 18th March, there will be an Early Career Researchers event, ECR Connect taking place.
Byte-sized RSE will be running a session on CITATION files and cffinit
, taking place on Tuesday 19th March 2024, 10:00-11:00. Registration is now open. This is a great opportunity to learn about how to make your code and other related outputs more easily citable.
The next edition of the Digital Research Infrastructure (DRI) Retreat 2024 is open for registration. This is a five-day retreat taking place in Manchester, 18th-22nd March, comprising panel discussions and group sessions for technology specialists to develop soft skills and network with peers.
And a few reminders of events we highlighted last month…
The “FAIR Implementation Workshop - Assessing national current FAIR-enabling capabilities” will take place on 14th May 2024. Secure your spot by confirming your registration. Quick reminder: Workshop registration is both free and mandatory.
EURO-PAR 2024, the 30th International European Conference on Parallel and Distributed Computing, is set to take place in Madrid from 26th to 30th August 2024. Ensure you mark your calendar for the 5th March 2024, the deadline for abstract submissions. Full papers are required just under three weeks later.
The registration for the Collaborations Workshop 2024 (CW24) is now open! The event will take place from the 30th April to the 2nd of May as a hybrid event, with the in-person venue in Warwick. The themes for CW24 are Environmental Sustainability, AI/ML tools for science and Citizen Science.
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 Jamie Quinn:
I’ve recently started in the Aeronautics department as a senior research software engineer looking after three of their computational fluids codes. Ever since I was a kid I’ve been interested in simulation, initially in games physics, then in scientific simulation. After becoming hooked on fluid simulation during my maths and physics degree, I started a PhD in solar physics where I simulated the behaviour of the atmosphere of our sun using the upsettingly complicated equations of magnetohydrodynamics. Unfortunately I had the privilege of using Fortran 95 for everything, yet fortunately an early research software engineer had made an excellent job of maintaining the simulation packages.
While I didn’t have a particularly strong interest in solar physics itself, I could see a number of opportunities where novel numerical methods and exciting new parallel technologies could be leveraged to advance the range of computational problems we could investigate. But no one would pay me for that so I packed up and moved to UCL to become a research software engineer.
Prior to my PhD I had developed software for a variety of companies, even working as a CTO of a startup for a few years. I had good experience with standard industry software practices, I knew a fair number of technologies and languages, and I’d dabbled in other fields like computational bioscience, real-time rendering, and generative algorithms. I was a solid generalist. This apparently made me well suited for a job as an research software engineer, particularly in a central team providing support across an entire university. After three years at UCL, I’d absorbed skills from some incredible colleagues, developed courses, supervised students, became a trustee of the Society of Research Software Engineering, and developed software for tsunami modelling, Met Office benchmarking and materials development. All my projects were wonderful learning experiences, and some were even fun. Many were still in Fortran. And don’t speak to me about FPGAs.
All this while I’d continued playing with computational fluid dynamics, developing my own suite of fluids solvers, some for GPUs, some rendering results in real-time, some even in notoriously slow languages like Python and JavaScript. One even rendered results to a telnet server running on a first-generation raspberry pi! So I was incredibly excited when the opportunity came up to develop solely computational fluids codes here at Imperial. For the past month now I’ve been loving working on the Aeronautics codes, all of which solve interesting fluids problems with novel numerical methods and aim to use the fastest hardware available. I’m even enjoying the Fortran code.
This month, we highlight pyrealm
, a Python package for modelling plant productivity, growth and community demography.
The software aims to provide:
The package is in active development but currently includes:
The package is being developed through funding from the ERC (REALM project, Prof. Colin Prentice, Imperial), the VESRI Programme of Schmidt Futures (LEMONTREE project, Prof. Sandy Harrison, University of Reading) and the NOMIS Foundation (Virtual Ecosystem project, Prof. Robert Ewers Imperial). Package development is supported by the Institute of Computing for Climate Science at the University of Cambridge with additional support from the Research Software Engineering team at Imperial. The package contains over 14000 lines of Python code and 6000 lines of documentation. The package is open source, with clear development and contribution guidelines and we welcome both issues and pull requests!
The package is developed on GitHub and distributed on PyPI and Zenodo. For more details, see the package documentation website.
A video of the byte-sized RSE session on EasyBuild, which was held on Tuesday 23rd January, is now available to watch on the Imperial YouTube Channel. You can also listen to the companion podcast from this session released as part of the Code for Thought series - “Easy does it - with EasyBuild”
Jumping between note-taking apps without ever finding your place? NotesHub might be the end of your quest, especially if you are fond of using Markdown for note taking.
Space is a harsh environment and getting out there, doing the job and being able to keep performing is not easy. This article describes how Embedded Linux is used in spacecrafts… to go where no penguin has gone before!
Check them out!
What’s it like to sit down for your first developer sprint at a conference? How do you find an appropriate issue to work on as a new open-source contributor? This week on the Real Python Podcast, author and software engineer Stefanie Molin is here to discuss starting to contribute to open-source projects.
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.
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:
All the documentation, tutorials and howtos for using Imperial’s HPC are available in the Imperial RCS User Guide. 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.
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 Diego Alonso Álvarez. All previous newsletters are available in our online archive.