#472 – MAY 11, 2021
View in Browser »
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 APM sponsor
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
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 PYTHON sponsor
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)
Software Engineer (New York, NY, USA)
PL/SQL Developer with Python (Remote)
Senior Software Engineer (Allegany, OR, USA)
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 DATA sponsor
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.
SWIMM sponsor
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
reviews: A Terminal UI Dashboard for Monitoring Requests for Code Review
GITHUB.COM/APOCLYPS • Shared by kyle harrison
Events
Real Python Office Hours (Virtual)
May 12, 2021
REALPYTHON.COM
PyCon 2021 (Virtual)
May 12 – 18, 2021
PYCON.ORG
DjangoCon Europe 2021 (Virtual)
June 2 – 6, 2021
DJANGOCON.EU
EuroPython 2021 (Virtual)
July 26 – August 1, 2021
EUROPYTHON.EU
PyCon India 2021
September 17 – 20, 2021
PYCON.ORG
Happy Pythoning!
This was PyCoder’s Weekly Issue #472.
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 ]
from Planet Python
via read more
No comments:
Post a Comment