Issue #407

Python Tooling Recommendations, Playing & Recording Sound, Virtualenv 20.0, and More

Feb. 11, 2020

Python Tooling Recommendations, Playing & Recording Sound, Virtualenv 20.0, and More
#407 – FEBRUARY 11, 2020 VIEW IN BROWSER
The PyCoder’s Weekly Logo
Understanding Best-Practice Python Tooling by Comparing Popular Project Templates
“Use Flake8, pytest, and Sphinx in your current Python project. Also evaluate pre-commit, black, and Pylint. For your next project, consider adding poetry and Dependabot.”
JONAS KEMPER

Playing and Recording Sound in Python
Learn about libraries that can be used for playing and recording sound in Python, such as PyAudio and python-sounddevice. You’ll also see code snippets for playing and recording sound files and arrays, as well as for converting between different sound file formats.
REAL PYTHON video

Automate & Standardize Code Reviews for Python
Take the hassle out of code reviews - Codacy flags errors automatically, directly from your Git workflow. Customize standards on coverage, duplication, complexity & style violations. Use in the cloud or on your servers for 30 different languages. Get started for free →
CODACYsponsor

Understand Group by in Django With SQL
Understand GROUP BY in Django ORM by comparing QuerySets and SQL side by side. If SQL is where you are most comfortable, this is the Django GROUP BY tutorial for you.
HAKI BENITA

TV Backlight Compensation With Python & Custom Shaders
Extending a broken TV’s lifetime with Python code and some custom shaders. Impressive!
PEKKA VÄÄNÄNEN

Applying Mypy to Real-World Projects
Hints and tips for getting started with Mypy and introducing it to existing projects.
CAL PATERSON

Virtualenv 20.0 Released
PYPA.IO


Discussions


Learn Python the NSA Way…
“I put in a FOIA request to the NSA for their Python training materials and got back a 400-page printout of their COMP 3321 training course. So, I scanned and OCR’d it. Here is a PDF (warning: 118 MB)”
TWITTER.COM/CHRIS_SWENSON

Getting Started Contributing to CPython
GUIDO VAN ROSSUM


Python Jobs


Senior Software Engineer Python/Django (London, UK)
ZEGO

Python Developer (Malta)
GAMING INNOVATION GROUP

Sr Software Engineer Backend (Denver, CO, USA)
CYBERGRX

Senior Software Developer (Vancouver, BC, Canada)
ABCELLERA

More Python Jobs >>>


Articles & Tutorials


Create a macOS Menu Bar App With Python (Pomodoro Timer)
“On my Mac, I use the menu bar countless times per day. In this post we will go through the process of creating a custom macOS menu bar app using Python.”
CAMILLO VISINI • Shared by Camillo Visini

Implementing an Interface in Python
In this tutorial, you’ll explore how to use a Python interface. You’ll come to understand why interfaces are so useful and learn how to implement formal and informal interfaces in Python. You’ll also examine the differences between Python interfaces and those in other programming languages.
REAL PYTHON

Become a Python Guru With PyCharm
PyCharm is the Python IDE for Professional Developers by JetBrains providing a complete set of tools for productive Python, Web and scientific development. Be more productive and save time while PyCharm takes care of the routine →
JETBRAINSsponsor

SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python
“In this work, we provide an overview of the capabilities and development practices of SciPy 1.0 and highlight some recent technical developments.”
NATURE.COM

Prevent Repetition With Assignment Expressions
An assignment expression—also known as the walrus operator—is a new syntax introduced in Python 3.8 to solve a long-standing problem with the language that can cause code duplication.
BRETT SLATKIN

Python Command Line Arguments
Python command line arguments are the key to converting your programs into useful and enticing tools that are ready to be used in the terminal of your operating system. In this step-by-step tutorial, you’ll learn their origins, standards, and basics, and how to implement them in your program.
REAL PYTHON

The Parallelism Blues: When Faster Code Is Slower
“As it turns out, for certain operations NumPy will parallelize operations transparently. And if you’re not careful, this can actually slow down your code.”
ITAMAR TURNER-TRAURING

sys.getsizeof Is Not What You Want
sys.getsizeof is almost never what you want, for two reasons: it doesn’t count all the bytes, and it counts the wrong bytes.”
NED BATCHELDER

Python asyncio and await-ing Multiple Functions
How to call await on multiple functions in Python using the asyncio package.
ERIC URBAN

Cheating in Kaggle Contests (A Post-Mortem)
KAGGLE.COM • Shared by Python Bytes FM

Auto-Formatting Python Code Using YAPF
LEI MAO

How to Check if a File Is a Valid Image With Python
MIKE DRISCOLL


Projects & Code


hydra: Framework for Configuring Complex Applications
GITHUB.COM/FACEBOOKRESEARCH

cookiecutter-data-science: Project Template for Doing and Sharing Data Science Work
GITHUB.COM/DRIVENDATA

pytorch3d: Reusable Components for Deep Learning With 3D Data
GITHUB.COM/FACEBOOKRESEARCH

Diagrams: Generate System Architecture Diagrams With Python Code
GITHUB.COM/MINGRAMMER

opnieuw: General-Purpose Retrying Library
GITHUB.COM/CHANNABLE

Celery Director: Manage Tasks and Build Workflows Using Celery
GITHUB.COM/OVH • Shared by Nicolas Crocfer

donkeycar: Small Scale Self Driving Car Platform
GITHUB.COM/AUTOROPE

📆🐍 Upcoming Python Events


⋅ PyCon Namibia 2020 February 18 to February 21, 2020

⋅ Open Source Festival Africa February 20 to February 23, 2020

⋅ PyCon Belarus 2020 February 21 to February 23, 2020
Happy Pythoning!
Copyright © 2020 PyCoder’s Weekly, All rights reserved.