Skip to content
Go back

Co-organizing and speaking at the Chennai Kafka meetup

Published:
4 min read

I spoke at the Apache Kafka Chennai meetup at Facilio this weekend. Ena Koide, Sai Krishna, and I co-organized it. A few people have reached out wanting to volunteer, so the co-organizer list might be longer the next time I write about one of these!!

My talk was “Declare State, Not Messages”. The idea was simple. Changing files and messy knowledge sources (docs, repos, wikis, PDFs) can become ordinary keyed Kafka records without making every downstream consumer rebuild its own integration logic. Instead of writing producer code that decides every send (send this row again, skip that one, emit a delete, re-emit everything after a restart), you describe what each key in the topic should contain, and CocoIndex emits only the upserts, tombstones, and no-ops needed to reconcile.

I kept the demo small. A few CSV rows changed locally, CocoIndex noticed the difference, and Kafka received only what changed. That was the point. You can find my slides here.

I proposed the talk because I contribute to CocoIndex and the project recently shipped a Kafka connector (the last time I spoke about CocoIndex was at Rust Delhi earlier this year). That made the meetup a good place to explain the connector through the problem it solves rather than through implementation details. My one-line version of the talk was to declare what each key should contain, let CocoIndex reconcile the difference, and let Kafka fan it out.

The other speaker was Mani Selvan K, who spoke about stream processing fundamentals with Apache Flink; Flink SQL, Kafka integration, state management, and real-time pipeline design. The room took to it (his session ran a little long on time, and we had to wrap fast to make it to lunch, so a few people wished he’d gotten to the last few Flink slides). He also posted a short note about the meetup that captured the day well, and his Flink 101 slides are on GitHub.

Presenting to a room that knows Kafka well meant the questions got specific fast, and that’s most of what I come to these for.

Get updates on what I'm building, learning, and writing about.

Thoughts on notebooks, dev tools, and building stuff with open-source communities.


Edit on GitHub