CAChukwuemeka Aladimmainblog.acel.dev·Jul 23 · 7 min readFrom O(N³) to O(1): Scaling M2M Validation in DjangoAdding a few cities to a delivery zone is instant. Adding 5,000 cities ran over 5,000 database round-trips and regularly timed out the request. The root causes were two common Django patterns that don10
CAChukwuemeka Aladimmainblog.acel.dev·Jul 13 · 7 min readIt Worked on Every Environment Except Prod: Getting Daily Reports Right Across TimezonesEvery day, a report runs: "what did each store sell yesterday?" One of the stores is in Lagos, the other in London. The report showed both stores as having zero sales for the last two hours of the day00
CAChukwuemeka Aladimmainblog.acel.dev·Jul 6 · 8 min readHow to Prefetch Across GenericForeignKeys When You Can't Change the SchemaYou don't always control the schema you work with. Sometimes you inherit a codebase where GenericForeignKey is threaded through the models, and a migration isn't on the table. Loading a page of 20 aud00
CAChukwuemeka Aladimmainblog.acel.dev·Jun 30 · 9 min readHow I Moved Real-Time Out of Django (and Made Everything Simpler)Your users want live updates: an order flips to paid, a notification pops, a dashboard number ticks up without a refresh. The obvious answer in Django is Channels. I reached for it first too. But as o00
CAChukwuemeka Aladimmainblog.acel.dev·Jun 15 · 7 min readHow I Built a "Set It and Forget It" Sync System with Django SignalsChange a product's price anywhere in your app, and it instantly syncs to a third-party marketplace. No manual triggers, no polling, no fragile save() overrides. Here's the signal pattern that powers i00