Skip to content

Edits for Conservation metrics case study #967

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 25 additions & 15 deletions blog/2025-05-22-conservation-metrics-case-study/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,38 +17,38 @@ description: This is a testimonial from Rudo Kemper from Conservation Metrics ab

<br/>

This testimonial is based on conversations with [Rudo Kemper](https://www.linkedin.com/in/rudo-kemper/) from [Conservation Metrics](https://conservationmetrics.com/). Rudo is leading a program to build free and open-source software for data sovereignty for indigenous communities, in Brazil, Kenya or the Solomon Islands.
This testimonial is based on conversations with [Rudo Kemper](https://www.linkedin.com/in/rudo-kemper/) from [Conservation Metrics](https://conservationmetrics.com/). Rudo is leading a program to build free and open-source software for data sovereignty for indigenous communities, in Brazil, Kenya, the Solomon Islands, and elsewhere.

![Windmill Conservation Metrics](./blog_split_conservationmetrics.png)

## What before Windmill?

[Conservation Metrics](https://conservationmetrics.com/) works with indigenous communities worldwide to provide tools and systems for environmental monitoring and protection. Our team needed a workflow orchestrator that could handle data processing from various sources, particularly for monitoring illegal activities in protected territories.
[Conservation Metrics](https://conservationmetrics.com/) works with indigenous communities worldwide to provide tools and systems for environmental monitoring and protection. As part of our [Guardian Connector](https://guardianconnector.net) toolkit, our team needed a workflow orchestrator that could handle data processing from various sources, particularly for centralizing data from many different field data collection applications used by communities, and monitoring illegal activities in protected territories.

While evaluating different tools like [Dagster](https://dagster.io/), our primary focus was on accessibility and ease of use, as we needed a solution that could be managed by small teams and understood by non-technical users. We found that Dagster was too code-heavy and its UI wasn't optimal for our use case. We were actually in the process of building our own user interface on top of Dagster to make it easier when we discovered Windmill. With about 40 issues in our repo related to fighting against Dagster's framework, we realized we needed a simpler solution that would let us focus on our core mission rather than framework configuration.
While evaluating different tools like [Dagster](https://dagster.io/), our primary focus was on accessibility and ease of use, as we needed a solution that could be managed by small teams and understood by non-technical users. We found that Dagster was too code-heavy and its UI wasn't optimal for our use case. We were actually in the process of building our own user interface on top of Dagster to make it easier when we discovered Windmill. With about 20 issues in our repo related to fighting against Dagster's framework, we realized we needed a simpler solution that would let us focus on our core mission rather than framework configuration.

## How we use Windmill

Our team leverages Windmill for several critical workflows:

### Environmental monitoring pipeline

Our core workflow integrates with the [Global Forest Watch API](https://www.globalforestwatch.org/) to monitor changes in forest cover. When potential illegal activities are detected, our system automatically:
- Processes the alert data
Our core environmental monitoring workflow integrates with data provided by the Brazilian research institute [Imazon](https://imazon.org.br/en/) or [Global Forest Watch](https://www.globalforestwatch.org/) to monitor changes in forest cover. When potential illegal activities are detected, our system automatically:
- Processes the alert data (including conversion of GeoTIFF images to JPEG for browsing rendering)
- Triggers WhatsApp notifications to local communities
- Posts the alerts to a [CoMapeo](https://www.comapeo.app/) API for offline data collection
- Updates monitoring dashboards
- Logs the events for further analysis

This pipeline has been successfully implemented with community partners in South America, Kenya, or the Solomon Islands.
This pipeline has been successfully implemented with community partners in Brazil, Suriname, and the Solomon Islands.

### Data processing and integration

We use Windmill for various [ETL](/docs/core_concepts/data_pipelines) workflows:
- Extracting data from multiple environmental monitoring sources
- Transforming and processing the data (including converting TIFF images to JPEG for browser rendering)
- Extracting tabular and binary data from multiple environmental monitoring and field data collection sources (such as [KoboToolbox](https://www.kobotoolbox.org/), [ODK](https://getodk.org/), and [CoMapeo](https://www.comapeo.app/))
- Transforming and processing the data
- Loading results into our databases
- Generating automated reports and alerts
- Posting data to [KOBO](https://www.kobotoolbox.org/) API for offline data collection by indigenous communities

All our scripts are open-source and available in our [GitHub repository](https://github.com/ConservationMetrics/gc-scripts-hub), making it easy for other organizations to adopt similar solutions.

Expand All @@ -60,13 +60,23 @@ All our scripts are open-source and available in our [GitHub repository](https:/

Windmill has enabled us to create tangible impact in protecting indigenous territories:

### Combating illegal gold mining
### Combating encroaching gold mining in the Amazon rainforest

Our system runs every hour to detect new alerts about illegal gold mining activities within indigenous territory. When detected, the system provides before/after images and coordinates of the activity. The automated notifications enable rapid response from local authorities and law enforcement. This quick response is crucial as illegal mining often involves mercury, which can contaminate waterways and cause long-term environmental damage.
Our system runs daily to detect new alerts about gold mining activities within indigenous territory. When detected, the system provides before/after images and coordinates of the activity. It also integrates field data from tools like CoMapeo, allowing teams to cross-reference remote sensing with ground observations. The automated notifications enable rapid response from local teams, who may alert authorities and law enforcement. This quick response is crucial as small-scale illegal mining often involves mercury, which can contaminate waterways and cause long-term environmental damage.

> _"In 2022, during a mapping expedition, we discovered an illegal mining site inside of one of the Indigenous territories. When we returned from the expedition and investigated the site using satellite imagery, we found out that the mining activity had actually been ongoing for a year already! Now, with this new alerts system, we will be able to know about it within a matter of days or weeks, inform the communities, and alert the authorities to take action. This is an invaluable boost to our ongoing monitoring efforts to keep the region safe from land invasions."_ — one of our partners in Brazil.

### Solomon Islands: preventing illegal logging

In the Solomon Islands, our Windmill-powered monitoring system helped detect and stop illegal logging operations, demonstrating the effectiveness of automated environmental monitoring. The system has become a national-level methodology for monitoring alerts, recognized by the [ministry of the environment](https://solomons.gov.sb/ministry-of-environment-climate-change-disaster-management-and-meteorology/).
In the Solomon Islands, our Windmill-powered monitoring system helped detect and stop logging operations above 400m in elevation — areas that often overlap with Indigenous community lands and were [deemed illegal under the 2018 Sky Islands pledge](https://www.solomonstarnews.com/pm-signs-gov-t-pledge-to-ban-logging-mining/). Having demonstrated the effectiveness of automated environmental monitoring, the system is becoming a national-level methodology for monitoring alerts and has [been received positively by the ministry of the environment](https://mai-maasina.org/change-detection-presentation-to-the-ministry-of-environment/).

![Presentation of alerts dashboard for the Solomons ministry of the environment workspace](./solomons.jpg "Presentation of alerts dashboard for the Solomons ministry of the environment")

> Presentation of alerts dashboard for the Solomons ministry of the environment. [[source](https://mai-maasina.org/change-detection-presentation-to-the-ministry-of-environment/)]

### Real-time dashboards for community-led monitoring

Before Windmill, many of our Indigenous community partners relied on paper-based methods or apps that required manual processing, often taking weeks or months to generate useful insights. Now, we’ve built end-to-end workflows where users collect data or complete surveys in the field, and Windmill automatically retrieves that information every hour. When users open their dashboards, the latest data is ready for the entire village to review that same evening. Already, this has been a game changer for how these community organizations track impact and make decisions.

## Why we chose Windmill

Expand All @@ -80,14 +90,14 @@ Several key factors made Windmill the right choice for our organization:
- **Portability**: The ability to run raw Python scripts without special formatting means we can easily port our code to other frameworks if needed
- **Low learning curve**: New contributors can quickly understand and work with our codebase without needing to learn a specific framework

## The power of automation for non-profits
## The power of automation for small teams

What makes Windmill particularly valuable for non-profit organizations like ours is its ability to replace multiple roles that would typically require dedicated staff:
What makes Windmill particularly valuable for mission-driven organizations like ours is its ability to replace multiple roles that would typically require dedicated staff:

- **Frontend development**: The built-in UI generation capabilities eliminate the need for frontend developers
- **Server administration**: Simple deployment and management through [Docker](/docs/advanced/self_host#docker)
- **Workflow orchestration**: Intuitive interface for managing complex data pipelines
- **User management**: [Role-based access control](/docs/core_concepts/roles_and_permissions) for different user types
- **Frontend development**: The built-in UI generation capabilities eliminate the need for separate frontend applications

This has allowed our small team to focus on our core mission of supporting indigenous communities rather than managing complex technical infrastructure.

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading