Aguaxaca

August 17, 2025

Hi there! Long time no see. Not that I expect to publish frequently these days. This is the pitch for a little open-source project that’s kept me busy a few evenings.

Some months ago, we moved back to the city of Oaxaca. We’ve lived in the countryside nearby for years, but it was soon very clear that “nearby” was actually pretty far when thousands of people try to use the same roads at the same time, to get to work or school, and public transport is shit.

I can’t fix that though, so we found a house 10 minutes from school, and stay in the city a good chunk of the year now. With that change, we became again dependent on the city’s water distribution network. Something with a pretty name like Sistema Operador de los Servicios de Agua Potable y Alcantarillado (de Oaxaca). Usually, they’re online here, but not all the time. 🥲

This public organization manages the water distribution network of the whole urban area of Oaxaca. For various socio-ecological reasons, water doesn’t run all the time in the city (or state) of Oaxaca. You’re expected to store whatever amount you receive monthly (-ish). There’s not enough water (or pressure) to distribute to everyone at the same time, so not all districts receive water on the same day. (You should not drink that water by the way.)

The distribution schedules are only advertised on X/Twitter, and Facebook. This is annoying, because the information is never really archived anywhere, and is published as JPEGs images (a workaround for text lengths limit, I guess). That’s not too friendly for visually impaired folks either. In Oaxaca, you do with what little resources you have.

I like to know when my home will receive water, and I’d also like to know when it did previously, to better manage my consumption. I don’t want to use Twitter/X, or Facebook though. I use them as little as possible, with a hazmat suit, and tears in my eyes.

So, that’s why I started this thing called Aguaxaca. It is an open-source project, that gathers water distribution schedules through a private Nitter instance. The images are parsed using a normal OCR an LLM, and the schedules are stored and published for all to see — in particular me, but I consider this a minor public service, not something that will turn a profit.

The goals are simple:

  1. archive this stuff,
  2. get notifications when it’s my turn (essential),
  3. get historical records and plot some stats (would be nice),
  4. compute the likely date of next delivery (would be extra nice).

I’m currently in “phase 1”, discovering the complete list of distribution sectors. The public data I scrape isn’t exactly great, or consistent, but with some genAI prompt magic, I should be able to turn this mess into a proper DB. That’s the plan anyway!

Also yes, the name… sucks, but it’s easy to remember if you know a few words of Spanish. If you got this far, thanks for reading.