Issue #428

Async Tribalism, "Wrong" Ways To Close a File, Django User Management, and More

July 7, 2020

Async Tribalism, "Wrong" Ways To Close a File, Django User Management, and More
#428 – JULY 7, 2020 VIEW IN BROWSER
The PyCoder’s Weekly Logo
Announcing Pylance: Fast, Feature-Rich Language Support for Python in Visual Studio Code
Pylance is a new Python language server for VS Code based on Microsoft’s Pyright static type checking tool. With Pylance, you get type information in function signatures and when hovering on symbols, auto import suggestions, type checking diagnostics, and so much more!
SAVANNAH OSTROWSKI

Python Async Frameworks: Beyond Developer Tribalism
In light of some recent and, at times, heated discussions regarding asynchronous programming in Python, Django Rest Framework’s creator Tom Christie calls on the community to embrace a more collaborative spirit.
TOM CHRISTIE

“Learn Python Programming” Humble Bundle
Everything you need to learn Python programming and make it stick. Support Pythonic charities like the PSF and get Python books, software, and video courses collectively valued at $1,400 for a pay-what-you-want price →
HUMBLEBUNDLE.COMsponsor

A Contrarian View on Closing Files
You’ve may have heard that the “right” way to open a file in Python is to use the open() function inside of a with statement. But is that always the right choice?
ARIC COADY opinion

Flask Project Setup: TDD, Docker, Postgres and More
Learn one way to set-up a Flask project, including how to handle project requirements, configuration and environment variables, writing and running tests, and containerizing the application with Docker. When you’re done reading part one at the link above, check out part two.
LEONARDO GIORDANI

Get Started With Django Part 2: Django User Management
In this step-by-step tutorial, you’ll learn how to extend your Django application with a user management system, complete with email sending and third-party authentication.
REAL PYTHON

Deploying and Hosting a Machine Learning Model With FastAPI and Heroku
Getting machine learning models into production is an often-overlooked topic. Learn how to serve a model in just a handful of lines of Python using FastAPI and Heroku.
MICHAEL HERMAN • Shared by Michael Herman

2020 Python Software Foundation Board of Directors Election Retrospective and Next Steps
ERNEST W. DURBIN III

Python 3.9.0b4 Is Now Ready for Testing
CPYTHON DEV BLOG


Discussions


What Is the Core of the Python Programming Language?
Last week we featured Brett Cannon’s article with the same title. Well, the post has generated quite a discussion on Hacker News.
HACKER NEWS

Why Do NaN Values Make min() and max() Sensitive to Order?
How NaNs compare to numerical values and the implications of that in min() and max() might be surprising.
STACK OVERFLOW

Why Do People Use .format() When f-Strings Exist?
f-Strings aren’t exactly a drop-in replacement for .format().
REDDIT


Python Jobs


Python Tutorial Authors Wanted (Remote)
REAL PYTHON

Senior Software Engineer - Python (Remote)
RAMPUP, INC

Software Engineer (Java, Python) (San Diego, CA, USA)
PROFESSIONAL SEARCH GROUP (PSG)

Splunk with Python (Philadelphia, PA, USA)
VASTIKA INC.

More Python Jobs >>>


Articles & Tutorials


A Labyrinth of Lies
What should you do after watching 1986’s puppet-laden musical fantasy Labyrinth? Code up the guard scene in Python, of course! After you read Moshe’s solution to the infamous “Two Door Riddle” at the link above, check out Glyph Lefkowitz‘s “professionalized” version of the code.
MOSHE ZADKA

Massive Memory Overhead: Numbers in Python and How NumPy Helps
In Python, everything is an object. Even numbers. While this has advantages, objects have a memory overhead that might be unexpected. While this overhead is often negligible, it might be the difference between 8GB and 35GB in extreme cases.
ITAMAR TURNER-TRAURING

[Career Track] Data Scientist With Python
Are you just learning Python, super experienced, or somewhere in between? Get hands-on experience with some of the most popular Python libraries and work with real-world datasets to learn statistics, machine learning techniques, and more →
DATACAMP INCsponsor

Ten Reasons to Use StaticFrame Instead of Pandas
For those coming from pandas, StaticFrame offers a more consistent interface and reduces opportunities for error. This article demonstrates ten reasons you might use StaticFrame instead of Pandas.
CHRISTOPHER ARIZA • Shared by Christopher Ariza

How to Use the Python Filter Function
Python’s built-in filter() function can be used to create a new iterator from an existing iterable with certain elements removed based on some criterion.
KATHRYN HANCOX

Profile, Understand & Optimize Python Code Performance
You can’t improve what you can’t measure. Profile and understand Python code’s behavior and performance (Wall-time, I/O, CPU, HTTP requests, SQL queries). Get up and running in minutes. Browse through appealing graphs.
BLACKFIREsponsor

Thinking in Pandas: Python Data Analysis the Right Way
Are you using the Python library Pandas the right way? Do you wonder about getting better performance, or how to optimize your data for analysis? What does normalization mean? This week Hannah Stepanek joins the podcast to discuss her new book “Thinking in Pandas”.
REAL PYTHON podcast

Object-Oriented Programming (OOP) in Python 3
In this freshly updated OOP tutorial, you’ll learn all about object-oriented programming in Python. You’ll learn the basics of the OOP paradigm and cover concepts like classes and inheritance.
REAL PYTHON

Tutorial: Add a Column to a Pandas DataFrame Based on an If-Else Condition
If you’re new to pandas, you might be tempted to add a column to a DataFrame based on a condition using an if statement. But there’s a better way!
CHARLIE CUSTER • Shared by Charlie Custer

Darts: Time Series Made Easy in Python
Darts is a new library from Unit8 that offers a single package for end-to-end machine learning on time series.
JULIEN HERZEN


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 →

EasyOCR: Ready-To-Use OCR With 40+ Languages Supported Including Chinese, Japanese, Korean and Thai
GITHUB.COM/JAIDEDAI

python-keyboard: A Hand-Wired USB & BLE Keyboard Powered by Python
GITHUB.COM/MAKERDIARY

static-frame: Immutable Data Structures for One- And Two-Dimensional Calculations With Self-Aligning, Labelled Axes
GITHUB.COM/INVESTMENTSYSTEMS

isort: A Python Utility for Sorting Imports
GITHUB.COM/TIMOTHYCROSLEY

darts: A Python Library for Easy Manipulation and Forecasting of Time Series
GITHUB.COM/UNIT8CO

pygooglenews: If Google News Had a Python Library
GITHUB.COM/KOTARTEMIY

guietta: A Tool for Making Simple Python GUIs
GITHUB.COM/ALFIOPUGLISI

texthero: Text Preprocessing, Representation and Visualization From Zero to Hero
GITHUB.COM/JBESOMI

ether-automaton: Pretty Pixel Animations via the Game of Life
GITHUB.COM/ETHER-AUTOMATON • Shared by anfederico

strongtyping: Runtime Type Checking Decorator for Your Python Functions
GITHUB.COM/FELIXTHEC

django-pgtrigger: Postgres Triggers Integrated With Django Models
GITHUB.COM/JYVEAPP • Shared by Wes Kendall

📆🐍 Upcoming Python Events


⋅ SciPy 2020 (Virtual Conference) July 6 to July 13, 2020

⋅ PyMNTos (Virtual Meetup) July 9, 2020

⋅ Python Atlanta (Virtual Meetup) July 9, 2020
Happy Pythoning!
Copyright © 2020 PyCoder’s Weekly, All rights reserved.