Python Bytes Podcast Por Michael Kennedy and Brian Okken capa

Python Bytes

Python Bytes

De: Michael Kennedy and Brian Okken
Ouça grátis

Sobre este título

Python Bytes is a weekly podcast hosted by Michael Kennedy and Brian Okken. The show is a short discussion on the headlines and noteworthy news in the Python, developer, and data science space.Copyright 2016-2025 Política e Governo
Episódios
  • #459 Inverted dependency trees
    Nov 24 2025
    Topics covered in this episode: PEP 814 – Add frozendict built-in typeFrom Material for MkDocs to ZensicalTachSome Python Speedups in 3.15 and 3.16ExtrasJokeAbout the show Sponsored by us! Support our work through: Our courses at Talk Python TrainingThe Complete pytest CoursePatreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org / @mkennedy.codes (bsky)Brian: @brianokken@fosstodon.org / @brianokken.bsky.socialShow: @pythonbytes@fosstodon.org / @pythonbytes.fm (bsky) 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. Michael #0: Black Friday is on at Talk Python What’s on offer: An AI course mini bundle (22% off)20% off our entire library via the Everything Bundle (what's that? ;) )The new Talk Python in Production book (25% off) Brian: This is peer pressure in action 20% off The Complete pytest Course bundle (use code BLACKFRIDAY) through November or use save50 for 50% off, your choice.Python Testing with pytest, 2nd edition, eBook (50% off with code save50) also through November I would have picked 20%, but it’s a PragProg wide thing Michael #1: PEP 814 – Add frozendict built-in type by Victor Stinner & Donghee NaA new public immutable type frozendict is added to the builtins module.We expect frozendict to be safe by design, as it prevents any unintended modifications. This addition benefits not only CPython’s standard library, but also third-party maintainers who can take advantage of a reliable, immutable dictionary type.To add to existing frozen types in Python. Brian #2: From Material for MkDocs to Zensical Suggested by John HagenA lot of people, me included, use Material for MkDocs as our MkDocs theme for both personal and professional projects, and in-house docs.This plugin for MkDocs is now in maintenance modeThe development team is switching to working on Zensical, a static site generator to overcome some technical limitations with MkDocs. There’s a series of posts about the transition and reasoning Transforming Material for MkDocsZensical – A modern static site generator built by the creators of Material for MkDocsMaterial for MkDocs Insiders – Now free for everyoneGoodbye, GitHub DiscussionsMaterial for MkDocs still around, but in maintenance modeall insider features now available to everyoneZensical is / will be compatible with Material for Mkdocs, can natively read mkdocs.yml, to assist with the transitionOpen Source, MIT licensefunded by an offering for professional users: Zensical Spark Michael #3: Tach Keep the streak: pip deps with uv + tachFrom Gerben DeckerWe needed some more control over linting our dependency structure, both internal and external.We use tach (which you covered before IIRC), but also some home built linting rules for our specific structure. These are extremely easy to build using an underused feature of ruff: "uv run ruff analyze graph --python python_exe_path .".Example from an app I’m working on (shhhhh not yet announced!) Brian #4: Some Python Speedups in 3.15 and 3.16 A Plan for 5-10%* Faster Free-Threaded JIT by Python 3.16 5% faster by 3.15 and 10% faster by 3.16Decompression is up to 30% faster in CPython 3.15 Extras Brian: LeanTDD book issue tracker Michael: No. 4 for dependencies: Inverted dep trees from Bob Belderbos Joke: git pull inception
    Exibir mais Exibir menos
    33 minutos
  • #458 I will install Linux on your computer
    Nov 17 2025
    Topics covered in this episode: Possibility of a new website for DjangoaiosqlitepooldeptrybrowsrExtrasJokeWatch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python TrainingThe Complete pytest CoursePatreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org / @mkennedy.codes (bsky)Brian: @brianokken@fosstodon.org / @brianokken.bsky.socialShow: @pythonbytes@fosstodon.org / @pythonbytes.fm (bsky) 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: Possibility of a new website for Django Current Django site: djangoproject.comAdam Hill’s in progress redesign idea: django-homepage.adamghill.comCommentary in the Want to work on a homepage site redesign? discussion Michael #2: aiosqlitepool 🛡️A resilient, high-performance asynchronous connection pool layer for SQLite, designed for efficient and scalable database operations.About 2x better than regular SQLite.Pairs with aiosqliteaiosqlitepool in three points: Eliminates connection overhead: It avoids repeated database connection setup (syscalls, memory allocation) and teardown (syscalls, deallocation) by reusing long-lived connections.Faster queries via "hot" cache: Long-lived connections keep SQLite's in-memory page cache "hot." This serves frequently requested data directly from memory, speeding up repetitive queries and reducing I/O operations.Maximizes concurrent throughput: Allows your application to process significantly more database queries per second under heavy load. Brian #3: deptry “deptry is a command line tool to check for issues with dependencies in a Python project, such as unused or missing dependencies. It supports projects using Poetry, pip, PDM, uv, and more generally any project supporting PEP 621 specification.”“Dependency issues are detected by scanning for imported modules within all Python files in a directory and its subdirectories, and comparing those to the dependencies listed in the project's requirements.”Note if you use project.optional-dependencies [project.optional-dependencies] plot = ["matplotlib"] test = ["pytest"] you have to set a config setting to get it to work right: [tool.deptry] pep621_dev_dependency_groups = ["test", "docs"] Michael #4: browsr browsr 🗂️ is a pleasant file explorer in your terminal. It's a command line TUI (text-based user interface) application that empowers you to browse the contents of local and remote filesystems with your keyboard or mouse.You can quickly navigate through directories and peek at files whether they're hosted locally, in GitHub, over SSH, in AWS S3, Google Cloud Storage, or Azure Blob Storage.View code files with syntax highlighting, format JSON files, render images, convert data files to navigable datatables, and more. Extras Brian: Understanding the MICROTDD chapter coming out later today or maybe tomorrow, but it’s close. Michael: Peacock is excellent Joke: I will find you
    Exibir mais Exibir menos
    23 minutos
  • #457 Tapping into HTTP
    Nov 11 2025
    Topics covered in this episode: httptap10 Smart Performance Hacks For Faster Python CodeFastRTCExplore Python dependencies with pipdeptree and uv pip treeExtrasJokeWatch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python TrainingThe Complete pytest CoursePatreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org / @mkennedy.codes (bsky)Brian: @brianokken@fosstodon.org / @brianokken.bsky.socialShow: @pythonbytes@fosstodon.org / @pythonbytes.fm (bsky) 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. Michael #1: httptap Rich-powered CLI that breaks each HTTP request into DNS, connect, TLS, wait, and transfer phases with waterfall timelines, compact summaries, or metrics-only output.Features Phase-by-phase timing – precise measurements built from httpcore trace hooks (with sane fallbacks when metal-level data is unavailable).All HTTP methods – GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS with request body support.Request body support – send JSON, XML, or any data inline or from file with automatic Content-Type detection.IPv4/IPv6 aware – the resolver and TLS inspector report both the address and its family.TLS insights – certificate CN, expiry countdown, cipher suite, and protocol version are captured automatically.Multiple output modes – rich waterfall view, compact single-line summaries, or -metrics-only for scripting.JSON export – persist full step data (including redirect chains) for later processing.Extensible – clean Protocol interfaces for DNS, TLS, timing, visualization, and export so you can plug in custom behavior.Example: Brian #2: 10 Smart Performance Hacks For Faster Python Code Dido GrigorovA few from the list Use math functions instead of operatorsAvoid exception handling in hot loopsUse itertools for combinatorial operations - huge speedupUse bisect for sorted list operations - huge speedup Michael #3: FastRTC The Real-Time Communication Library for Python: Turn any python function into a real-time audio and video stream over WebRTC or WebSockets.Features 🗣️ Automatic Voice Detection and Turn Taking built-in, only worry about the logic for responding to the user.💻 Automatic UI - Use the .ui.launch() method to launch the webRTC-enabled built-in Gradio UI.🔌 Automatic WebRTC Support - Use the .mount(app) method to mount the stream on a FastAPI app and get a webRTC endpoint for your own frontend!⚡️ Websocket Support - Use the .mount(app) method to mount the stream on a FastAPI app and get a websocket endpoint for your own frontend!📞 Automatic Telephone Support - Use the fastphone() method of the stream to launch the application and get a free temporary phone number!🤖 Completely customizable backend - A Stream can easily be mounted on a FastAPI app so you can easily extend it to fit your production application. See the Talk To Claude demo for an example of how to serve a custom JS frontend. Brian #4: Explore Python dependencies with pipdeptree and uv pip tree Suggested by Nicholas Carsner We have covered it, but in 2017 on episode 17.pipdeptree Use pipdeptree --python auto to allow it to read your venvuv pip tree Also check out uv pip tree and some useful flags --show-version-specifiers to show the rules--outdated notes packages that need updated Extras Brian: Lean TDD 0.1.1 includes an updated intro and another chapter, “Essential Components”VSCode Peacock Extension - color code your different projects Joke: Sure Grandma
    Exibir mais Exibir menos
    28 minutos
Ainda não há avaliações