Python Weekly (Issue 549 May 12 2022)

Python Weekly - Issue 549

Python Weekly

Welcome to issue 549 of Python Weekly. Let's get straight to the links this week.

Articles, Tutorials and Talks

There's a very simple way to improve Python performance of your code. And you know what's so nice about this performance improvement? It also nudges you to use good Python software design practices - it's a win-win!

This post is about a minor parsing ambiguity in the Python packaging ecosystem, one that cannot be resolved without additional context that isn’t captured by the packaging standards.

Mathematical optimization with Google OR-Tools.

This post shows you toy implementations of Python decorator patterns such as @measure, @repeat, @trace, @count, @singleton, and @app.route (made famous by Flask).

Woodwork is a Python library that provides robust methods for managing and communicating data typing information. Woodwork can be used as a part of your existing workflow to properly type your data and communicate your data types to downstream processes.

Django management commands can be very helpful while developing your application or website, we are very used to runserver, makemigrations, migrate, shell and others. Third party packages often provide extra commands and you can easily add new commands to your own apps. Lets take a look at some less known and yet very useful commands that Django provides out of the box.

Trying out a lightweight asynchronous task queue as an alternative to Celery with Django.

There are a variety of choices when it comes to libraries to assist you in adding GraphQL support to your application. The two main contenders are Graphene and Strawberry, both of which have specific Django extensions (graphene-django and strawberry-graphql-django) that use introspection on your models in building out the types for the API.

This post shows you how easy it is to manage different Python versions either on a per-user or a per-project basis with pyenv.

Interesting Projects, Tools and Libraries

A cli to provision and manage local developer environments.

A distributed task processing framework for Django built on top of the Postgres NOTIFY/LISTEN protocol.

TatSu generates Python parsers from grammars in a variation of EBNF

CaskDB is a disk-based, embedded, persistent, key-value store based on the Riak's bitcask paper, written in Python. 

rashell is a Relational Algebra Shell. It provides a domain-specific language (DSL) to define and populate relational models and a read–eval–print loop (REPL) interface to query relational models using relational algebra operations.

Store data in soundwaves.

Powerful Ethereum Smart-Contract Toolkit.

New Releases

With this release we’re introducing three new extensions: Black, isort, and Jupyter Powertoys.

Upcoming Events and Webinars

There will be a talk, How Python is Relevant to Blockchain in the Future and How to Stay Relevant.

There will be following talks

  • Building Machine Learning demos and Data Applications using Python

  • Accessing Data at Scale to Power Precision Medicine with Federate Learning

Our Other Newsletters

 - A free weekly newsletter for programmers.

- A free weekly newsletter for entrepreneurs featuring best curated content, must read articles, how to guides, tips and tricks, resources, events and more.