Episodes

  • #506: ty: Astral's New Type Checker (Formerly Red-Knot)
    May 19 2025
    The folks over at Astral have made some big-time impacts in the Python space with uv and ruff. They are back with another amazing project named ty. You may have known it as Red-Knot. But it's coming up on release time for the first version and with the release it comes with a new official name: ty. We have Charlie Marsh and Carl Meyer on the show to tell us all about this new project. Episode sponsors Posit Auth0 Talk Python Courses Links from the show Talk Python's Rock Solid Python: Type Hints & Modern Tools (Pydantic, FastAPI, and More) Course: training.talkpython.fm Charlie Marsh on Twitter: @charliermarsh Charlie Marsh on Mastodon: @charliermarsh Carl Meyer: @carljm ty on Github: github.com/astral-sh/ty A Very Early Play with Astral’s Red Knot Static Type Checker: app.daily.dev Will Red Knot be a drop-in replacement for mypy or pyright?: github.com Hacker News Announcement: news.ycombinator.com Early Explorations of Astral’s Red Knot Type Checker: pydevtools.com Astral's Blog: astral.sh Rust Analyzer Salsa Docs: docs.rs Ruff Open Issues (label: red-knot): github.com Ruff Types: types.ruff.rs Ruff Docs (Astral): docs.astral.sh uv Repository: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to Talk Python on YouTube: youtube.com Talk Python on Bluesky: @talkpython.fm at bsky.app Talk Python on Mastodon: talkpython Michael on Bluesky: @mkennedy.codes at bsky.app Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 4 mins
  • #505: t-strings in Python (PEP 750)
    May 13 2025
    Python has many string formatting styles which have been added to the language over the years. Early Python used the % operator to injected formatted values into strings. And we have string.format() which offers several powerful styles. Both were verbose and indirect, so f-strings were added in Python 3.6. But these f-strings lacked security features (think little bobby tables) and they manifested as fully-formed strings to runtime code. Today we talk about the next evolution of Python string formatting for advanced use-cases (SQL, HTML, DSLs, etc): t-strings. We have Paul Everitt, David Peck, and Jim Baker on the show to introduce this upcoming new language feature. Episode sponsors Posit Auth0 Talk Python Courses Links from the show Guests: Paul on X: @paulweveritt Paul on Mastodon: @pauleveritt@fosstodon.org Dave Peck on Github: github.com Jim Baker: github.com PEP 750 – Template Strings: peps.python.org PEP 750: Tag Strings For Writing Domain-Specific Languages: discuss.python.org How To Teach This: peps.python.org PEP 501 – General purpose template literal strings: peps.python.org Python's new t-strings: davepeck.org PyFormat: Using % and .format() for great good!: pyformat.info flynt: A tool to automatically convert old string literal formatting to f-strings: github.com Examples of using t-strings as defined in PEP 750: github.com htm.py issue: github.com Exploits of a Mom: xkcd.com pyparsing: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to Talk Python on YouTube: youtube.com Talk Python on Bluesky: @talkpython.fm at bsky.app Talk Python on Mastodon: talkpython Michael on Bluesky: @mkennedy.codes at bsky.app Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 12 mins
  • #504: Developer Trends in 2025
    May 5 2025
    What trends and technologies should you be paying attention to today? Are there hot new database servers you should check out? Or will that just be a flash in the pan? I love these forward looking episodes and this one is super fun. I've put together an amazing panel: Gina Häußge, Ines Montani, Richard Campbell, and Calvin Hendryx-Parker. We dive into the recent Stack Overflow Developer survey results as a sounding board for our thoughts on rising and falling trends in the Python and broader developer space. Episode sponsors NordLayer Auth0 Talk Python Courses Links from the show The Stack Overflow Survey Results: survey.stackoverflow.co/2024 Panelists Gina Häußge: chaos.social/@foosel Ines Montani: ines.io Richard Campbell: about.me/richard.campbell Calvin Hendryx-Parker: github.com/calvinhp Explosion: explosion.ai spaCy: spacy.io OctoPrint: octoprint.org .NET Rocks: dotnetrocks.com Six Feet Up: sixfeetup.com Stack Overflow: stackoverflow.com Python.org: python.org GitHub Copilot: github.com OpenAI ChatGPT: chat.openai.com Claude: anthropic.com LM Studio: lmstudio.ai Hetzner: hetzner.com Docker: docker.com Aider Chat: github.com Codename Goose AI: block.github.io/goose/ IndyPy: indypy.org OctoPrint Community Forum: community.octoprint.org spaCy GitHub: github.com Hugging Face: huggingface.co Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to Talk Python on YouTube: youtube.com Talk Python on Bluesky: @talkpython.fm at bsky.app Talk Python on Mastodon: talkpython Michael on Bluesky: @mkennedy.codes at bsky.app Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 10 mins
  • #503: The PyArrow Revolution
    Apr 28 2025
    Pandas is at a the core of virtually all data science done in Python, that is virtually all data science. Since it's beginning, Pandas has been based upon numpy. But changes are afoot to update those internals and you can now optionally use PyArrow. PyArrow comes with a ton of benefits including it's columnar format which makes answering analytical questions faster, support for a range of high performance file formats, inter-machine data streaming, faster file IO and more. Reuven Lerner is here to give us the low-down on the PyArrow revolution. Episode sponsors NordLayer Auth0 Talk Python Courses Links from the show Reuven: github.com/reuven Apache Arrow: github.com Parquet: parquet.apache.org Feather format: arrow.apache.org Python Workout Book (45% off with code talkpython45): manning.com Pandas Workout Book (45% off with code talkpython45): manning.com Pandas: pandas.pydata.org PyArrow CSV docs: arrow.apache.org Future string inference in Pandas: pandas.pydata.org Pandas NA/nullable dtypes: pandas.pydata.org Pandas `.iloc` indexing: pandas.pydata.org DuckDB: duckdb.org Pandas user guide: pandas.pydata.org Pandas GitHub issues: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to Talk Python on YouTube: youtube.com Talk Python on Bluesky: @talkpython.fm at bsky.app Talk Python on Mastodon: talkpython Michael on Bluesky: @mkennedy.codes at bsky.app Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 9 mins
  • #502: Django Ledger: Accounting with Python
    Apr 21 2025
    Do you or your company need accounting software? Well, there are plenty of SaaS products out there that you can give your data to. but maybe you also really like Django and would rather have a foundation to build your own accounting system exactly as you need for your company or your product. On this episode, we're diving into Django Ledger, created by Miguel Sanda, which can do just that.

    Episode sponsors

    Auth0
    Talk Python Courses

    Links from the show Miguel Sanda on Twitter: @elarroba
    Miguel on Mastodon: @elarroba@fosstodon.org
    Miguel on GitHub: github.com

    Django Ledger on Github: github.com
    Django Ledger Discord: discord.gg

    Get Started with Django MongoDB Backend: mongodb.com
    Wagtail CMS: wagtail.org
    Watch this episode on YouTube: youtube.com
    Episode transcripts: talkpython.fm

    --- Stay in touch with us ---
    Subscribe to Talk Python on YouTube: youtube.com
    Talk Python on Bluesky: @talkpython.fm at bsky.app
    Talk Python on Mastodon: talkpython
    Michael on Bluesky: @mkennedy.codes at bsky.app
    Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 4 mins
  • #501: Marimo - Reactive Notebooks for Python
    Apr 14 2025
    Have you ever spent an afternoon wrestling with a Jupyter notebook, hoping that you ran the cells in just the right order, only to realize your outputs were completely out of sync? Today's guest has a fresh take on solving that exact problem. Akshay Agrawal is here to introduce Marimo, a reactive Python notebook that ensures your code and outputs always stay in lockstep. And that's just the start! We'll also dig into Akshay's background at Google Brain and Stanford, what it's like to work on the cutting edge of AI, and how Marimo is uniting the best of data science exploration and real software engineering.

    Episode sponsors

    Worth Search
    Talk Python Courses

    Links from the show Akshay Agrawal: akshayagrawal.com
    YouTube: youtube.com
    Source: github.com
    Docs: marimo.io
    Marimo: marimo.io
    Discord: marimo.io
    WASM playground: marimo.new
    Experimental generate notebooks with AI: marimo.app
    Pluto.jl: plutojl.org
    Observable JS: observablehq.com
    Watch this episode on YouTube: youtube.com
    Episode transcripts: talkpython.fm

    --- Stay in touch with us ---
    Subscribe to Talk Python on YouTube: youtube.com
    Talk Python on Bluesky: @talkpython.fm at bsky.app
    Talk Python on Mastodon: talkpython
    Michael on Bluesky: @mkennedy.codes at bsky.app
    Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 1 min
  • #500: Django Simple Deploy and other DevOps Things
    Apr 10 2025
    We're sitting down with Eric Matthes, the educator, author, and developer behind Django Simple Deploy. If you've ever struggled with taking that final step of getting your Django app onto a live server (without spending days wrestling with DevOps complexities), then give Django Simple Deploy a look. Eric shares how Django Simple Deploy automates away the boilerplate parts of deployment, so you can focus on building features instead of deciphering endless configs. We'll talk about this new project's journey to 1.0, the range of hosting platforms it supports, and why it's not just for beginners.

    Episode sponsors

    Worth Search
    Talk Python Courses

    Links from the show django-simple-deploy documentation: readthedocs.io
    django-simple-deploy repository: github.com
    Python Crash Course book: ehmatthes.github.io
    Code Red: codered.cloud
    Docker: docker.com
    Caddy: caddyserver.com
    Bunny.net CDN: bunny.net
    Platform.sh: platform.sh
    fly.io: fly.io
    Heroku: heroku.com
    Watch this episode on YouTube: youtube.com
    Episode transcripts: talkpython.fm

    --- Stay in touch with us ---
    Subscribe to Talk Python on YouTube: youtube.com
    Talk Python on Bluesky: @talkpython.fm at bsky.app
    Talk Python on Mastodon: talkpython
    Michael on Bluesky: @mkennedy.codes at bsky.app
    Michael on Mastodon: mkennedy
    Show more Show less
    58 mins
  • #499: BeeWare and the State of Python on Mobile
    Mar 31 2025
    This episode is all about Beeware, the project that working towards true native apps built on Python, especially for iOS and Android. Russell's been at this for more than a decade, and the progress is now hitting critical mass. We'll talk about the Toga GUI toolkit, building and shipping your apps with Briefcase, the newly official support for iOS and Android in CPython, and so much more. I can't wait to explore how BeeWare opens up the entire mobile ecosystem for Python developers, let's jump right in.

    Episode sponsors

    Posit
    Python in Production
    Talk Python Courses

    Links from the show Anaconda open source team: anaconda.com
    PEP 730 – Adding iOS: peps.python.org
    PEP 738 – Adding Android: peps.python.org
    Toga: beeware.org
    Briefcase: beeware.org
    emscripten: emscripten.org
    Russell Keith-Magee - Keynote - PyCon 2019: youtube.com
    Watch this episode on YouTube: youtube.com
    Episode transcripts: talkpython.fm

    --- Stay in touch with us ---
    Subscribe to Talk Python on YouTube: youtube.com
    Talk Python on Bluesky: @talkpython.fm at bsky.app
    Talk Python on Mastodon: talkpython
    Michael on Bluesky: @mkennedy.codes at bsky.app
    Michael on Mastodon: mkennedy
    Show more Show less
    1 hr and 8 mins
adbl_web_global_use_to_activate_T1_webcro805_stickypopup