A Generic, Config-Driven CDC Pipeline from MongoDB to ClickHouse

When you already have systems tracking their own state in MongoDB, you can turn that into a real-time stream of structured events without rewriting application logic. This approach captures every meaningful change from Mongo, tags it with relevant metadata, and makes it instantly queryable in ClickHouse — all through a generic, reusable pattern. The idea: One fixed event envelope for all sources Dynamic tags/attributes defined in config files No code changes when onboarding new collections 1. The Fixed Event Envelope Every CDC message has the same top-level structure, no matter what source system or collection it came from: ...

August 9, 2025 · 3 min · Ted Strall

First Things to Do After Capturing MongoDB Change Streams in ClickHouse

Once your MongoDB change streams are flowing through Kafka and landing in ClickHouse, you’ve got a live, queryable event history for every state change in your systems. The obvious next step: start using it immediately — even before you build full-blown dashboards or machine learning models. 1. Detect Missing or Late Events One of the fastest wins is catching when something doesn’t happen. If you know a collection normally sees certain events every day, you can query for absences: ...

August 9, 2025 · 3 min · Ted Strall

Build a Serverless Static Site on AWS in Minutes — with Adage

The fastest way to go live with infrastructure you actually understand What if you could deploy a secure, fast, fully serverless website on AWS using just a JSON config file — and know exactly how it works under the hood? That’s the idea behind Adage: A Configuration-Driven AWS Deployment Framework that separates your infrastructure, your config, and your application code into distinct, composable layers. In this guide, you’ll see how to go from zero to live in a few minutes using the serverless-site component — and how this approach gives you clarity, repeatability, and control without locking you into someone else’s boilerplate. ...

April 12, 2025 · 2 min · Ted Strall