Pytroll – international code collaboration for satellite applications

Pytroll: easy to use, modular, free and open code. Pytroll is the name of an international open source code collaboration for processing Earth observation satellite data. It is also used as an umbrella term for all the software modules developed or maintained as part of this collaboration.

In developing Pytroll’s software, there has been a particular emphasis on ensuring that it is easy to use, modular, free and open. All code is written in Python, and it should be possible to use the software both for research and development and in a 24/7 operational production environment.

Pytroll began in autumn 2009 as a collaboration between DMI and SMHI on processing and using satellite data. From the start, there has been a focus on developing open source code to create a modern, flexible and robust production platform that can cope with growing demands, both today and in the future.

Sharing resources between several countries means that greater benefit can be achieved at the same cost. By making the source code free and open, the production systems will be better and more robust, and others will be more tempted to join the collaboration.

All Pytroll code uses copyleft licences (GPLv3 and LGPLv3), ensuring that all the code developed as part of the Pytroll project remains open. The code is available on GitHub, PyPI and conda-forge. Users and developers can interact on and via Pytroll’s Google Groups mailing list.

There are now Pytroll users all around the world, and the code is used operationally in some form by around a third of EUMETSAT’s thirty member nations.

A total of 133 different developers have contributed to the code base of approximately 225.000 lines of code during the ten years of Pytroll’s existence, and on average there are more than 20 active monthly users.

According to the COCOMO model for developing large-scale software projects, Pytroll corresponds to 59 person years of development, and currently has a value of USD 3.2 million.