#596 – SEPTEMBER 26, 2023
Design and Guidance: Object-Oriented Programming in Python
In this video course, you’ll learn about the SOLID principles, which are five well-established standards for improving your object-oriented design in Python. By applying these principles, you can create object-oriented code that is more maintainable, extensible, scalable, and testable.
REAL PYTHON course
Learning About Code Metrics in Python With Radon
Radon is a code metrics tool. This article introduces you to it and teaches you how you can improve your code based on its measurements.
MIKE DRISCOLL
You Write Great Python Code but How Do You Know it’s Secure Code
If you’re not a security expert, consider Semgrep. Trusted by Slack, Gitlab, Snowflake, and thousands of engineers, it acts like a security spellchecker for your code. Simply point Semgrep to your code; it identifies vulnerabilities and even checks code dependencies and help you ship secure code →
SEMGREP sponsor
Speeding Up Your Code When Multiple Cores Aren’t an Option
Parallelism isn’t the only answer: often you can optimize low-level code to get significant performance improvements.
ITAMAR TURNER-TRAURING
Django 5.0 Alpha 1 Released
DJANGO SOFTWARE FOUNDATION
Python 3.12.0 Release Candidate 3 Available
CPYTHON DEV BLOG
Articles & Tutorials
How to Catch Multiple Exceptions in Python
In this how-to tutorial, you’ll learn different ways of catching multiple Python exceptions. You’ll review the standard way of using a tuple in the except clause, but also expand your knowledge by exploring some other techniques, such as suppressing exceptions and using exception groups.
REAL PYTHON
78% MNIST Accuracy Using GZIP in Under 10 Lines of Code
MNIST is a collection of hand-written digits that is commonly used to play with classification algorithms. It turns out that some compression mechanisms can double as classification tools. This article covers a bit of why with the added code-golf goal of a small amount of code.
JAKOBS.DEV
Don’t Get Caught by IDOR Vulnerabilities
Are insecure direct object reference (IDOR) threatening your applications? Learn about the types of IDOR vulnerabilities in your Python applications, how to recognize their patterns, and protect your system with Snyk →
SNYK.IO sponsor
Bypassing the GIL for Parallel Processing in Python
In this tutorial, you’ll take a deep dive into parallel processing in Python. You’ll learn about a few traditional and several novel ways of sidestepping the global interpreter lock (GIL) to achieve genuine shared-memory parallelism of your CPU-bound tasks.
REAL PYTHON
Creating a Great Python DevX
This article talks about the different tools you commonly come across as part of the Python development experience. It gives an overview of black, nox, ruff, Mypy, and more, covering why you should use them when you code your own projects.
SCOTT HOUSEMAN
Why Are There So Many Python Dataframes?
Ever wonder why there are so many ways libraries that have Dataframes in Python? This article talks about the different perspectives of the popular toolkits and why they are what they are.
MAHESH VASHISHTHA
The Protocol Class
typing.Protocol
enables type checking in a Java-esque interface like mechanism. Using it, you can declare that a duck-typed class conform to a specific protocol. Read on for details.
PEPIJN BAKKER
What Does if __name__ == "__main__"
Mean in Python?
In this video course, you’ll learn all about Python’s name-main idiom. You’ll learn what it does in Python, how it works, when to use it, when to avoid it, and how to refer to it.
REAL PYTHON course
Why & How Python Uses Bloom Filters in String Processing
Dive into Python’s clever use of Bloom filters in string APIs for speedier performance. Find out how CPython’s unique implementation makes it more efficient.
ABHINAV UPADHYAY
Simulate the Monty Hall Problem in Python
Write a Python simulation to solve this classic probability puzzle that has stumped mathematicians and Nobel Prize winners!
DATASCHOOL.IO • Shared by Kevin Markham
Death by a Thousand Microservices
The software industry is learning once again that complexity kills and trending back towards monoliths and larger services.
ANDREI TARANCHENKO
How to Test Jupyter Notebooks With Pytest and Nbmake
Tutorial on how to use the pytest plugin nbmake to automate end-to-end testing of notebooks.
SEMAPHORECI.COM • Shared by Larisa Ioana
Projects & Code
panther: Web Framework for Building Async APIs
GITHUB.COM/ALIRN76
Clientele: Loveable Python API Clients From OpenAPI Schemas
GITHUB.COM/PHALT • Shared by Paul Hallett
mpire: Easy, but Faster Multiprocessing
GITHUB.COM/SYBRENJANSEN
leaky_ledger: A Fake Bank to Practice Finding Vulnerabilities
GITHUB.COM/ZCHTODD
reader: A Python Feed Reader Library
GITHUB.COM/LEMON24 • Shared by Adrian
Events
Weekly Real Python Office Hours Q&A (Virtual)
September 27, 2023
REALPYTHON.COM
SPb Python Drinkup
September 28, 2023
MEETUP.COM
PyCon India 2023
September 29 to October 3, 2023
PYCON.ORG
PythOnRio Meetup
September 30, 2023
PYTHON.ORG.BR
PyConZA 2023
October 5 to October 7, 2023
PYCON.ORG
PyCon ES Canarias 2023
October 6 to October 9, 2023
PYCON.ORG
Django Day Copenhagen 2023
October 6 to October 7, 2023
DJANGODAY.DK
DjangoCongress JP 2023
October 7 to October 8, 2023
DJANGOCONGRESS.JP
Happy Pythoning!
This was PyCoder’s Weekly Issue #596.
View in Browser »
[ Subscribe to 🐍 PyCoder’s Weekly 💌 – Get the best Python news, articles, and tutorials delivered to your inbox once a week >> Click here to learn more ]
Source:: PyCoder’s