About Aperio

Aperio Software is a research software engineering company founded by researchers and members of the open-source astronomy and solar physics communities in 2017. We specialise in the development of such software and we can support researchers throughout the software lifecycle, from development and testing to documentation, packaging and support.

We offer a broad range of support services for researchers and academic institutions, including:

  • Packaging software for distribution
  • Testing and continuous integration services
  • Writing and reviewing documentation
  • Extending support for legacy code
  • Consulting on reproducibility, optimisation, or other topics
  • Training and instruction on a variety of subjects, in workshops and courses or as one-to-one tuition
  • Development of new software projects from scratch, including any or all of the above
  • Networking and recruitment services for both researchers and academic institutions

We are happy to work on other aspects of scientific software development not listed above, so feel free to contact us to discuss with us any specific requirements you may have.


We can provide a variety of training and support services, from one-on-one tuition to week-long courses for dozens of people. Our focus is on teaching programming for the purposes of scientific research, with a particular emphasis on solar physics and astronomy. However, we are open to working with clients from other disciplines.

Some of our services are descibed below. If you have any questions about these or would like to discuss arranging something that isn't listed, feel free to get in touch.


We offer a variety of workshops teaching Python, with three broad approaches:

  • Introduction to programming (2 days): for scientists with no prior programming experience. Covers version control with Git, basic bash and the fundamentals of programming in Python for scientific purposes.
  • Extended workshop (5 days): a longer workshop aimed at those without programming experience. The first two days cover the same material as the Introduction to programming workshop. On the third we discuss principles of open-source software and the final two days go into more detail on programming for solar physics and astronomy, particularly with SunPy and Astropy.
  • Python for programmers (2 days): a condensed version of the Extended workshop. Covers Git, Python syntax, SunPy and Astropy. This workshop assumes prior experience with another programming language and some familiarity with bash.

These workshops are flexible and we will work with you to provide a custom-built curriculum suitable for your purposes. All the standard lessons we use for the workshops are available in a GitHub repository, and you can also see a list of our previous workshops below.

All workshops are interactive and are based on the style of the Software Carpentry workshops. Participants are expected to bring their own laptops and work through coding examples as they are demonstrated throughout the workshop. This approach allows attendees to immediately apply what they are learning and to get feedback quickly if problems occur.

If you would like us to provide one of these workshops for you, contact us at training@aperiosoftware.com.

Previous Workshops

We at Aperio Software have extensive experience providing a variety of teaching workshops, which are listed below. You can also find a repository of all our lessons on GitHub.

The workshops listed here were provided by members of the Aperio team before the founding of the company.


Dr. Andrew Leonard

Andrew is a director and founder of Aperio Software. He has a PhD in solar coronal physics from Aberystwyth University and an MPhys in Physics with Planetary and Space Physics, from the University of Wales, Aberystwyth. After completing his PhD Andrew worked as a post-doctoral researcher at Sheffield University, studying magnetohydrodynamic waves in numerical simulations of the low solar atmosphere, before leaving academia to co-found Aperio Software.

Andrew is a developer of the PlasmaPy package and a contributor to the SunPy project. He has taught Python and Fortran since beginning his PhD and has worked on developing a number of short courses, including the Aperio workshops. Currently, Andrew is responsible for developing the calibration software for the Visible Tunable Filter, one of the instruments on DKIST.

Dr. Stuart Mumford

Stuart is a director and founder of Aperio Software, with a PhD in numerical solar physics from Sheffield University and a MPhys degree in Physics with Planetary and Space Physics from The University of Wales, Aberystwyth.

Stuart has been lead developer of the SunPy project for a number of years and has worked as a member of the wider astronomical Python community to build shared tools for all forms of astronomy. Stuart is currently working as lead Python developer for the DKIST Data Centre, the first solar physics facility to be adopting Python and SunPy.

Dr. Thomas Robitaille

Tom is a director and founder of Aperio Software. Following a PhD in Astrophysics from the University of St Andrews, he took up a postdoctoral fellowship at the Harvard-Smithsonian Center for Astrophysics, before leading a research group at the Max Planck Institute for Astronomy in Heidelberg, Germany. He then moved to the UK and left the traditional academic career track to become a freelance developer for scientific open source projects, and co-founded Aperio Software.

Tom is an active member of the scientific open-source community - he is one of the coordinators and lead developers of the Astropy project, as well as the lead developer of the glue package for multi-dimensional linked data exploration, and a regular contributor to other packages. He is also passionate about training scientists in using and developing sustainable software, and is a fellow of the Software Sustainability Institute. Finally, he is one of the scientific editors for software papers for the American Astronomical Society.