Issue #481

One Database Transaction Too Many, State of Python Packaging in 2021, Final Python 3.10 Beta Released, and More

July 13, 2021

One Database Transaction Too Many, State of Python Packaging in 2021, Final Python 3.10 Beta Released, and More
#481 – JULY 13, 2021 VIEW IN BROWSER
The PyCoder’s Weekly Logo
One Database Transaction Too Many
Learn how a bug was born — one that resulted in hundreds of users of an application getting a notification that they had been paid when in fact they had not! In this story, Haki Benita shares how a slip-up with Django signals caused him and his team quite a headache. You’ll learn how the application was architected, how the bug occurred, and how they fixed it, along with some other remedies to consider.
HAKI BENITA

The State of Python Packaging in 2021
What does Python packaging look like in 2021? What are the best tools to use? In this article, you’ll see one developer’s opinion about the state of Python packaging in 2021, what tools they are using the most often, and some thoughts on how the situation can continue to improve moving forward.
BASTIAN VENTHUR opinion

Monitor Errors & Performance in your Python Apps = Keep Users Happy
For software teams, monitoring code health is essential. From Error tracking to Performance monitoring, Sentry helps developers see clearer, solve quicker, and learn continuously about their applications - from frontend to backend. Try Sentry for free → with code: PYCODERS
SENTRYsponsor

Python News: What’s New From June 2021?
June 2021 was full of notable events in the Python world! In this article, you’ll get caught up on what’s been happening with Python during this past month, including some changes at the Python Software Foundation and the announcement of a new recipient of the PSF Fiscal Sponsorship Program.
REAL PYTHON

Python 3.10.0b4 Is Available
This is the last beta release, which means the next release will be the first release candidate.
CPYTHON DEV BLOG

Łukasz Langa Is the Inaugural CPython Developer-in-Residence
PYTHON SOFTWARE FOUNDATION


Python Jobs


Backend Software Engineer (Washington, D.C., USA)
QUORUM

Senior Cloud Platform Engineer (Berlin, Germany)
APHERIS

Software Engineer (Remote)
CLOSE

Backend Software Engineer (Remote)
TESSIAN

Python Web Developer (Remote)
PREMIERE DIGITAL SERVICES

Senior Software Engineer (Remote)
TRUVERIS

More Python Jobs >>>


Articles & Tutorials


Exploring the functools Module and Complex Numbers in Python
Are you ready to expand your Python knowledge into the intermediate to advanced territory? What tools are awaiting your discovery inside Python’s functools module? This week on the Real Python Podcast, David Amos is back, and he’s brought another batch of PyCoder’s Weekly articles and projects.
REAL PYTHON podcast

Pyflyby: Improving Efficiency of Jupyter Interactive Sessions
There’s a new tool in town that aims to improve Python developer focus and minimize distractions while coding, especially in Jupyter Notebooks. That new tool is pyflyby, and it can handle tidying up and collecting imports and exports from Python modules. For example, in a Jupyter Notebook, pyflyby can automatically import the right modules and functions from NumPy if you use something in a cell without importing it first.
MATTHIAS BUSSONNIER AND AARON MEURER

Try Scout Free for 14-days, no CC Needed, and see why Developers Call Scout their Best Friend
Scout uses tracing logic to tie bottlenecks to source code so devs can get back to building great products instead of wasting time fixing performance issues. Our real-time alerting and streamlined dashboards provide the data insights necessary for any developer to become a performance pro →
SCOUT APMsponsor

Copilot Writes a Text-Based Game in Python
GitHub’s new Copilot feature has a lot of people talking. The project’s goal is to be an AI pair programmer — a tool that can suggest entire lines of code or even entire functions! In this amusing article, one developer who gained access to Copilot’s technical preview shares how the AI wrote an entire text-based adventure game that turned out to be the solution to an exercise from a Python instructional book.
SAGINDYK URAZAYEV

Friendlier Tracebacks in REPLs (Including Jupyter)
Tracebacks are often the start of any Python debugging journey. But tracebacks can be difficult to read and confusing to beginners. The friendly-traceback project aims to lift the veil of confusion for tracebacks by providing more helpful error messages with lots of context. New updates to the project include better tracebacks in Jupyter Notebooks!
ANDRÉ ROBERGE

Get Feedback Faster with YourBase Test Acceleration
YourBase Test Acceleration can reduce testing and compute cost time by up to 90%. You don’t have to replace your CI, your build system, or your version control. Getting started is as easy as a pip install, and you don’t have to share any data.
YOURBASEsponsor

The Square Root Function in Python
In this quick and practical course, you’ll learn what a square root is and how to calculate one in Python. You’ll even see how you can use the Python square root function to solve a real-world problem.
REAL PYTHON course


Projects & Code


Brought to you by Real Python for Teamssponsor
Online Python training created by a community of experts. Give your team the real-world Python skills they need to succeed →

jupyterlite: WASM Powered Jupyter Running in the Browser
GITHUB.COM/JTPIO

pyflyby: A Set of Python Programming Productivity Tools
GITHUB.COM/DESHAW

multipledispatch: A Relatively Sane Approach to Multiple Dispatch in Python
GITHUB.COM/MROCKLIN

calcengine: Simple Python Calculation Engine
GITHUB.COM/BSDZ

tryceratops: A Linter to Manage All Your Python Exceptions and Try/Except Blocks
GITHUB.COM/GUILATROVA

django-postgres-extra: Bringing All of PostgreSQL’s Awesomeness to Django
GITHUB.COM/SECTORLABS

📆🐍 Upcoming Python Events


⋅ Real Python Office Hours (Virtual) July 14, 2021

⋅ EuroPython 2021 (Virtual) July 26 – August 1, 2021

⋅ PyCon India 2021 (Virtual) September 17 – 20, 2021
Happy Pythoning!
Copyright © 2021 PyCoder’s Weekly, All rights reserved.