Tom Williams ; 22/10/2026
The majority of astronomical research is now done through programming, whether that be raw data processing, running large simulations, or performing analysis on large datasets. As such, writing good code is essential. I will talk through some best practices on how to do this, including how to write clean code, how to write code that can be easily scaled up for future projects, and how to make that code accessible to both future you and other researchers. Because astronomical datasets are getting increasingly massive, writing efficient code is also essential. I will highlight a few common pitfalls and how to avoid these, as well as touch upon using multiprocessing to efficiently use all of the computer that you have. By writing good/fast code, you make your research easier, more reproducible, and more honest.
Soheb Mandhai ; 29/10/2026
In this JACS session, we'll cover key Python techniques required to fulfil common operations in astrophysical research. The key focal points will be writing functions, handling errors, and visualising data effectively. For the first half, I'll overview libraries and methods that you can implement into your workflows straightaway. For the second half, I'll be focusing on coding practices and implementing software engineering techniques such as SOLID design principles to future-proof your software.
Building good habits early on will save your future self a lot of time and pain!
Finally, I'll signal some Python guides, existing resources, and free courses that'll facilitate your learning journey.
Sohini Dutta ; 12/11/2026
Ever made a plot that looked fine at 2am, then fell apart in the paper? This hour is for new PhD students, and nothing beyond basic matplotlib is assumed.
We’ll start with a game: spot what’s wrong with one deliberately no-good-very-bad figure. Then we’ll fix those problems live, step by step, on the plots astronomers actually make: power spectra, corner plots, a sky map, an image, etc. You’ll learn to choose colours that don’t mislead, show uncertainty honestly, pick scales that reveal your data, and build one reusable style for a whole paper. Along the way, you’ll meet a few libraries and tools that make life easier.
Bring a laptop. Setup instructions and the notebooks will be shared beforehand, and you’ll leave with a one-page cheat sheet.
Zheng Zhang ; 19/11/2026
TBA
Anthony Holloway ; 26/11/2026
Our group has a number of compute clusters, groups of machines which can be used to process lots of work at the same time or run one big parallel task. We will look at how the JBCA clusters have developed and what is available now. We will learn about how codes scale on large clusters and how software can be written to make efficient use of them, with libraries such as OpenMP and MPI. You will see how these resources could be used to speed up the work for your projects or enable new areas to be investigated.
Gabriel Hoerining ; 17/12/2026
For many, Linux and its terminal interface may seem unfamiliar, complex, or even intimidating. However, a basic understanding of this powerful operating system can open up a world of flexibility and control for users. This introductory session will equip participants with the foundational knowledge of Linux, covering essential commands and file management techniques that can be applied to everyday tasks. By the end of this presentation, attendees will be capable of navigating the Linux environment with confidence, handling basic software troubleshooting, and resolving minor issues that may arise. Join us as we explore Linux’s potential to streamline workflows and empower users.