From the blog

Thinking out loud.

Practical writing on Python, Django, Wagtail, and the craft of building web software. No fluff — these are things we've actually built and lessons we've actually learnt.

Filter:
CMS

Wagtail vs WordPress in 2026: A Developer's Honest Take

After a decade of building with both, here's our unvarnished comparison — content modelling, security, editorial UX, and where each platform genuinely excels.

Tutorial

Building a Headless CMS with Wagtail and Next.js

A practical walkthrough: Wagtail API setup, page serialization, image renditions, preview mode, and ISR — with real code you can copy.

Django

Django in Production: 10 Optimisations That Actually Matter

From N+1 queries to Redis caching and Celery offloading — the specific patterns we apply to every Django app before it ships.

Wagtail

Wagtail StreamField: Advanced Patterns We Use on Every Project

StructBlock nesting, custom chooser blocks, block-level validation, and the StreamField patterns that separate beginner Wagtail builds from production ones.

Django

Testing Django Applications the Way We Actually Do It

Factory Boy over fixtures, pytest over unittest, transaction isolation, and how we write tests that catch real bugs rather than just satisfying coverage thresholds.

Wagtail

Wagtail for Editors: The Features They Never Told You About

Snippet choosers, bulk publish, scheduled publishing, comparison views, and all the Wagtail editor features that most builds never surface. Your editorial team will thank you.

Stay in the loop

Got a project to discuss?

We publish a handful of articles a month. Or skip straight to talking — we're always happy to chat Python, Django, and Wagtail.