The Quest for Faster Python, Performance as the Nemesis of Secure Code, How to Use Stacks and Queues, and More

#472 – MAY 11, 2021 VIEW IN BROWSER
The PyCoder’s Weekly Logo
The Quest for Faster Python
There seems to be a lot going on in the Python JIT compiler space. Facebook recently open-sourced Instagram’s Cinder runtime, Pyston 2 returned as an open-source project, and the Pyjion project from Microsoft continues to grow. But Python creator Guido van Rossum has suggested that Python developers in need of more performance should consider writing parts of their code as C extensions, or use the PyPy runtime. This article explores Pythons turbulent history with performance optimization.
TIM ANDERSON

How Performance Became the Nemesis of the Secure Python Code
While JIT compilers compete for Python performance improvements and some teams rush into asyncio adoption, one has to wonder what the outcome of additional complexity will be. This opinion piece argues that the cost of hurried and potentially unnecessary performance optimization is unstable and insecure code. It’s a good reminder that decisions about project dependencies should be thoroughly researched and made deliberately.
DIMA KOTIK

Find Out Why Scout’s a Developer’s Best Friend with a Free 14-Day Trial, no Credit Card Needed!
Scout uses tracing logic to tie bottlenecks to source code so developers can get back to building great products instead of wasting time fixing performance issues. Real-time alerting gives you the insights you need in 4 min or less! Deploy today and we’ll donate $5 to the OSS project of your choice →
SCOUT APMsponsor

Stacks and Queues: Selecting the Ideal Data Structure
Learn about three of Python’s data structures: stacks, queue and priority queues. You’ll look at multiple types and classes for all of these and learn which implementations are best for your specific use cases.
REAL PYTHON course

Texas Instruments To Release New TI-84 Calculator With Python
TI.COM

EuroPython 2021 Call for Proposals Extended Until May 16
EUROPYTHON.EU

Pylance Is Now the Default Python Language Server for VS Code
MICROSOFT.COM

CPython Internals Book: Paperback Copies Now Available
“CPython Internals: Your Guide to the Python 3 Interpreter” is now available as a paperback book. Unlock the inner workings of the Python language, compile the Python interpreter from source code, and participate in the development of CPython. Print copies available at a discounted launch price until the end of the week →
REAL PYTHONsponsor


Discussions


Do You Use the Python Console and the Python Math Libraries as a Calculator?
With Python installed, you’ve got a quick and easy-to-use calculator accessible from any terminal window!
REDDIT

Python Projects on Github That Are Examples of Best Practices and Good Architecture
This Reddit thread is full of GitHub repos that might make for some good code reading.
REDDIT


Python Jobs


Sr Full Stack Engineer (USA)
YONDER

Software Engineer (New York, NY, USA)
TRUVERIS

PL/SQL Developer with Python (Remote)
DOTCOM TEAM, LLC

Senior Software Engineer (Allegany, OR, USA)
ADDISON GROUP

More Python Jobs >>>


Articles & Tutorials


Natural Language Processing With Python’s NLTK Package
In this beginner-friendly tutorial, you’ll take your first steps with Natural Language Processing (NLP) and Python’s Natural Language Toolkit (NLTK). You’ll learn how to process unstructured data in order to be able to analyze it and draw conclusions from it.
REAL PYTHON

Fluent in Django: Get to Know Django Models Better
Django models are the single, definitive source of information about data in a Django application. That means that all the logic about your data should be located in the model—not in a view as too often can be seen. In this article, you’ll get to know Django models better including things like UUID fields, enumeration types, Meta classes, and custom .save() methods.
GIRLTHATLOVESTOCODE • Shared by GirlThatLovesToCode

Crunchy Bridge: Fully Managed Cloud Postgres
Rival IQ needed to evaluate new providers for their 3+ TB Postgres database and chose Crunchy Bridge on AWS for integrating with their Heroku app. The result: performance improvements and better developer workflow with a seamless migration experience. Read the customer success story to learn more →
CRUNCHY DATAsponsor

Asynchronous Tasks With FastAPI and Celery
Many web apps require long-running tasks, such as resizing image thumbnails or generating PDFs. Background tasks allow a web app to continue to process incoming requests while a task is executing. This tutorial walks you through setting up Celery and Redis to handle background tasks in a FastAPI application. You’ll learn how to containerize everything with Docker, save Celery logs to files, and monitor background tasks with Flower.
MICHALE HERMAN • Shared by Michael Herman

Recursion in Python: An Introduction
In this tutorial, you’ll learn about recursion in Python. You’ll see what recursion is, how it works in Python, and under what circumstances you should use it. You’ll finish by exploring several examples of problems that can be solved both recursively and non-recursively.
REAL PYTHON

Make Documentation Continuous for your Engineering Team and DevOps
Swimm gives developers the high-quality, up-to-date documentation they deserve. Creating code-coupled documentation and placing checks within the CI/CD pipeline, provides version controlled documentation. Start Swimming today.
SWIMMsponsor

Bite My Shiny, Type-Annotated Library!
If you’re a package maintainer and want to make type annotations available to all users of your library, how can you go about doing this? Just add the type annotations to your library, right? Well, no! Learn how type annotations are handled in package distributions in this short but informative article with links to a number of helpful resources.
JUGMAC00.GITHUB.IO • Shared by Jürgen Gmach

I Forgot How to Spellcheck
Throughout 2020, Victor Shepelev worked on porting the hunspell spellchecker to Python in a project called spylls. In this post he shares his thoughts on spell checking, noting that it is much more difficult than just comparing strings to an established dictionary. While the article is not technical, it’s a great read exploring some of the assumptions made by hunspell and how they fail in the real world.
VICTOR SHEPELEV


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 →

pudb: Full-Screen Console Debugger for Python
GITHUB.COM/INDUCER

cinder: Instagram’s Performance Oriented Fork of CPython
GITHUB.COM/FACEBOOKINCUBATOR

zxpy: Shell Scripts Made Simple
GITHUB.COM/TUSHARSADHWANI

typeshed: Collection of Library Stubs for Python, With Static Types
GITHUB.COM/PYTHON

flower: Real-Time Monitor and Web Admin for Celery Distributed Task Queue
GITHUB.COM/MHER

reviews: A Terminal UI Dashboard for Monitoring Requests for Code Review
GITHUB.COM/APOCLYPS • Shared by kyle harrison

📆🐍 Upcoming Python Events


⋅ Real Python Office Hours (Virtual) May 12, 2021

⋅ PyCon 2021 (Virtual) May 12 – 18, 2021

⋅ DjangoCon Europe 2021 (Virtual) June 2 – 6, 2021

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

⋅ PyCon India 2021 September 17 – 20, 2021
Happy Pythoning!
Copyright © 2021 PyCoder’s Weekly, All rights reserved.
You are receiving this email because you opted in on our website at pycoders.com
Our mailing address: DevCademy Media Inc. · #720-999 West Broadway, Vancouver BC V5Z 1K5, Canada

Unsubscribe | Update Email Address

Older messages

Python C Extensions Can Be Slow, How To Make Jupyter Notebooks Interactive, Building a Platform Game in Python, and More

Tuesday, May 4, 2021

The Hidden Performance Overhead of Python C Extensions #471 – MAY 4, 2021 VIEW IN BROWSER The PyCoder's Weekly Logo The Hidden Performance Overhead of Python C Extensions It's no secret that

The Social Contract of Open Source, Python's map() Function, Incrementally Teaching Python with Hedy, and More

Tuesday, April 27, 2021

The Social Contract of Open Source #470 – APRIL 27, 2021 VIEW IN BROWSER The PyCoder's Weekly Logo The Social Contract of Open Source What is open source software, and what is the relationship

Level Up Your Python by Reading Code, Need-to-Know Django Template Tags, Python Music Theory, and More

Tuesday, April 20, 2021

Learn by Reading Code: Python Standard Library Design Decisions Explained #469 – APRIL 20, 2021 VIEW IN BROWSER The PyCoder's Weekly Logo Learn by Reading Code: Python Standard Library Design

Python Types in the Wild, Making Packages in 2021, How to Contribute to Python, and More

Tuesday, April 13, 2021

Python 3 Types in the Wild: A Tale of Two Type Systems #468 – APRIL 13, 2021 VIEW IN BROWSER The PyCoder's Weekly Logo Python 3 Types in the Wild: A Tale of Two Type Systems This academic paper

Buying a House With Python, OOP in Python vs. Java, What is Werkzeug, and More

Tuesday, April 6, 2021

How I Beat the Berlin Rental Market With a Python Script #467 – APRIL 6, 2021 VIEW IN BROWSER The PyCoder's Weekly Logo How I Beat the Berlin Rental Market With a Python Script Learn how one Python

You Might Also Like

Daily Coding Problem: Problem #1646 [Medium]

Monday, December 23, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Facebook. Write a function that rotates a list by k elements. For example, [1, 2, 3, 4,

GCP Newsletter #430

Monday, December 23, 2024

Welcome to issue #430 December 23rd, 2024 News Event Official Blog Calling all devs: Code the future of baseball with Google Cloud and MLB - Google Cloud and MLB are hosting a hackathon where

⏯️ Make a Holiday Guest Profile for Your Streaming Services — What Is Linux Mint?

Monday, December 23, 2024

Also: I Played the Worst Mobile Games So You Don't Have To, and More! How-To Geek Logo December 23, 2024 Did You Know The giant splashes of color that make poinsettias a popular holiday decoration

Ranked | The Most Satisfying vs. Most Reliable Car Brands in 2024 🚙

Monday, December 23, 2024

The most reliable car brands are rarely the most satisfying to own, according to recent Consumer Reports survey data. View Online | Subscribe | Download Our App Presented by: Find the megatrends

Bitcoin Enthusiasts Are Letting Altcoins Pass by

Monday, December 23, 2024

Top Tech Content sent at Noon! Boost Your Article on HackerNoon for $159.99! Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, December 23, 2024? The

Last Minute Gifts from Walmart

Monday, December 23, 2024

ZDNET ZDNET Sponsored Message In Partnership with Walmart December 23, 2024 exclusive offer Walmart Last-minute gifts from Walmart Shop Now Walmart The tech you've been wishing for–at everyday low

15 ways AI saved me weeks of work in 2024

Monday, December 23, 2024

ZDNET's product of the year; Windows 11 24H2 bug list updated -- ZDNET ZDNET Tech Today - US December 23, 2024 AI applications on various devices. 15 surprising ways I used AI to save me weeks of

Distributed Locking: A Practical Guide

Monday, December 23, 2024

If you're wondering how and when distributed locking can be useful, here's the practical guide. I explained why distributed locking is needed in real-world scenarios. Explored how popular tools

⚡ THN Weekly Recap: Top Cybersecurity Threats, Tools and Tips

Monday, December 23, 2024

Your one-stop-source for last week's top cybersecurity headlines. The Hacker News THN Weekly Recap The online world never takes a break, and this week shows why. From ransomware creators being

⚙️ OpenA(G)I?

Monday, December 23, 2024

Plus: The Genesis Project ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌