Issue #586

Mazes, Organizing Monoliths, Passing NumPy Arrays, and More

July 18, 2023

Mazes, Organizing Monoliths, Passing NumPy Arrays, and More
#586 – JULY 18, 2023 VIEW IN BROWSER
The PyCoder’s Weekly Logo
Mazes in Python Part 2: Storing and Solving
In part two of this two-part project, you’ll define a specialized binary file format to store a maze on disk, transform the maze into a traversable weighted graph, and use a graph search algorithm in the NetworkX library to find the solution.
REAL PYTHON course

How We Organise Our Very Large Python Monolith
Kraken Technologies is an environmental tech company that does a lot of Python development. One of their applications is a monolith with over 27k modules. This article outlines how they keep all this organized and running.
DAVID SEDDON

Improve Your Business Operations and Boost Online Privacy With IPRoyal
IPRoyal offers proxy servers for businesses and individuals with excellent features at highly competitive pricing. IPRoyal is the most cost-efficient solution for web scraping, SEO research, ad verification, bypassing geo-restrictions, and more. Try it out with a stunning 30% discount →
IPROYALsponsor

7 Ways to Share a NumPy Array Between Processes
If you’re doing multi-processing with NumPy you will need to pass arrays between processes. This article covers different ways of doing just that.
JASON BROWNLEE

Python 3.12.0 Beta 4 Released
CPYTHON DEV BLOG


Discussions


What Would You Want in Tomorrow’s CPython Build System?
PYTHON.ORG


Python Jobs


Software Engineer (Dallas or Los Angeles)
CAUSEWAY CAPITAL MANAGEMENT LLC 📍 LOS ANGELES, CA, USA

More Python Jobs >>>


Articles & Tutorials


Unlock IPython’s Magical Toolbox for Your Coding Journey
IPython is a powerful tool that can prove useful on your journey to mastering Python. Its friendly interface will enable you to comfortably take control of your learning. In this tutorial, you’ll cover the basic concepts of using IPython and learn how its features can make coding efficient.
REAL PYTHON

Django: Find Test Flakiness by Randomly Ordering QuerySets
Sometimes code depends on the order of a QuerySet while not specifying an order. This can lead to random, flaky test failures because databases can return rows in any order when none is specified. Learn how to randomly order your QuerySet when under test to detect this weird problem.
ADAM JOHNSON

Automate Slack and Microsoft Teams Notifications using Python
Integrating with the Slack and Microsoft APIs is fairly straightforward, implementing these tools as a part of a full-featured notification system that embeds with your app experience can be far more daunting. Make these tools a seamless part of how your app communicates with users. Learn how →
COURIERsponsor

Python and Rust Async Web Server Performance
This post compares asynchronous web performance between a Python application using Uvicorn and a Rust application using Axum. A similar data-serving program is written in both applications with very little performance difference.
JOHN LOCKWOOD

Security Developer-in-Residence: Weekly Report #2
The new Security Developer-in-Residence at the Python Software Foundation writes about the Software Bill of Materials and how it can programmatically tell you exactly what is in a distribution, including compiled libraries.
SETH LARSON

Jupyter Widgets Made Easy With anywidget
anywidget is a Python library that makes it simple and enjoyable to create custom Jupyter Widgets.” It allows for quick prototyping, and because it is Python can be used across environments.
TREVOR MANZ

Adding Tail Call Optimization to Python
Tail call optimization is a technique provided in some languages to avoid growing the stack with recursive algorithms. Python doesn’t have it, but this article shows how you can build it.
JONAS OTTEN

How Python Uses Garbage Collection
This article outlines how Python stores variables as references and how that relates to memory management.
KARISHMA SHUKLA

State of WASI Support for CPython: June 2023
This post from Brett covers the current state of WebAssembly targets in Python.
BRETT CANNON

AI-Proof Your Tech Career: Transition to top AI/ML Roles with Interview Kickstart
Future-proof your career with AI-focused tech skills. Taught by FAANG+ AI/ML engineers. Capstone project for real-world experience. Up to 15 mock interviews. Join FREE webinar to learn more.
INTERVIEW KICKSTARTsponsor

Ode to Ptyon
A lighthearted poem about a certain well-known programming language.
MEDIUM.COM/@PETEFISON • Shared by Pete Fison

The Problem With LangChain
LangChain is a Python and JavaScript library for interfacing with OpenAI’s GPT and other models for text generation. But, it “is complicated, so it must be better. Right?”
MAX WOOLF


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 →

Neurokernel: Platform to Emulate a Fruit Fly Brain
NEUROKERNEL.GITHUB.IO

panflute: Filters for Pandoc
GITHUB.COM/SERGIOCORREIA

GPTerm: Turn Plain Text Into Shell Commands
GITHUB.COM/ADEMAKDOGAN • Shared by ADEM AKDOGAN

litechain: Build Robust, Composable LLM Applications
GITHUB.COM/ROGERIOCHAVES

quart: An Async Python Micro Web Framework
GITHUB.COM/PALLETS

📆🐍 Upcoming Python Events


EuroSciPy Aug 14-18, Early Bird Tickets Available
Until July 28, 2023

PyStaDa
July 19, 2023

Weekly Real Python Office Hours Q&A (Virtual)
July 19, 2023

PyData Bristol Meetup
July 20, 2023

Python Northwest
July 20, 2023

PyLadies Dublin
July 20, 2023

Chattanooga Python User Group
July 21 to July 22, 2023

PyHEP.dev 2023
July 25 to July 29, 2023
Happy Pythoning!
Copyright © 2023 PyCoder’s Weekly, All rights reserved.