Brought to you by Michael and Brian - take a Talk Python course or get Brian's pytest book

#414: Because we are not monsters

Published Mon, Dec 16, 2024, recorded Mon, Dec 16, 2024
Watch this episode on YouTube
Play on YouTube
Watch the live stream replay

About the show

Sponsored by us! Support our work through:

Connect with the hosts

Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.

Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.

Brian #1: New project to shorten django-admin to django because we are not monsters

  • Jeff Tripplet has created django-cli-no-admin to shorten django-admin to just django.
  • “One of the biggest mysteries in Django is why I have to run django-admin from my terminal instead of just running django. Confusingly, django-admin has nothing to do with Django’s admin app.”
  • Instead of typing things like: django-admin startproject mysite projectname
  • We can type the shorter: django startproject mysite projectname
  • I love this kind of developer speedup / comfort improvements
  • And yes, Jeff wants Django to eventually include this as the default way to run the command line utilities.

Michael #2: django-unicorn: The magical reactive component framework for Django sparkles

  • Add modern site functionality: Quickly add in simple interactions to regular Django templates without learning a new templating language.
  • Skip the JavaScript build tools
  • No API required: Skip creating a bunch of serializers and just use Django.

Brian #3: Testing some tidbits

  • Ned Batchelder
  • Different ways to test to see if a string has only 0 or 1 in it.
  • And also, a way to check all the different ways to make sure they work.
  • Fun post, and I learned about
    • cleandoc - a way to strip leading blank space and maintain code block indentation
      • I usually use textwrap.dedent()
    • partition - splitting strings based on a substring
    • Using | to pass imports to eval() - I don't use eval much.
  • However, no pytest!
  • Here’s a way to check all this with pytest:

Michael #4: The State of Python 2024 article

  1. Python usage with other languages drops as general adoption grows
  2. 41% of Python developers have under 2 years of experience
  3. Python learning expands through diverse channels
  4. The Python 2 vs. 3 divide is in the distant past
  5. Flask, Django, and FastAPI remain top Python web frameworks
  6. Most Python web apps run on hyperscale clouds
  7. Containers over VMs over hardware
  8. uv takes Python packaging by storm

Extras

Brian:

Michael:

Joke:


Want to go deeper? Check our projects