ECMWF Newsletter #181

Code for Earth 2024 – successful completion of 13 challenges

Athina Trakas
Esperanza Cuartero

 

Code for Earth is an ECMWF activity focused on innovation, collaboration and open-source development. It bridges the gap between creative minds and real-world challenges. Since 2018, selected developer teams and individuals from outside ECMWF have come together each summer with ECMWF mentors and partners on innovative projects in data science; weather, atmosphere, climate or other Earth sciences; visualisation; and more. So far, the programme has produced over 50 open-source projects, some of which have been beneficial to activities at ECMWF and its Member and Co‑operating States. For example, the Jupyter Notebooks developed in one of the 2023 projects will be used in core ECMWF training resources, and code developments in land verification from another 2023 project have been incorporated into the LANDVER package. In this year’s edition, Code for Earth has seen the successful completion of 13 challenges under the headings of data visualisation, machine learning, and software development.

Code for Earth 2024

Each year, the programme outlines a set of challenges and invites individuals and developer teams to submit proposals through an open Call for Participation. Once selected, teams work on their chosen challenge during a four-month coding phase, transforming the initial ideas into actionable projects as they develop their solutions.

Code for Earth in numbers

Started in 2018

Has produced 59 projects

Has involved 107 mentors

Has attracted 126 participants

This year’s Code for Earth edition benefited from expanding its impact through strengthened partnerships, in particular with IFAB, the International Foundation Big Data and Artificial Intelligence for Human Development, and additionally through so-called Joint Challenges. These were developed jointly with the following partner organisations: the European Environment Agency, the University of Reading (UK), the University of Bonn/Center for Earth Observation and Computational Analysis (Germany), and the Helmholtz-Zentrum Hereon (Germany).

Group photo.
Group photo. Participants in the Code for Earth Final Event in Reading, UK, in September 2024.

From the proposals submitted, 13 talented developer teams were selected to tackle challenges faced by scientists and technical specialists working on real-world issues. Each team was guided by an ECMWF mentor and, for Joint Challenges, mentors from partner institutions – all experienced specialists in their respective areas. The teams worked on the following projects:

Stream: Data visualisation and visual narratives for Earth science applications

  • CAMS Verisualiser: A web application for interactive verification results. This project developed a web application with a Python backend and JavaScript frontend to visualise CAMS verification data interactively, allowing a user to change scale, zoom in, etc. CAMS is the EU’s Copernicus Atmosphere Monitoring Service, implemented by ECMWF.
  • CAMS-nb-Charts: Jupyter notebooks for CAMS web charts. CAMS-nb-Charts created reusable Jupyter notebooks to programmatically reproduce CAMS forecast charts. Using a flexible template and configuration file, the project enables easy customisation and data visualisation across various variables.
  • vAirify: An air quality dashboard. The project developed a dashboard that compares CAMS air pollution forecasts with in‑situ measurements. Forecasters can visualise variations and zoom into local areas via an intuitive map view, helping them to improve model accuracy.
  • Tales of Dry Lands: Contextualising Earth’s water story. This project used Python notebooks to help users understand and visualise climate data related to droughts. It simplified complex drought patterns, making them accessible to a broader audience.
  • SunVizor: Visualising ECMWF and Copernicus data for the renewable energy community. SunVizor developed a user-centric web application to visualise and compare solar energy data, addressing the need for better tools in the solar energy sector.

Stream: Machine learning for Earth science applications

  • HydroGap-AI: Bridging gaps in streamflow observations with ML-driven solutions. The project focused on filling gaps in daily streamflow time series using advanced machine learning techniques. It provides an open-source Python package to ensure more accurate and continuous hydrological data.
  • Project Polly: A natural language processing interface to extract complex features from weather datacubes. The project developed a Natural Language Model (NLM) capable of extracting specific weather information from large datasets. It integrates with a chatbot to assist both technical and non-technical users in accessing complex weather data.
  • XAI for weather forecasting models. The project focused on analysing training phase data of AI weather forecasting models (PanguWeather and ECMWF’s Artificial Intelligence Forecasting System – AIFS). It explored input–output relationships for process-based analysis to improve forecasting accuracy.
  • ML-BEES: Using machine learning to emulate the Earth’s surface. This project evaluated and improved the performance of ECMWF's land surface ML model prototype by validating its accuracy and comparing its output to in‑situ observations. It developed an evaluation framework for land surface model emulators.
  • KGB-TruthGuiding: Knowledge graph generation for enhanced chatbot and scientific literature synthesis. The project built a knowledge graph from scientific documents to enhance Large Language Models (LLMs) and chatbots. It aimed to improve the ECMWF-assistant chatbot by providing more interactive, explainable and engaging responses.

Stream: Software development for Earth science applications

  • Optimising CDSAPI Datasets Retrieval: Advance user capabilities to handle data constraints when using CDSAPI. The project developed a mechanism to optimise data retrieval requests via the Climate Data Store API (CDSAPI). A key feature was to break down user requests into multiple valid sub-requests that adhere to data constraints.
  • CDSAPI Request Check. The second project on advancing user capabilities when using CDSAPI produced a Python library that validates CDSAPI data requests in advance, increasing the chances of successful data retrieval, reducing time, and minimising server costs.
  • AirQuality Urban View: Regional to urban air quality mapper. The project achieved downscaling regional air quality data to urban levels and visualising it through intuitive maps, providing precise air quality insights for European cities.

In 2024, the Final Event celebration took place at the end of September at ECMWF’s headquarters in Reading, UK. All teams showcased their projects and solutions. These innovative outcomes are available on GitHub (https://github.com/ECMWFCode4Earth) and may be incorporated into operational systems. The participants’ and mentors’ hard work and commitment played a key role in another successful Code for Earth edition.

A look to the future

Looking forward to 2025, the programme will keep evolving to address new challenges and partnerships. With rapid advancements and shifting user needs, Code for Earth will identify key opportunities and turn them into challenges for the 2025 edition. For more details and feedback, visit our website (https://codeforearth.ecmwf.int/) or contact us directly at codeforearth@ecmwf.int.