Django Tasks - Jake Howard
Get the full intelligence
Search transcripts, export clips, track mentions, and explore all topics from “Django Tasks - Jake Howard” inside PodZeus.
In this episode of Django Chat, host Will welcomes Jake Howard, a senior systems engineer at Torchbox and key contributor to the Wagtail CMS, who has emerged as a central figure in the Django ecosystem. The conversation dives deep into Jake's creation of Django Tasks, a unified API layer for background task execution that abstracts over existing backends like Celery and RQ. Jake recounts how the idea originated in Wagtail’s need to decouple background processing from specific queue systems, leading to a broader proposal that eventually became part of Django 6.0. He emphasizes the importance of designing for real-world use, avoiding over-engineering, and prioritizing maintainability and security—especially through the deliberate exclusion of pickle serialization in favor of JSON. The discussion also covers Jake’s role on the Django Security Team, where he shares insights into the challenges of triaging security reports, the growing impact of AI-generated noise, and the delicate balance between urgency and discretion in high-severity vulnerabilities. Jake also introduces his new project, Django Mantle, a type-safe layer over Django’s ORM that enables modern Python typing patterns while preserving Django’s dynamic nature. He concludes with a provocative 'magic wand' take advocating for Django to become less allergic to trusted third-party dependencies to reduce code bloat and improve maintainability. Key takeaways include: (1) Django Tasks provides a unified, backend-agnostic API for background tasks, making it easier for packages and developers to adopt without locking into one queue system; (2) The decision to avoid pickle serialization in favor of JSON is a deliberate security and reliability choice that prevents common pitfalls like stale data and cross-machine failures; (3) Django’s success relies on real-world problems—like those in Wagtail—driving innovation, not academic abstraction; (4) The Django Security Team faces increasing volume and noise, especially from AI-generated reports, requiring careful triage and community discipline; (5) Projects like Django Mantle show how modern Python patterns (e.g., dataclasses, type safety) can be safely layered on top of Django’s dynamic core without sacrificing performance or flexibility.
Django Tasks provides a unified, backend-agnostic API for background tasks, enabling package maintainers to support Celery, RQ, and other systems through a single interface.
The decision to use JSON serialization instead of pickle prevents common issues like stale data, cross-machine failures, and security vulnerabilities.
Real-world needs from projects like Wagtail often drive major Django innovations, demonstrating the power of solving practical problems over theoretical design.
The Django Security Team faces growing challenges from AI-generated noise and low-quality reports, requiring careful triage and community standards.
Projects like Django Mantle show how modern Python typing and dataclass patterns can be safely layered on top of Django’s dynamic ORM for better maintainability.
Introduction and Guest Welcome
Will introduces the episode and welcomes Jake Howard, a senior systems engineer at Torchbox and key contributor to Wagtail and Django, setting the stage for a deep dive into his recent work.
The Birth of Django Tasks
“It's not just that if you go to Google and type in Django background tasks, you can get a thousand options. We would discuss this every six months... and there'd be a different option for every single Django developer.”
From Wagtail to Django: The Evolution of a Proposal
“Without that one piece of insight, none of this would happen. What Wagtail would have done is gone, we're going to make our own thing... but it doesn't progress the ecosystem quite as much.”
Design Philosophy and the Role of Abstraction
“If you move company and go from using RQ to Celery or vice versa, you don't need to relearn all the different APIs. You go at task and it kind of does the rest.”
The Road to Django 6.0: Core vs. Backends
Jake clarifies the current architecture of Django Tasks: the core API and dev backends are now in Django 6.0, while production backends (like database and RQ) are separate packages to support older Django versions.
“I don't think that's good. I think... I don't know if I'd go as far as to say bad, but I think if we were less allergic to things, some things could be made a lot better.”
“Without that one piece of insight, none of this would happen. What Wagtail would have done is gone, we're going to make our own thing... but it doesn't progress the ecosystem quite as much.”
“It's not just that if you go to Google and type in Django background tasks, you can get a thousand options. We would discuss this every six months... and there'd be a different option for every single Django developer.”
Host
Guest
Jake Howard
person
Django
other
Django Tasks
other
Carlton Gibson
person
Wagtail
other
Django Software Foundation
organization
Celery
other
RQ
other
Django Mantle
other
Torchbox
organization
Get the full intelligence
Search transcripts, export clips, track mentions, and explore all topics from “Django Tasks - Jake Howard” inside PodZeus.
Start discovering podcast insights today
Start with a 7-day trial and explore a growing catalog of popular podcasts. No credit card required.
No credit card required • 7-day trial • Cancel anytime
