I’m Matt Layman.

I want to help you learn more about Django and Python.

  • #Python
  • #learn
  • #numbers
  • #operators
  • #Exercism

Learn Python By Example - Currency Exchange

Learn Python By Example shows a simple Python exercise from Exercism. This problem illustrates numbers in Python and how to use the built-in math operators. Since this is the first video in …

  • #Python
  • #Django
  • #SaaS
  • #Exercism
  • #runserver

Development Cached Templates - Building SaaS with Python and Django #150

In this episode, I ran through a Python exercise on Exercism that focused on strings. Then we moved onto the homeschool app and fixed an issue with templates that were cached during …

  • #Python
  • #Django
  • #SaaS
  • #PDFs
  • #CSS

Exercism and PDF Page Numbering - Building SaaS with Python and Django #149

In this episode, we started to work on Python learning problems on Exercism. Then I added page numbers to PDFs on my homeschool app.

  • #Python
  • #Django
  • #SaaS
  • #Sentry

How To Add Sentry - Building SaaS with Python and Django #148

In this episode, I switched my error management system from Rollbar to Sentry and walked through some of Sentry’s features.

  • #Django
  • #Python
  • #SaaS
  • #Heroku
  • #htmx

Heroku Stack Upgrade - Building SaaS with Python and Django #147

In this episode, I did some upgrades. We upgraded the app to the latest Heroku stack, upgraded htmx to the latest version, then worked on a small feature to add an empty state to a page when …

  • #Python
  • #Django
  • #files

Episode 17 - Accepting Files

Maybe your app needs to handle files from users like profile pictures. Accepting files from others is tricky to do safely. On this episode, we’ll see the tools that Django provides to …

  • #Django
  • #Python
  • #JavaScript
  • #FormData
  • #SaaS

JavaScript FormData - Building SaaS with Python and Django #146

In this episode, we finished off one of the dynamic features of my homeschool app that required working with some JavaScript. I showed off what I learned about some of my mistakes from the …

  • #Django
  • #Python
  • #SaaS

Customer Features - Building SaaS with Python and Django #145

In this episode, we picked up some customer features to improve the app. I knocked out the first feature pretty quickly. The second feature involved working with FormData in the DOM, which …

  • #Python
  • #Django
  • #SaaS

Delete Task UX - Building SaaS with Python and Django #144

In this episode, I worked on an issue to improve the user experience when deleting a task. The previous version forgot the user’s position in a task delete, and we updated the view so …

  • #Python
  • #Django
  • #SaaS

flake8-bugbear - Building SaaS with Python and Django #143

In this episode, I updated my app to use flake8-bugbear. I fixed the issues that popped up and talked about strategies to manage adding new tools.

  • #Django
  • #Python
  • #SaaS

Finish Teacher Checklist - Building SaaS with Python and Django #142

In this episode, we finished off the teacher checklist feature in the homeschool app. I tied together all the loose ends, checked the feature end to end, and wrote the unit tests to complete …

  • #Django
  • #Python
  • #SaaS

Teacher Checklist Editing - Building SaaS with Python and Django #141

In this episode, I returned to the teacher checklist feature and started work on the edit page that will allow users to customize what they see on the checklist.

  • #brain dump
  • #identity

Distributed System IDs

Somtimes it feels like everything is harder with a distributed system. This article looks at identifiers and how even your IDs might need some special design consideration for a distributed …

  • #brain dump
  • #development

Brute Force Development

Some tasks are laborious. With this article, I describe my attitude that I will apply on occasion to handle these tasks.

  • #brain dump
  • #systems

Huge Software Systems

How can you work with a huge software system? Wrangling a large software systems carries significant challenges. This article looks at some of the areas to consider.

  • #brain dump
  • #documentation

Finding Your Audience for Technical Docs

Picking the right audience for technical documentation requires you to think through what you want to communicate. This brain dump includes how I think about audiences.

  • #brain dump
  • #authz

Authz dilemmas

Why is authorization so hard? It’s hard from the start and doesn’t get easier as a software system grows.

  • #Python
  • #Django
  • #authorization

Announcing django-denied

Django has a new authorization option with django-denied. This new package makes authorization checks required for all of your views in your Django app.