Software
A note about Julia
Much of my PhD work was written in Julia. For me, Julia was useful because it made it relatively easy to prototype statistical models that combine different ingredients, such as likelihood-based modelling, neural networks, differential equations, and automatic differentiation.
As my work moves further into computational biology and spatial omics, interoperability with established ecosystems such as Bioconductor and the scverse becomes increasingly important. I therefore expect to work more with R and Python. Still, Julia has shaped how I think about scientific software, and I like that it allows you to move quite directly between mathematical notation, statistical model formulation, and performant code.
If you want to know more, here are some slides from a talk about why I used Julia during my PhD.
Packages
- LatentDynamics.jl is a Julia package for learning patient-specific dynamics with ordinary differential equations in the latent space of a deep learning model. It accompanies A statistical approach to latent dynamic modeling with differential equations.
- scVI.jl is a Julia package for fitting variational autoencoders to single-cell count data, inspired by the Python scvi-tools ecosystem.
- JuliaConnectoR provides an interface for integrating Julia in R. I contributed to the software and the accompanying Journal of Statistical Software paper.
Workshops
- The NORBIS workshop on differentiable programming contains hands-on Julia notebooks for flexible modelling with small data. The material was prepared for an invited workshop at the 2022 Annual NORBIS Conference in Rosendal and includes Colab/Jupyter notebooks, a reproducible Julia environment, and a practical introduction to combining neural networks and differential equations.
- The GCB 2022 workshop on interpretable deep learning for single-cell omics in Julia was prepared with colleagues for the German Conference on Bioinformatics in Halle. It collects workshop material around interpretable deep learning ideas for single-cell omics.