11-18, 09:00–12:00 (Pacific/Auckland), WF503
Geospatial workflows can be surprisingly energy-intensive. This workshop introduces Rust as a fast, efficient alternative to interpreted languages like Python and R. Learn how Rust’s performance and safety make it ideal for sustainable geospatial analysis, and explore the eorst toolkit for spatial data, raster processing, and modelling.
Even though servers, data centers, and high-performance computers use a considerable amount of energy—and thus contribute significantly to carbon emissions, the environmental impact of computation is often overlooked. This is especially ironic in geospatial science, where much of the work aims to understand and protect natural resources. Remote sensing workflows can be resource intensive, and as data volumes and analysis complexity grows, so too do the computational demands. Efficiency becomes not just a practical issue, but an environmental concern. The tools we use may matter more than we think.
This workshop explores how programming language choice can meaningfully reduce the environmental cost of geospatial analysis. While interpreted languages like Python and R are the most popular choices due to their accessibility and rich ecosystems, they often fall short at scale. Their reliance on runtime interpretation and garbage collection often translates into longer compute times and higher energy usage, and thus generate more emissions.
Compiled languages like Rust and C++ can offer an alternative path. These languages are significantly more efficient, often completing tasks faster and with less energy consumption. Rust in particular is emerging as a powerful option for scientific computing. It provides memory safety without a garbage collector, using a system of ownership and borrowing to manage memory at compile time. The result is software that is fast and reliable, with minimal runtime overhead. Unlike C or C++, Rust helps prevent common errors such as buffer overflows, null pointer dereferencing, and data races on parallel processes, without sacrifice in performance.
Rust’s growing adoption by major tech players, like Microsoft, AWS, Google, and even the Linux kernel project reflects its maturity and reliability. This support, highlight that Rust is more than an academic or niche choice, but a practical, long-term solution.
This workshop will introduce core Rust concepts relevant to geospatial analysis and explore the growing Rust geospatial ecosystem—including libraries for spatial data handling, raster processing, modelling, and machine learning.
In this hands-on session, we will explore Rust fundamentals and use eorst to compute cloud frequency over a two-year period from satellite Sentinel-2 imagery.
The eorst crate is an open-source Rust library designed to simplify and accelerate geospatial raster processing. Inspired by tools like Rasterio, RIOS, Dask, and Open Data Cube, eorst wraps complex geospatial operations in high-level abstractions, while preserving the performance benefits of systems programming. It minimizes the overhead of abstraction, letting developers focus on the science rather than the plumbing.
Originally developed to support the Spatial BioCondition framework for modeling ecosystem condition, eorst now underpins large-scale operational workflows for Queensland’s Department of the Environment, Tourism, Science and Innovation. The library's main features are:
Efficient geospatial raster I/O
On-the-fly projection and alignment.
Tiling and parallel out-of-core processing.
Raster point sampling.
Zonal statistics.
Mosaicking.
Band math and time series operations.
STAC integration.
XGBoost and LightGBM inference.
Optional OpenCV image processing.
Rust also interoperates well with Python and R, making it a pragmatic choice for hybrid workflows and for teams gradually transitioning toward more efficient computation. As part of the session, we will also demonstrate how to create a simple Python wrapper using the pyo3 library, allowing Rust functionality to be accessed from Python.
If you are curious about producing more sustainable geospatial analysis, this session will be a practical starting point.
I’m a Dr, Leonardo Hardtke, a senior scientific officer at the Department of the Environment, Tourism, Science and Innovation. I specialize in applying advanced remote sensing and spatial data analysis to support ecosystem condition monitoring and environmental decision-making. I’ve been working with Rust for geospatial workflows for several years, developing tools like the eorst crate. I’m passionate about bridging cutting-edge programming with practical environmental science to create scalable, reproducible solutions.