WasteWatch — Building a Geospatial Decision Support System for Blantyre's Waste Crisis
Jimmy MatewereWe had three weeks and no idea what to build.
The brief at ADDA CDDT-2 was open: drone project, data project, or both. Six of us, a tight deadline, and the first few ideas going nowhere. We landed on using drone imagery to identify illegal waste heaps in Limbe, train a model on that imagery, and build a map of dump sites with recommended collection points. It was ambitious. It was also going to fall apart on the data side, and we knew it before we really started. Aerial imagery of waste heaps, labeled and clean enough to train a model on, was not something we were going to acquire and process in three weeks.
I had already started building a Streamlit dashboard with placeholder data, partly to give the team something to see, partly because I wanted to figure out the shape of the thing before the data existed. When it became clear the original project was stalling, I was already looking for a way to keep going.
The pivot came from a conversation with a cohort member who had been part of the Mvula et al. research, a peer-reviewed study mapping 333 illegal dump sites across all 21 wards of Blantyre, GPS coordinates accurate to within 3 meters, waste composition, proximity to waterways, volume estimates. When he walked me through what the dataset contained I asked if I could use it. He said yes. I opened the attribute table in ArcGIS Pro and that was it. The original project idea was gone. This was better.
The research had produced a static map. My question was what happens if you make it dynamic, add a risk scoring engine, and let a field officer open it on a phone and know in under five seconds where to go first.
The risk scoring weighted health factors at 50%, environmental factors at 40%, and volume at 10%. Sites above 80 are critical. Above 60, high. The weights are defensible for a public health context but they were also judgment calls, not derived from stakeholder input or literature. That's worth naming.
DBSCAN for the skip placement recommendations was a coincidence more than a deliberate choice. I was reading about cluster analysis for point data and it made sense for the problem: identify zones where multiple dump sites concentrate within 150 meters of each other, place a recommended skip at the centroid. The approach had a limitation: a centroid recommendation in a dense urban area might land on top of a shop, or somewhere a skip physically cannot go. I settled on it knowing that tradeoff. The goal was to give planners a starting point that was better than nothing, not a production-ready infrastructure tool.
I rebuilt the frontend in Next.js before the project was finished. The Streamlit version worked but the UI wasn't good enough, same reasons I would later rebuild the climate risk dashboard. By the time we presented, the dashboard was live.
The presentation was the best part of the whole project. Each team member owned two or three slides, we practiced, and at the end we demoed the dashboard live. Our presentation was arguably the strongest of the eight groups.
333 dump sites mapped, risk scored, clustered, and exportable as CSV for any ward that wants to act on the recommendations.
Continue the Conversation
I welcome peer perspectives and questions regarding any of the topics discussed.



