Talk Python to Me is a weekly podcast hosted by developer and entrepreneur Michael Kennedy. We dive deep into the popular packages and software developers, data scientists, and incredible hobbyists doing amazing things with Python. If you're new to Python, you'll quickly learn the ins and outs of the community by hearing from the leaders. And if you've been Pythoning for years, you'll learn about your favorite packages and the hot new ones coming out of open source.
Similar Podcasts
![24H24L](/images/channels/735/thumb.webp)
24H24L
Evento en línea, de 24 horas de duración que consiste en la emisión de 24 audios de diversas temáticas sobre GNU/Linux. Estos son los audios del evento en formato podcast.
![Risky Business](/images/channels/704/thumb.webp)
Risky Business
Risky Business is a weekly information security podcast featuring news and in-depth interviews with industry luminaries. Launched in February 2007, Risky Business is a must-listen digest for information security pros. With a running time of approximately 50-60 minutes, Risky Business is pacy; a security podcast without the waffle.
![The Infinite Monkey Cage](/images/channels/554/thumb.webp)
The Infinite Monkey Cage
Brian Cox and Robin Ince host a witty, irreverent look at the world through scientists' eyes.
#402: Polars: A Lightning-fast DataFrame for Python
When you think about processing tabular data in Python, what library comes to mind? Pandas, I'd guess. But there are other libraries out there and Polars is one of the more exciting new ones. It's built in Rust, embraces parallelism, and can be 10-20x faster than Pandas out of the box. We have Polars' creator, Ritchie Vink here to give us a look at this exciting new data frame library. Links from the show Ritchie on Mastodon: @ritchie46@fosstodon.org Ritchie on Twitter: @RitchieVink Ritchie's website: ritchievink.com Polars: pola.rs Apache Arrow: arrow.apache.org Polars Benchmarks: pola.rs Coming from Pandas Guide: github.io Watch this episode on YouTube: youtube.com --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Taipy User Interviews Talk Python Training
#401: Migrating 3.8 Million Lines of Python
At some point, you've probably migrated an app from one framework or major runtime version to another. For example, Django to Flask, Python 2 to Python 3, or even Angular to Vue.js. This can be a big challenge. If you had 100s of active devs and millions of lines of code, it's a huge challenge. We have Ben Bariteau from Yelp here to recount their story moving 3.8M lines of code from Python 2 to Python 3. But this is not just a 2-to-3 story. It has many lessons on how to migrate code in many situations. There are plenty of gems to take from his experience. Links from the show Ben on Twitter: @benbariteau Ben's Talk at PyCon 2022: youtube.com python-modernize: github.com python-future: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Cox Automotive User Interviews Talk Python Training
#400: Ruff - The Fast, Rust-based Python Linter
Our code quality tools (linters, test frameworks, and others) play an important role in keeping our code error free and conforming to the rules our teams have chosen. But when these tools become sluggish and slow down development, we often avoid running them or even turn them off. On this episode, we have Charlie Marsh here to introduce Ruff, a fast Python linter, written in Rust. To give you a sense of what he means with fast, common Python linters can take 30-60 seconds to lint the CPython codebase. Ruff takes 300 milliseconds. I ran it on the 20,000 lines of Python code for our courses web app at Talk Python Training, and it was instantaneous. It's the kind of tool that can change how you work. I hope you're excited to learn more about it. Links from the show Charlie on Twitter: @charliermarsh Charlie on Mastodon: @charliermarsh@hachyderm Ruff: github.com PyCharm Developer Advocate Job: jetbrains.com/careers Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Cox Automotive User Interviews Talk Python Training
#399: Monorepos in Python
Monorepos are contrary to how many of us have been taught to use source control. To start a project or app, the first thing we do is create a git repo for it. This leads to many focused and small repositories. A quick check of my GitHub account shows there are 179 non-fork repositories. That's a lot but I think many of us work that way. But it's not like this with monorepos. There you create one (or a couple) repositories for your entire company. This might have 100s or 1,000s of employees working on multiple projects within the single repo. Famously, Google, Meta, Microsoft, and Airbnb all employ very large monorepos with varying strategies of coordination. On this episode, we have David Vujic here to give us his perspective on monorepos as well as highlight an architectural pattern and set of tools for accomplishing this in Python. Links from the show David on Twitter: @davidvujic David on Mastodon: @davidvujic@mastodon.nu Monorepo definition: wikipedia.org git-sizer tool for large repos: github.com git partial clones: docs.gitlab.com git sparse checkout: git-scm.com Polylith architecture: polylith.gitbook.io Article: A simple & scalable Python project structure: davidvujic.blogspot.com The last Python Architecture you will ever need?: davidvujic.blogspot.com python-polylith plugin for poetry: github.com Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Microsoft Founders Hub 2023 Brilliant 2023 Talk Python Training
#398: Imaging Black Holes with Python
The iconic and first ever image of a black hole was recently released. It took over a decade of work and is a major achievement for astronomy and broadens our understanding of the universe for all of us. Would it surprise you to know that Python played a major part in this discovery? Of course it did, and Dr. Sara Issaoun is here to give us the full story. Links from the show Sara's PyCon keynote: youtube.com Sara on Twitter: @saraissaoun Event Horizon Telescope: eventhorizontelescope.org Black Hole Image Makes History; NASA Telescopes Coordinated Observations: nasa.gov Event Horizon Data: eventhorizontelescope.org Imaging, analysis, and simulation software for radio interferometry Package: github.com Initial data showing ring (matplotlib) (video at time): youtube.com Mars 2020 Helicopter GitHub Badge: github.blog Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Cox Automotive Sentry Error Monitoring, Code TALKPYTHON Talk Python Training
#397: Evaluating New Open Source Tech Panel
The beauty of open source software and libraries is that you're not stuck with a single option some vendor is offering. This is especially true when that support is poor and antiquated. Almost any capability you think of has multiple options even for a single language such as Python. Just think about how many web frameworks you can pick today. Links from the show Guests Emily Morehouse-Valcarcel: @emilyemorehouse Cecil Phillip: @cecilphillip@hachyderm.io Kim van Wyk: @kimvanwyk@fosstodon.org Łukasz Langa: @ambv@mastodon.social Gareth Thomas: @thestub@pythonist.as Dan Gerlanc: @dgerlanc@fosstodon.org Does the GitHub page need to be pretty?: github.com/tiangolo/fastapi Do fancy "marketing pages" matter? Poetry: python-poetry.org Tailwind: tailwindcss.com VueJS: vuejs.org Aesara: github.com/aesara-devs/ Story of creating Michael's Site: mkennedy.codes Went to the community: fosstodon.org Hugo Site Generator: gohugo.io Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Cox Automotive Sentry Error Monitoring, Code TALKPYTHON AssemblyAI Talk Python Training
#396: AI Goes on Trial For Writing Code (crossover)
For links and very detailed show notes, please view the original episode page over on Python Bytes. Thanks for listening! Sponsors Sentry Error Monitoring, Code TALKPYTHON AWS Insiders AssemblyAI Talk Python Training
#395: Tools for README.md Creation and Maintenance
If you maintain projects on places like GitHub, you know that having a classy readme is important and that maintaining a change log can be helpful for you and consumers of the project. It can also be a pain. That's why I'm excited to welcome back Ned Batchelder to the show. He has a lot of tools to help here as well as some opinions we're looking forward to hearing. We cover his tools and a bunch of others he and I found along the way. Links from the show Ned on Mastodon: @nedbat@hachyderm.io Ned's website: nedbatchelder.com Readme as a Service: readme.so hatch-fancy-pypi-readme: github.com Shields.io badges: shields.io All Contributors: allcontributors.org Keep a changelog: keepachangelog.com Scriv: Changelog management tool: github.com changelog_manager: github.com executablebooks' github activity: github.com dinghy: A GitHub activity digest tool: github.com cpython's blurb: github.com release drafter: github.com Towncrier: github.com mktestdocs testing code samples in readmes: github.com shed: github.com blacken-docs: github.com Cog: github.com Awesome tools for readme: github.com coverage.py: coverage.readthedocs.io Tailwind CSS "Landing page": tailwindcss.com Poetry "Landing page": python-poetry.org Textual: textualize.io Rich: github.com Join Mastodon Page: joinmastodon.org Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Local Maximum Podcast Sentry Error Monitoring, Code TALKPYTHON AssemblyAI Talk Python Training
#394: Awesome Jupyter Libraries and Extensions in 2022
Jupyter is an amazing environment for exploring data and generating executable reports with Python. But there are many external tools, extensions, and libraries to make it so much better and make you more productive. On this episode, we are going to cover a ton of them. We have Markus Schanta, the maintainer of the awesome-jupyter list on the show and we'll highlight a bunch of Jupyter gems. Links from the show Markus Shanta: markus.schanta.at Markus on Twitter: @markusschanta awesome-jupyter list: github.com Jupyter book: jupyterbook.org Jupyter Desktop App: jupyter.org Talk Python Episode on 60 Notebook Envs: talkpython.fm nbdev: github.com Python Tutor: pythontutor.com Cell Magics: ipython.readthedocs.io Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors AWS Insiders Sentry Error Monitoring, Code TALKPYTHON AssemblyAI Talk Python Training
#393: Space Science with Python
Space science is one of the few sciences that can spark wonder and imagining in almost anyone. It also happens to be the domain of Python with many missions, telescopes, and analysis happening with Python playing a major role. On this episode we have Thomas Albin who has worked on several recent space missions. He has created a delightful YouTube channel called Space Science with Python. It's approachable and yet concrete and realistic. We are going to dive into some of his videos and see how Python can model things like astroid fly-bys and render comets in 3D. Links from the show Thomas Albin: astrodon.social/@ThomasAlbin Thomas on Twitter: @MrAstroThomas YouTube Channels Thomas' Space Science Channel: youtube.com Dr Becky's Channel: youtube.com Astrum Channel: youtube.com/@astrumspace Talk Python's Channel: youtube.comyoutube.com/@talkpython Michael's Channel: youtube.com/@mikeckennedy Cassini Mission: nasa.gov Comet: 67P/Churyumov–Gerasimenko: wikipedia.org Code from the series: github.com Space Science with Python Play List: youtube.com Video: Comet in 3D: youtube.com Video: Philae's Landing: youtube.com Video: Support Vector Machines - Intro: youtube.com Video: Autoencoder Latent Space Visualization: youtube.com Packages spiceypy: pypi.org imageio: pypi.org visvis: github.com astropy: astropy.org Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors RedHat AWS Insiders AssemblyAI Talk Python Training
#392: Data Science from the Command Line
When you think data science, Jupyter notebooks and associated tools probably come to mind. But I want to broaden your toolset a bit and encourage you to look around at other tools that are literally at your fingertips. The terminal and shell command line tools. On this episode, you'll meed Jeroen Janssens. He wrote the book Data Science on The Command Line Book and there are a bunch of fun and useful small utilities that will make your life simpler that you can run immediately in the terminal. For example, you can query a CSV file with SQL right from the command line. Links from the show Jeroen's Website: jeroenjanssens.com Jeroen on LinkedIn: linkedin.com Jeroen cohort-based course, Embrace the Command Line. Listeners can use coupon code TALKPYTHON20 for a 20% discount: maven.com Data Science on The Command Line Book: datascienceatthecommandline.com McFly Shell History Tool: github.com Explain Shell: explainshell.com CSVKit: csvkit.readthedocs.io sql2csv: csvkit.readthedocs.io pipx: github.com PyProject.toml to add entry points: github.com rich-cli: github.com Typer: typer.tiangolo.com FasD: github.com Nerd Fonts: nerdfonts.com Xonsh: xon.sh iTerm: iterm2.com Windows Terminal: microsoft.com ohmyposh: ohmyposh.dev ohmyz: ohmyz.sh Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Sentry Error Monitoring, Code TALKPYTHON Microsoft AssemblyAI Talk Python Training
#391: Pyscript powered by MicroPython
No Python announcement of 2022 was met with more fanfare than pyscript. This project, announced at PyCon 2022, allows you to write Python files and run them in your browser in place of JavaScript or even with interactions between Python and JavaScript. There was just one catch: The runtime download was a 9MB WebAssembly file. That made it's uses quite limited. On this episode, we dive into some news that might change that calculus. The MicroPython and PyScript folks have been teaming up to get PyScript running in the browser on MicroPython. Yes, that's the embedded chip Python. Here's the good news: MicroPython's WebAssembly is just 300k to download and loads in under 100ms. Now that could unlock some possibilities. We have Brett Cannon, Nicholas Tollervey, and Fabio Pliger on the show to discuss. This is Talk Python To Me, episode 391, recorded November 21st, 2022. Links from the show Guests and Host Links Brett Cannon: @brettcannon@fosstodon.org Nicholas Tollervey: @ntoll@mastodon.social Fabio Pliger: @b_smoke Michael Kennedy: @mkennedy@fosstodon.org Web Assembly: developer.mozilla.org pyodide: pyodide.org micropython: micropython.org Picture of TFT ESP32 Board: pythonbytes.fm pyscript: pyscript.net Simon Willison's Post About micropython + pyscript: fedi.simonwillison.net WASI: github.com Watch this episode on YouTube: youtube.com --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors AWS Insiders Local Maximum Podcast AssemblyAI Talk Python Training
#390: Mastodon for Python Devs
Wondering what Mastodon is all about? More importantly, what does it offer Python developers and other open source folks compared to Twitter? There is a huge amount of interest in the tech community about what's happening at Twitter and whether they should expand to or even move to a new location. So I decided to put together a set of experienced Python developers who have been Mastodon inhabitants for a long time to discuss what this unexpected shift means for one of our important online watering holes. On this episode you'll meet Gina Häußge, Simon Willison, and Juan Luis Cano Rodríguez. We're going to have a great time talking about the technology and the culture of Mastodon from this Python perspective. Links from the show Gina on Mastodon: chaos.social/@foosel Juan on Mastodon: social.juanlu.space/@astrojuanlu Simon on Mastodon: simonwillison.net/@simon Michael on Mastodon: fosstodon.org/@mkennedy Talk Python on Mastodon: fosstodon.org/@talkpython Mastodon: joinmastodon.org Fosstodon: fosstodon.org Mastodon is just blogs article: simonwillison.net C-Suite Folks Resign at Twitter: twitter.com The Importance of Choosing the Correct Mastodon Instance: carlchenet.com Wizard to choose your instance: instances.social Here’s how a Twitter engineer says it will break in the coming weeks: technologyreview.com Dealing with unwanted content: docs.joinmastodon.org Twitter poll on moving to Mastodon: twitter.com Toot package: pypi.org Takahe server: github.com Validating your Github account on your Mastodon profile: mastodon.social Twitter’s potential collapse could wipe out vast records of recent human history: technologyreview.com Simon's Streaming API: gist.github.com Mastodon 4.0 is out (day after recording): mastodon.social Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors AWS Insiders Microsoft AssemblyAI Talk Python Training
#389: 18 awesome asyncio packages in Python
If you're a fan of Python's async and await keywords and the powers they unlock, then this episode is for you. We have Timo Furrer here to share a whole bunch of asyncio related Python packages. Timo runs the awesome-asyncio list and he and I picked out some of our favorites to share with you. Links from the show Timo on Twitter: @tuxtimo awesome-asyncio list: github.com Some of the highlighted packages FastAPI: github.com starlette: github.com sanic: github.com uvicorn - The lightning-fast ASGI server: github.com Tech Empower Python Framework benchmarks: techempower.com aioamqp - AMQP implementation using asyncio: github.com pyzmq - Python bindings for ZeroMQ: github.com Scaling Python and Jupyter with ZeroMQ Talk Python episode: talkpython.fm/306 asyncpg - Fast PostgreSQL Database Client: github.com Piccolo - An ORM / query builder: github.com aiosqlite: github.com motor - The async Python driver for MongoDB: github.com AsyncSSH: github.com HTTPX: github.com pytest-asyncio - Pytest support for asyncio: github.com uvloop - Ultra fast implementation of asyncio event loop: github.com aiocache - Cache manager for different backends: github.com aiofiles - File support for asyncio: github.com aiopath - Asynchronous pathlib for asyncio: github.com Video: Demystifying Python's Async and Await Keywords - JetBrains TV 2020 (Michael Kennedy): youtube.com tenacity: readthedocs.io Michael's full 5 hour async course: talkpython.fm/async Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Mastodon: talkpython Follow Michael on Mastodon: mkennedy Sponsors Microsoft Sentry Error Monitoring, Code TALKPYTHON AssemblyAI Talk Python Training
#388: Python 3.11 is here and it's fast
Python 3.11 is here! Keeping with the annual release cycle, the Python core devs have released the latest version of Python. And this one is a big one. It has more friendly error messages and is massively faster than 3.10 (between 10 to 60% faster) which is a big deal for a year over year release of a 30 year old platform. On this episode, we have Irit Katriel, Pablo Galindo Salgado, Mark Shannon, and Brandt Bucher all of whom participated in releasing Python this week on the show to tell us about that process and some of the highlight features. Links from the show Guests Irit Katriel: @iritkatriel Mark Shannon: linkedin.com Pablo Galindo Salgado: @pyblogsal Brandt Bucher: github.com Python 3.11.0 is now available: blog.python.org PEP 101 - Releasing Python: peps.python.org PEP 678 – Enriching Exceptions with Notes: peps.python.org PEP 654 – Exception Groups and except*: peps.python.org PEP 657 – Include Fine Grained Error Locations in Tracebacks: peps.python.org Python Buildbot: python.org Making Python Faster Talk Python Episode: talkpython.fm Specializing, Adaptive Interpreter on Talk Python: talkpython.fm Specialist Visualizer: github.com "Zero cost" exception handling: github.com Pyodide: pyodide.org pyscript: pyscript.net Watch this episode on YouTube: youtube.com Episode transcripts: talkpython.fm --- Stay in touch with us --- Subscribe to us on YouTube: youtube.com Follow Talk Python on Twitter: @talkpython Follow Michael on Twitter: @mkennedy Sponsors Sentry Error Monitoring, Code TALKPYTHON Command Line Heroes AssemblyAI Talk Python Training