Skip to main content

Posts

The Connector That Kept Retrying and Never Said So

3 min
A customer reported that their Kafka Connect MQ Sink connector looked completely healthy — no errors on the connector CR, no failed tasks — but no messages were reaching MQ. This had been going on for hours.

From Celery to Restate: Rethinking Async Tasks in Django

9 min
The Celery Question # For years, when someone asked “How do I handle background tasks in Django?”, the answer was almost always “Use Celery”. And for good reason. Celery is mature, battle-tested, and has solved async task processing for countless Django applications. It has extensive documentation, a large ecosystem of plugins, and most Django developers have at least some experience with it.
#Django #Celery #Restate #Python

Adding Durable Execution to Flask Applications with Restate

7 min
The Challenge of Reliable Background Operations # Building web applications with Flask is straightforward until you need to handle operations that can fail. Database operations timeout, external APIs become unavailable, and network connections drop. These failures are inevitable in production systems, yet handling them gracefully often requires significant engineering effort.
#Flask #Restate #Python #Durable Execution

Convert Your Django DRF Project to MCP in 5 Minutes

13 min
The Problem: When APIs Meet AI Assistants # A few weeks ago, I was experimenting with Model Context Protocol (MCP) for a Kafka integration project. The experience was eye-opening - being able to interact with complex systems through natural language felt like a glimpse into the future of development workflows.
#Django #MCP #AI #API