Announcing Polars 1.41 Polars 1.41 is out and this post covers the new features it includes. Learn about faster parquet metadata decoding, nested subplan elimination, and more. POLA.RS
Sending Emails With Python Learn how to send emails with Python using SMTP, attach files, format HTML messages, and personalize bulk emails for your contact list. REAL PYTHON
Quiz: Sending Emails With Python Use Python’s standard library to send email through secure SMTP connections, attach files, include HTML content, and route replies. REAL PYTHON
Great Docs Talk Python interviews Rich Iannone and Michael Chow from Posit and they talk about a new Python documentation tool called Great Docs. TALK PYTHONpodcast
Improving Python Through PEPs and Protocols Have you ever been confused by the naming of modules you’re importing from a package? Is there a standard way to organize and name your Python virtual environments? This week on the show, Brett Cannon returns to discuss the Python Enhancement Proposals (PEPs) he’s been working on recently. REAL PYTHONpodcast
Tame Your Pesky Little Scripts Over time it is common to accumulate little helper scripts, whether they’re shell scripts, aliases, or custom functions. They are typically tiny things that can become unwieldy to manage. This post shares a few ideas that might help you take back control. JUHA-MATTI SANTALA
5-Day Live OOP Workshop (Final Chance to Enroll) The Object-Oriented Python live cohort begins June 8. Five 2-hour sessions Mon to Fri build one growing application end to end, with OOP features introduced as the code starts needing them: classes, the data model, inheritance vs composition, properties, dataclasses. REAL PYTHONsponsor
Free-Threading vs the GIL in mod_wsgi 6.0.0 Free-threading in mod_wsgi 6.0.0 lets a single process spread Python work across multiple cores. This post is a metrics based comparison between the GIL being enabled and disabled. GRAHAM DUMPLETON
Notes About Python Email Packages Chris recently upgraded his personal mail program from Python 2 to Python 3 and this post talks about what needed to change and notes how the newer code works. CHRIS SIEBENMANN