What is error culture, and how do you avoid it within your organization? How do you navigate alert and notification fatigue? Hey, it’s episode #200! Real Python’s editor-in-chief, Dan Bader, joins us this week to celebrate. Christopher Trudeau also returns to bring another batch of PyCoder’s Weekly articles and projects.
We discuss an article series about error culture. We dig into false positives, hero culture, and the tendency to start ignoring alerts. We contrast our personal experiences and propose possible remedies. Dan describes configuring Real Python’s alert system.
We also share several other articles and projects from the Python community, including a news roundup, reading and writing WAV files in Python, moving beyond flat files toward SQLite and SQLAlchemy, getting help in Python, exploring four kinds of optimization, a framework for building web scrapers, and a project to simply subprocesses.
This week’s episode is brought to you by Sentry.
Course Spotlight: SQLite and SQLAlchemy in Python: Move Your Data Beyond Flat Files)
In this video course, you’ll learn how to store and retrieve data using Python, SQLite, and SQLAlchemy as well as with flat files. Using SQLite with Python brings with it the additional benefit of accessing data with SQL. By adding SQLAlchemy, you can work with data in terms of objects and methods.
Topics:
00:00:00 – Introduction
00:02:42 – PyPI Hiring a Support Specialist
00:03:19 – PyPI Temporarily Halted New Users and Projects
00:04:14 – What we know about the xz Utils backdoor
00:05:38 – CPython, PyPI, and the backdoor of xz
00:07:18 – Episode 200 appreciation and the journey
00:09:18 – A visit from Dan
00:14:14 – Reading and Writing WAV Files in Python
00:19:56 – Sponsor: Sentry
00:21:03 – SQLite and SQLAlchemy in Python
00:27:36 – Getting Help (In Python)
00:32:49 – Laurence Tratt: Four Kinds of Optimization
00:40:54 – Video Course Spotlight
00:42:26 – Discussion: Error Culture
00:58:03 – botasaurus: The All in One Framework to Build Awesome Scrapers
01:01:04 – suby: Slightly Simplified Subprocesses
01:02:50 – Thanks and goodbye
News:
PyPI Temporarily Halted New Users and Projects) – To fend off a supply-chain attack, PyPI temporarily halted new users and projects for about 10 hours last week. This article discusses why, and the scourge of supply-chain attacks.
What we know about the xz Utils backdoor that almost infected the world - Ars Technica)
Topics:
Reading and Writing WAV Files in Python) – In this tutorial, you’ll learn how to work with WAV audio files in Python using the standard-library wave module. Along the way, you’ll synthesize sounds from scratch, visualize waveforms in the time domain, animate real-time spectrograms, and apply special effects to widen the stereo field.
SQLite and SQLAlchemy in Python: Beyond Flat Files) – In this video course, you’ll learn how to store and retrieve data using Python, SQLite, and SQLAlchemy as well as with flat files. Using SQLite with Python brings with it the additional benefit of accessing data with SQL. By adding SQLAlchemy, you can work with data in terms of objects and methods.
How SQLite Is Tested) – The page describes how SQLite is rigorously tested using four test harnesses, fuzz testing, anomaly testing like crash and I/O error simulations, and other techniques to ensure reliability.
Getting Help (In Python)) – When trying to remember just where sleep()
was in the Python standard library, Ishaan stumbled through the built-in help and learned how to use it to answer just these kinds of questions.
Laurence Tratt: Four Kinds of Optimization) – “Premature optimization might be the root of all evil, but overdue optimization is the root of all frustration. No matter how fast hardware becomes, we find it easy to write programs which run too slow.” Read on to learn what to do about it.
Discussion:
Projects:
Additional Links:
Level up your Python skills with our expert-led courses:
Support the podcast & join our community of Pythonistas)