Wagtail with Tom Dyson - Episode 58

Visit our site to sign up for the newsletter, explore past episodes, subscribe to the show, and help support our work.


If you are operating a website that needs to publish and manage content on a regular basis, a CMS (Content Management System) becomes the obvious choice for reducing your workload. There are a plethora of options available, but if you are looking for a solution that leverages the power of Python and exposes its flexibility then you should take a serious look at Wagtail. In this episode Tom Dyson explains how Wagtail came to be created, what sets it apart from other options, and when you should implement it for your projects.

Do you want to try out some of the tools and applications that you heard about on Podcast.__init__? Do you have a side project that you want to share with the world? With Linode’s managed Kubernetes platform it’s now even easier to get started with the latest in cloud technologies. With the combined power of the leading container orchestrator and the speed and reliability of Linode’s object storage, node balancers, block storage, and dedicated CPU or GPU instances, you’ve got everything you need to scale up. Go to pythonpodcast.com/linode today and get a $100 credit to launch a new cluster, run a server, upload some data, or… And don’t forget to thank them for being a long time supporter of Podcast.__init__!


One of the frustrating things about being a developer, is dealing with errors… (sigh)

  • Relying on users to report errors
  • Digging thru log files trying to debug issues
  • A million alerts flooding your inbox ruining your day…

With Rollbar’s full-stack error monitoring, you get the context, insights and control you need to find and fix bugs faster. It’s easy to get started tracking the errors and exceptions in your stack. You can start tracking production errors and deployments in 8 minutes – or less, and Rollbar works with all major languages and frameworks, including Ruby, Python, Javascript, PHP, Node, iOS, Android and more. You can integrate Rollbar into your existing workflow such as sending error alerts to Slack or Hipchat, or automatically create new issues in Github, JIRA, Pivotal Tracker etc.

We have a special offer for Podcast.__init__ listeners. Go to rollbar.com/podcastinit, signup, and get the Bootstrap Plan free for 90 days. That’s 300,000 errors tracked for free.
Loved by developers at awesome companies like Heroku, Twilio, Kayak, Instacart, Zendesk, Twitch and more. Help support Podcast.__init__ and give Rollbar a try today. Go to rollbar.com/podcastinit

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We also have a new sponsor this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we are interviewing Tom Dyson about Wagtail, a modern and sophisticated CMS for Django.

Interview with Tom Dyson

  • Introductions
  • How did you get introduced to Python? – Chris
  • Can you start by explaining what a content management system is and why they are useful? – Tobias
  • How did the Wagtail project get started and what makes it stand out from other comparable offerings? – Tobias
  • What made you choose Django as the basis for the project as opposed to another framework or language such as Pyramid, Flask, or Rails? – Tobias
  • What is your target user and are there any situations in which you would encourage someone to use a different CMS? – Tobias
  • Can you explain the software design approach that was taken with Wagtail and describe the challenges that have been overcome along the way? – Tobias
  • How did you approach the project in a way to make the CMS feel well integrated into the other apps in a given Django project so that it doesn’t feel like an afterthought? – Tobias
  • For someone who wants to get started with using Wagtail, what does that experience look like? – Tobias
  • What are some of the features that are unique to Wagtail? – Tobias
  • Given that Wagtail is such a flexible tool, what are some of the gotchas that people should watch out for as they are working on a new site? – Tobias
  • Does Wagtail have any built-in support for multi-tenancy? – Tobias
  • Does Wagtail have a plugin system to allow developers to create extensions to the base CMS? – Tobias
  • Having built such a sizable plugin with deep integrations to Django, what are some of the shortcomings in the framework that you would like to see improved? – Tobias

Keep In Touch



The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Liked it? Take a second to support Podcast.__init__ on Patreon!