What changes are happening under the hood in the latest versions of Python? How are these updates laying the groundwork for a faster Python in the coming years? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.
Christopher shares an article about Python’s recent performance improvements. The piece covers the specialized adaptive interpreter and explains what those terms mean. It also includes details about the experimental feature of the Just-In-Time (JIT) compiler added in 3.13.
We dig into a collection of Django projects you can use to practice and develop your skills. The projects ramp up from detailed beginner tutorials to more advanced projects with guidelines on how to get started. We also discuss a collection of popular websites that use Django.
We share several other articles and projects from the Python community, including a batch of recent Python Enhancement Protocols (PEPs), a couple of Python releases, using DuckDB in the browser with Pyodide, building a contact book app with Textual, generating a tiny status page with a Python script, and a grep-like tool that understands code.
This episode is sponsored by AssemblyAI.
Course Spotlight: Building a Site Connectivity Checker
In this video course, you’ll build a Python site connectivity checker for the command line. While building this app, you’ll integrate knowledge related to making HTTP requests with standard-library tools, creating command-line interfaces, and managing concurrency with asyncio and aiohttp.
00:00:00 – Introduction00:03:11 – PEP 777: How to Re-Invent the Wheel00:04:22 – PEP 758: Allow except and except* Expressions Without Parentheses00:04:51 – PEP 760: No More Bare Excepts (Withdrawn)00:05:42 – PEP 735: Dependency Groups in pyproject.toml00:06:29 – PEP 761: Deprecating PGP Signatures for CPython Artifacts00:06:59 – Python 3.12.7 Released00:07:12 – Incremental GC and Pushing Back the 3.13.0 Release00:09:10 – DuckDB in the Browser With Pyodide00:15:35 – Sponsor: AssemblyAI00:16:18 – Build a Contact Book App With Python, Textual, and SQLite00:21:55 – Django Project Ideas00:28:42 – Video Course Spotlight00:30:00 – In the Making of Python Fitter and Faster00:35:13 – tinystatus: Tiny Status Page Generated by a Python Script00:38:06 – srgn: Grep-Like Tool That Understands Code00:42:01 – Thanks and goodbyePEP 777: How to Re-Invent the Wheel – “The current wheel 1.0 specification was written over a decade ago, and has been extremely robust to changes in the Python packaging ecosystem… this PEP prescribes compatibility requirements on future wheel revisions.”PEP 758: Allow except and except* Expressions Without Parentheses – “This PEP proposes to allow unparenthesized except and except* blocks in Python’s exception handling syntax. Currently, when catching multiple exceptions, parentheses are required around the exception types.”PEP 760: No More Bare Excepts (Withdrawn)PEP 735: Dependency Groups in pyproject.toml (Accepted)PEP 761: Deprecating PGP Signatures for CPython Artifacts – Since Python 3.11.0, CPython has provided two verifiable digital signatures for all CPython artifacts: PGP and sigstore. This PEP proposes moving to sigstore as the only way of signing artifacts.Python 3.12.7 ReleasedPython 3.13.0 ReleasedIncremental GC and Pushing Back the 3.13.0 Release – Some last minute performance considerations delayed the release of Python 3.13 with one of the features being backed out.DuckDB in the Browser With Pyodide – Learn how to run DuckDB in an in-browser Python environment to enable simple querying on remote files, interactive documentation, and easy to use training materials.Build a Contact Book App With Python, Textual, and SQLite – In this tutorial, you’ll be guided step by step through the process of building a basic contact book application. You’ll use Python and Textual to build the application’s text-based user interface (TUI), and then use SQLite to manage the database.Django Project Ideas – Looking to experiment or build your portfolio? Discover creative Django project ideas for all skill levels, from beginner apps to advanced full-stack projects.In the Making of Python Fitter and Faster – This post details how Python’s recent performance improvements work under the hood. It covers changes to the interpreter, better memory management, and the newly experimental JIT compiler.tinystatus: Tiny Status Page Generated by a Python Scriptsrgn: Grep-Like Tool That Understands CodeWhat Are Python Wheels and Why Should You Care? – Real PythonDeploy your first JupyterLite website on GitHub Pages — JupyterLite 0.4.3 documentationrich: Python library for rich text and beautiful formatting in the terminalThe 10 Most Popular Websites Using DjangoDjango in ActionDjango and htmx Tutorial: Easier Web Development - YouTubeBuild a Site Connectivity Checker in Python – Real PythonRefactoring Python with 🌳 Tree-sitter & Jedi | Jack’s blogLevel up your Python skills with our expert-led courses:
How to Set Up a Django ProjectBuilding a Site Connectivity CheckerBuilding Command Line Interfaces With argparse Support the podcast & join our community of Pythonistas