Research Software Seminar Series

Are you developing software or tools that are driven by research/engineering in either academia or industry? Do you need to network, share knowledge and experiences with your peers? Then you came to the right page: Nordic-RSE invites everyone interested to participate in Research Software Seminar Series:

Timing

We aim at having a talk every month. The time for each seminar will be set by the speaker. We are inviting everyone to suggest topics and/or speakers for this series here.

Format

As an example, events can be 60 min (40+20 discussion) or 30 min (15+15 discussion). Events could be talks, demos, discussion, debates, and so on. Events are hosted with HackMD for public asynchronous discussion. We will provide mentoring for speakers.

We would like this series to be an informal space also for exchanging ideas and experiences, learning something new, and networking with people of the same interest group. You do not have to be a Research Software Engineer or a Researcher or a Software Engineer nor do you have to be in or be related to the Nordics. Everyone interested in RSE activities is welcome and encouraged to participate!

The Nordic-RSE team will provide support and infrastructure.


Upcoming seminars

We will publish upcoming seminar topics and abstracts here as soon as they are confirmed. You can see topics in planning and add your own suggestions on our Issues page.

November 2022: Chapel: Making Parallel Programming Productive, from laptops to supercomputers

  • Speaker: Brad Chamberlain, HPE
  • 2022-11-30, 16:00 CET convert to your time zome
  • Hackmd (contains connection details): https://hackmd.io/@nordic-rse/seminar-november-2022
  • Abstract: Over the past few decades, a gulf has existed between 'mainstream' programming languages—like Python, Java, C++, Rust, or Swift—and technologies used in practice for programming supercomputers—like MPI, OpenSHMEM, OpenMP, CUDA, OpenCL, or OpenACC. This gulf results in making High Performance Computing something of a specialized skill that may not be readily available to the general programmer or applied computational scientist. In some ways, the problem has even gotten worse over time, as the end of Moore's law has led to building supercomputers using manycore processors and computational accelerators like GPUs.

In this talk, I will introduce Chapel, an open-source language created to bridge this gulf. Chapel strives to support code that is similarly readable/writeable as Python, yet without sacrificing the portability and scalable performance required to utilize supercomputers effectively. Specifically, I will provide motivation for Chapel, present some of its unique features and themes, introduce flagship applications of Chapel, and give a glimpse into our team's current priorities.

Past seminars

We will publish past seminar topics and their recordings here as soon as they are available.

April 2022: Journal of Open Source Software – Developing a Software Review Community

  • Speaker: Arfon Smith
  • 2022-04-27, 13 -- 14 CEST convert to your time zone
  • recording
  • Hackmd (contains connection details): https://hackmd.io/@nordic-rse/joss-talk
  • Abstract: In this presentation, I'll introduce the Journal of Open Source Software, a community-run diamond open access journal for publishing open source software packages. I'll share some of the motivations behind the journal, how it works, and how the journal has evolved over the last six years of operations.

April 2022: Motivating specialist services in universities (or, "Starting a RSE group")

February 2022: The importance and role of community in open source

Open Source is more than code. In order for an Open Source project to thrive, it must put in place mechanism to attract and reward non-code contributions. In this talk, we will go over how the Julia community attracts and rewards these contributions as well as how other projects can learn from our experience.

January 2022: Developing and distributing in-house R-packages

R is mainly a statistical programming language than has been around for more than 20 years. In recent years, it has seen a large resurge in popularity, especially amongst researchers, for its powerful statistical backbone and open source practice. But R can be unfamiliar and intimidating for researchers used to a purely GUI based statistical tool. This talk will center around how I have developed in-house R tools to clean and handle in-house data, and how I have distributed these to work on multiple platforms.

November: Blurring the lines: Singularity containerisation of SLURM orchestrators

While SLURM itself provides tools for job orchestration like job arrays, high level tools like Snakemake and Ray are cluster agnostic and can either make use of SLURM or run on a laptop. To make Snakemake and Ray to run within Singularity, I present singreqrun, which works by requesting the host runs programs on behalf of the container.

The talk doubles as an introduction to Snakemake and Ray. After some brief background on the main tools (Singularity, SLURM, Snakemake and Ray), we proceed to shell code-along to run the following examples:

  • Snakemake for heterogeneous (mixture of CPU and GPU nodes) video corpus processing + quick porting across HPC clusters
  • Snakemake for text corpus processing including using extra Singularity containers for utilities
  • Ray for hyperparameter search

I end the talk by opening for discussion. Is this a good approach? Can we improve upon it?

October 2021: I/O profiling and optimization.

  • Speaker: Simo Tuomisto, Aalto Scientific Computing
  • Abstract: In computing, I/O bandwidth is just as much of a consumable resource as CPU and memory. While on an individual scale on one's own computer, this is often not the most pressing consideration, on a cluster with shared storage (or very intensive individual projects) it is actually very important to consider. This talk presented lessons and tools that RSEs should have in their toolbox, as we have learned at Aalto Scientific Computing over the years.
  • HackMD notes: https://hackmd.io/@nordic-rse/io-monitoring-optimization

September 2021: Combining Rust and Python: Why and How?

August 2021: Package development in Julia

Julia is constantly gaining popularity both in academia and industry and it is thus an appealing programming language for research software engineers. This session will be a hands-on tutorial, which will cover the typical package development workflow in Julia. Topics covered include

  • Creating a package from scratch
  • Contributing to existing packages
  • Tools to test and debug your packages
  • Tools to document your packages

Moreover, Luca will share tips and tricks that have helped him making his workflow more efficient and hopefully will help you too. The workshop will involve a lot of live coding and you are encouraged to follow along, check the setup instructions here.