I love listening Talk Python To Me Podcast, a weekly podcast hosted by Michael Kennedy dedicated to the people and ideas in Python. The show covers a wide array of Python topics as well as many related topics (e.g. MongoDB, AngularJS, DevOps). He has a casual 45 minute conversation with industry experts. At the end of each episode, Michael asks two questions:
- If you're going to write some Python code. What editor do you use?
- Any notable PyPI (or Conda and sometimes npm) package?
This is a community & unofficial compilation of those amazing Notable PyPI (or Conda) Python Packages highligted at the end of the show.
- Title: Making Python Faster with Guido and Mark
- Published Thu, Nov 4, 2021, recorded Mon, Nov 1, 2021.
- Guests: Guido van Rossum @gvanrossum | Mark Shannon LinkedIn
No notable package was mentioned during this episode, but we appreciate the ongoing work for making Python faster (one step at the time).
- Title: Using cibuildwheel to manage the scikit-HEP packages
- Published Sun, Oct 17, 2021, recorded Thu, Oct 14, 2021.
- Guest: Henry Schreiner @HenrySchreiner3
Package: plotext - Plots data directly on terminal. PyPi | Homepage | Source Code
CLI lovers 📣, plotext plots directly on terminal, it has no dependencies and the syntax is very similar to matplotlib. It also provide a simple command line tool.
- Title: Kedro for Maintainable Data Science
- Published Sat, Oct 9, 2021, recorded Fri, Oct 1, 2021.
- Guests: Waylon Walker @_WaylonWalker | Yetunde Dada @yetudada | Ivan Danov @ivandanov
Package #1: fsspec - Filesystem interfaces for Python. PyPi | Homepage | Source Code
Filesystem Spec (fsspec) is a project to provide a unified pythonic interface to local, remote and embedded file systems and bytes storage. As described, tread a remove database as local file!
Package #2: Dynaconf - Configuration Management for Python. PyPi | Homepage | Source Code
Lazy setting loader on steroids!
- Title: Terminal magic with Rich and Textual
- Published: Tue, Oct 5, 2021, recorded Mon, Sep 27, 2021.
- Guest: Will McGugan @willmcgugan
Package: Objexplore - Interactive Python Object Explorer. PyPi | Homepage | Source Code
Objexplore is an interactive Python object explorer for the terminal. Use it while debugging, or exploring a new library, or whatever!
- Title: Gene Editing with Python
- Published Fri, Sep 24, 2021, recorded Wed, Sep 15, 2021.
- Guest: David Born @Hypostulate | Beam Therapeutics
Package #1: AWS Cloud Development Kit (AWS CDK). PyPi | Homepage | Source Code
The AWS Cloud Development Kit (AWS CDK) is an open-source software development framework to define cloud infrastructure in code and provision it through AWS CloudFormation.
Package #2: Luigi - Workflow mgmgt + task scheduling + dependency resolution. PyPi | Homepage | Source Code
Luigi is a Python (3.6, 3.7, 3.8, 3.9 tested) package that helps you build complex pipelines of batch jobs. It handles dependency resolution, workflow management, visualization, handling failures, command line integration, and much more.
- Title: Microsoft Planetary Computer
- Published Sat, Sep 18, 2021, recorded Thu, Sep 9, 2021.
- Guests: Rob Emanuele @lossyrob | Tom Augspurger @TomAugspurger
Package: Seaborn - Statistical Data Visualization. PyPi | Homepage | Source Code
Seaborn is a Python visualization library based on matplotlib. It provides a high-level interface for drawing attractive statistical graphics. If matplotlib is for Android users, seaborn is for iPhone users!
- Title: State of Data Science in 2021
- Published Fri, Sep 10, 2021, recorded Thu, Sep 9, 2021
- Guest: Stan Seibert @seibert
Package: CuPy - NumPy & SciPy for GPU. PyPi | Homepage | Source Code
CuPy is an open-source array library for GPU-accelerated computing with Python. CuPy utilizes CUDA Toolkit libraries including cuBLAS, cuRAND, cuSOLVER, cuSPARSE, cuFFT, cuDNN and NCCL to make full use of the GPU architecture. Basically, NumPy & SciPy on steroids!
- Title: Robust Python
- Published Tue, Aug 31, 2021, recorded Mon, Aug 30, 2021.
- Guest: Patrick Viafore @PatViaforever
Package: Stevedore - Manage dynamic plugins for Python applications. PyPi | Homepage | Source Code
Python makes loading code dynamically easy, allowing you to configure and extend your application by discovering and loading extensions ("plugins") at runtime. Many applications implement their own library for doing this, using import or importlib. Stevedore avoids creating yet another extension mechanism by building on top of setuptools entry points. The code for managing entry points tends to be repetitive, though, so stevedore provides manager classes for implementing common patterns for using dynamically loaded extensions.
- Title: Meet the Python Developer in Residence: Lukasz Langa
- Published Fri, Aug 27, 2021, recorded Wed, Aug 25, 2021.
- Guest: Łukasz Langa @llanga
The question was not asked, but since Łukasz is the author of Black... here we go!
Package: Black - The uncompromising code formatter. PyPi | Homepage | Source Code
Black is the uncompromising Python code formatter. By using it, you agree to cede control over minutiae of hand-formatting. In return, Black gives you speed, determinism, and freedom from pycodestyle nagging about formatting. You will save time and mental energy for more important matters. We all love Black!
- Title: Apache Airflow Open-Source Workflow with Python
- Published Fri, Aug 20, 2021, recorded Thu, Aug 5, 2021.
- Guests: Jarek Potiuk LinkedIn | Kaxil Naik @kaxil | Leah Cole @leahecole
The question was not asked, but since the team talked about Airflow..
Package: Apache Airflow - Programmatically author, schedule and monitor data pipelines. PyPi | Homepage | Source Code
Airflow is a platform created by the community to programmatically author, schedule and monitor workflows. Airflow works best with workflows that are mostly static and slowly changing. When the DAG structure is similar from one run to the next, it clarifies the unit of work and continuity. Other similar projects include Luigi, Oozie and Azkaban.
Airflow is commonly used to process data, but has the opinion that tasks should ideally be idempotent (i.e., results of the task will be the same, and will not create duplicated data in a destination system), and should not pass large quantities of data from one task to the next (though tasks can pass metadata using Airflow's Xcom feature). For high-volume, data-intensive tasks, a best practice is to delegate to external services specializing in that type of work.
- Title: Geekout: Renewable Energy
- Published Fri, Aug 13, 2021, recorded Wed, Aug 4, 2021.
- Guest: Richard Campbell @richcampbell
No time for this question :-(
- Title: Piccolo: A fast, async ORM for Python (updated)
- Published Sun, Aug 8, 2021, recorded Thu, Jul 22, 2021.
- Guest: Daniel Townsend @danieltownsend
Package: Pydantic - Data validation and settings management. PyPi | Homepage | Source Code
Fast and extensible, pydantic plays nicely with your linters/IDE/brain. Define how data should be in pure, canonical Python 3.6+; validate it with pydantic.
- Title: Little Automation Tools in Python
- Published Fri, Jul 30, 2021, recorded Thu, Jul 15, 2021.
- Guests: Rivers Cuomo @RiversCuomo | Jay Miller @kjaymiller | Kim van Wyk @kim_vanwyk | Rusti Gregory @greenermountain
Package: pipx - Install and Run Python Applications in Isolated Environments. PyPi | Homepage | Source Code
This is one of the episodes with the most of packages described. Therefore, we picked the one with the best logo 😃: pipx. This is a tool to help you install and run end-user applications written in Python. It's roughly similar to macOS's brew, JavaScript's npx, and Linux's apt.
- Title: Building Desktop Apps with wxPython
- Published Fri, Jul 23, 2021, recorded Wed, Jul 14, 2021.
- Guest: Mike Driscoll @driscollis
Package: openpyxl - A Python library to read/write Excel 2010 xlsx/xlsm files. PyPi | Homepage | Source Code
- Title: MicroPython + CircuitPython
- Published Thu, Jul 15, 2021, recorded Thu, Jul 8, 2021.
- Guests: Scott @tannewt | Damien's Site
Package: HttpPy - More comfortable requests with python. PyPi | Homepage | Source Code
Python based HttpPy for more comfortable requests. Great replacement of wget command (Windows users, most welcome 😇)
- Title: Gatorade-powered Python APIs
- Published Fri, Jul 9, 2021, recorded Thu, Jul 8, 2021.
- Guest: Rod Senra @rodsenra
Package: rich - Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal. PyPi | Homepage | Source Code
Rich is a Python library for rich text and beautiful formatting in the terminal. The Rich API makes it easy to add color and style to terminal output. Rich can also render pretty tables, progress bars, markdown, syntax highlighted source code, tracebacks, and more** - * out of the box. Hey, don't forget to try: from rich import print
, most welcome 😎
- Title: Best practices for Docker in production
- Published Sat, Jul 3, 2021, recorded Mon, Jun 14, 2021.
- Guest: Itamar Turner-Trauring @itamarst
Package: PyO3 - Using Python from Rust. PyPi | Homepage | Source Code
Rust bindings for Python, including tools for creating native Python extension modules. Running and interacting with Python code from a Rust binary is also supported.
- Title: A path into data science
- Published Fri, Jun 25, 2021, recorded Thu, Jun 10, 2021.
- Guest: Sanyam Bhutani @bhutanisanyam1
Package: fastai - Making neural nets uncool again. PyPi | Homepage | Source Code
Simplifies training fast and accurate neural nets using modern best practices.
- Title: HTMX - Clean, Dynamic HTML Pages
- Published Sat, Jun 19, 2021, recorded Tue, May 25, 2021.
- Guest: Carson Gross @htmx_org
Package: *Alpine.js PyPi | Homepage | Source Code
This is not a PyPi package, but it is an amazing: new, lightweight, JavaScript framework.
- Title: Python in the Electrical Energy Sector
- Published Sat, Jun 12, 2021, recorded Sun, Jun 6, 2021.
- Guest: Jack Simpson's Site
Package: numba - Accelerate Python Functions by compiling Python code using LLVM. PyPi | Homepage | Source Code
Numba translates Python functions to optimized machine code at runtime using the industry-standard LLVM compiler library. Numba-compiled numerical algorithms in Python can approach the speeds of C or FORTRAN. You don't need to replace the Python interpreter, run a separate compilation step, or even have a C/C++ compiler installed. Just apply one of the Numba decorators to your Python function, and Numba does the rest.
- Title: Typosquatting and Supply Chains Vulnerabilities
- Published Sun, Jun 6, 2021, recorded Wed, May 26, 2021.
- Guests: Bentz Tozer's email | John Speed Meyers's email
Package: NetworkML - Device Functional Role ID via Machine Learning and Network Traffic Analysis. PyPi | Homepage | Source Code
NetworkML is the machine learning portion of our Poseidon project. The model in networkML classifies each device into a functional role via machine learning models trained on features derived from network traffic. "Functional role" refers to the authorized administrative purpose of the device on the network and includes roles such as printer, mail server, and others typically found in an IT environment. Our internal analysis suggests networkML can achieve accuracy, precision, recall, and F1 scores in the high 90's when trained on devices from your own network. Whether this performance can transfer from IT environment to IT environment is an active area of our research. Dear network administrator 🏃🏃🏃🏃🏃, NetworkML predicts the functional role of network-connected device via network traffic analysis and machine learning.
- Title: Measuring your ML impact with CodeCarbon
- Published Fri, May 28, 2021, recorded Wed, May 19, 2021.
- Guests: Victor Schmidt @vict0rsch | Jonathan Wilson's Webpage | Boris Feld @Lothiraldan
Package #1: rich - Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal. PyPi | Homepage | Source Code
Rich is a Python library for rich text and beautiful formatting in the terminal. The Rich API makes it easy to add color and style to terminal output. Rich can also render pretty tables, progress bars, markdown, syntax highlighted source code, tracebacks, and more — out of the box. Hey, don't forget to try: from rich import print
, most welcome 😎
Package #2: FastAPI - A-W-E-S-O-M-E web framework for building APIs. PyPi | Homepage | Source Code
FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. In addition to the API type check feature, I think that the automatic interactive API documentation provided by Swagger UI is 🤯
- Title: Python at the US Federal Election Commission
- Published Fri, May 21, 2021, recorded Wed, May 19, 2021.
- Guest: Laura Beaufort @laurabeaufort
Package: Flask-SQLAlchemy - Adds SQLAlchemy support to your Flask application. PyPi | Homepage | Source Code
Flask-SQLAlchemy is an extension for Flask that adds support for SQLAlchemy to your application. It aims to simplify using SQLAlchemy with Flask by providing useful defaults and extra helpers that make it easier to accomplish common tasks.
- Title: Flask 2.0
- Published Fri, May 14, 2021, recorded Mon, May 10, 2021.
- Guests: David Lord @davidism | Philip Jones @pdgjones
Package #1: Pydantic - Data validation and settings management. PyPi | Homepage | Source Code
Data validation and settings management using python type annotations. pydantic
enforces type hints at runtime, and provides user friendly errors when data is invalid.
Package #2: AutoInvent - Libraries for generating GraphQL API and UI from data. PyPi | Homepage | Source Code
Magql is a GraphQL framework for Python. It generates a full-featured, customizable GraphQL API for your data. It's pronounced "magical", and it is!
Package #3: trio - A friendly Python library for async concurrency and I/O. PyPi | Homepage | Source Code
The Trio project’s goal is to produce a production-quality, permissively licensed, async/await-native I/O library for Python. Like all async libraries, its main purpose is to help you write programs that do multiple things at the same time with parallelized I/O.
- Title: Awesome FastAPI extensions and add ons
- Published Fri, May 7, 2021, recorded Thu, Apr 22, 2021.
- Guest: Michael Herman @mikeherman
Package #1: flake8-docstrings PyPi | Homepage | Source Code
A simple module that adds an extension for the fantastic pydocstyle tool to flake8.
Package #2: hotwire-django PyPi | Homepage | Source Code
This repository aims to help you integrate Hotwire with Django🚀. Inspiration might be taken from @hotwired/hotwire-rails.
- Title: Ask us about modern Python projects and tools
- Published Fri, Apr 30, 2021, recorded Mon, Apr 19, 2021.
- Guest: Sebastian Witowski @SebaWitowski
Package: Awesome Python - Life is short, you need Python. PyPi | Homepage | Source Code
A curated list of awesome Python frameworks, libraries, software and resources. Inspired by awesome-php.
- Title: Automate your data exchange with PyDantic
- Published Thu, Apr 22, 2021, recorded Wed, Apr 14, 2021.
- Guest: Samuel Colvin @samuel_colvin
Package: Starlette - The little ASGI library that shines. PyPi | Homepage | Source Code
Starlette is a lightweight ASGI framework/toolkit, which is ideal for building high performance async services.
- Title: Python Apps that Scale to Billions of Users
- Published Sun, Apr 18, 2021, recorded Thu, Apr 8, 2021.
- Guest: Julien Danjou @juldanjou
Package: tenacity - Retry code until it succeeds PyPi | Homepage | Source Code
Tenacity is an Apache 2.0 licensed general-purpose retrying library, written in Python, to simplify the task of adding retry behavior to just about anything. It originates from a fork of retrying which is sadly no longer maintained. Tenacity isn't api compatible with retrying but adds significant new functionality and fixes a number of longstanding bugs.
- Title: Get inside the .git folder
- Published Thu, Apr 8, 2021, recorded Thu, Apr 1, 2021.
- Guest: Rob Richardson @rob_rich
Package: git-hooks-js - Utility for managing and running project git hooks for nodejs projects. PyPi npm | Homepage | Source Code
git-hooks is an utility for managing and running project git hooks for nodejs projects. It has zero dependecies and easy to use. Just install git-hooks and it will run your hooks when a hook is called by git.
- Title: AMA (Ask Me Anything) with Michael
- Published Fri, Apr 2, 2021, recorded Wed, Mar 31, 2021.
- Guests: Kim van Wyk @kim_vanwyk | Patrik Hlobil @hlobilpatrik
Package #1: pySerial - Python Serial Port Extension. PyPi | Homepage | Source Code
This module encapsulates the access for the serial port. It provides backends for Python running on Windows, OSX, Linux, BSD (possibly any POSIX compliant system) and IronPython. The module named "serial" automatically selects the appropriate backend.
Package #2: Click - Composable command line interface toolkit. PyPi | Homepage | Source Code
Click is a Python package for creating beautiful command line interfaces in a composable way with as little code as necessary. It’s the “Command Line Interface Creation Kit”. It’s highly configurable but comes with sensible defaults out of the box. It aims to make the process of writing command line tools quick and fun while also preventing any frustration caused by the inability to implement an intended CLI API.
- Title: What ML Can Teach Us About Life: 7 Lessons
- Published Fri, Mar 26, 2021, recorded Fri, Mar 19, 2021.
- Guest: Eugene Yan @eugeneyan
Package: Pytest - Simple powerful testing with Python. PyPi | Homepage | Source Code
The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. Can you belive that Brian Okken has a book about it? lol
- Title: Docker for Python Developers (2021 Edition)
- Published Sat, Mar 20, 2021, recorded Tue, Mar 9, 2021.
- Guest: Peter McKee @pmckee
Package: testcontainers-python - Test almost anything that can run in a Docker container. PyPi | Homepage | Source Code
Testcontainers-python provides capabilities to spin up docker containers (such as a database, Selenium web browser, or any other container) for testing.
- Title: Python from 1994 to 2021, my how you've grown!
- Published Thu, Mar 11, 2021, recorded Thu, Mar 4, 2021.
- Guests: Paul Everitt @paulweveritt | Barry Warsaw @pumpichank
There was no time for notable package, but it was an great episode!
- Title: Scaling Python and Jupyter with ZeroMQ
- Published Fri, Mar 5, 2021, recorded Thu, Feb 11, 2021.
- Guest: Min Ragan-Kelley @minrk
Package: cibuildwheel - Build Python wheels on CI with minimal configuration. PyPi | Homepage | Source Code
Python wheels are great. Building them across Mac, Linux, Windows, on multiple versions of Python, is not. cibuildwheel
runs on your CI server - currently it supports GitHub Actions, Azure Pipelines, Travis CI, AppVeyor, CircleCI, and GitLab CI - and it builds and tests your wheels across all of your platforms.
- Title: Python community at Python Discord
- Published Mon, Mar 1, 2021, recorded Thu, Feb 11, 2021.
- Guest: Leon Sandøy @lemonsaurus_rex
Package: async-rediscache - An easy to use asynchronous Redis cache. PyPi | Homepage | Source Code
This package offers several data types to ease working with a Redis cache in an asynchronous workflow. The package is currently in development and it's not recommended to start using it in production at this point.
- Title: asyncio all the things with Omnilib
- Published Sun, Feb 21, 2021, recorded Tue, Feb 16, 2021.
- Guest: John Reese @n7cmdr
Package: seinfeld - Query a Seinfeld quote database PyPi | Homepage | Source Code
Python library for querying Seinfeld quotes. Oh yeah, Seinfeld.
- Title: Python for Astronomy with Dr. Becky
- Published Fri, Feb 12, 2021, recorded Thu, Feb 4, 2021.
- Guest: Dr. Becky Smethurst @drbecky_
Package: notebook - A web-based notebook environment for interactive computing. PyPi | Homepage | Source Code
The Jupyter Notebook is a web application that allows you to create and share documents that contain live code, equations, visualizations, and explanatory text. The Notebook has support for multiple programming languages, sharing, and interactive widgets.
- Title: The Data Engineering Landscape in 2021
- Published Thu, Feb 4, 2021, recorded Fri, Jan 29, 2021.
- Guest: Tobias Macey @TobiasMacey
Package: dagster - A data orchestrator for machine learning, analytics, and ETL. PyPi | Homepage | Source Code
An orchestration platform for the development, production, and observation of data assets. Dagster lets you define jobs in terms of the data flow between reusable, logical components, then test locally and run anywhere. With a unified view of jobs and the assets they produce, Dagster can schedule and orchestrate Pandas, Spark, SQL, or anything else that Python can invoke. Dagster is designed for data platform engineers, data engineers, and full-stack data scientists. Building a data platform with Dagster makes your stakeholders more independent and your systems more robust. Developing data pipelines with Dagster makes testing easier and deploying faster.
- Title: Deploying and running Django web apps in 2021
- Published Thu, Jan 28, 2021, recorded Tue, Jan 19, 2021.
- Guests: Will Vincent's Web | Carlton Gibson @carltongibson
Package: bleach - An easy safelist-based HTML-sanitizing tool. PyPi | Homepage | Source Code
Bleach is an allowed-list-based HTML sanitizing library that escapes or strips markup and attributes. Bleach can also linkify text safely, applying filters that Django's urlize filter cannot, and optionally setting rel attributes, even on links already in the text. Bleach is intended for sanitizing text from untrusted sources. If you find yourself jumping through hoops to allow your site administrators to do lots of things, you're probably outside the use cases. Either trust those users, or don't.
- Title: Building a data science startup (panel)
- Published Fri, Jan 22, 2021, recorded Thu, Jan 7, 2021.
- Guest: Ines Montani @_inesmontani | Matthew Rocklin @mrocklin | Jonathon Morgan @jonathonmorgan | William Stein @wstein389
There was no time for notable package, but it was an great episode!
- Title: Personal search engine with datasette and dogsheep
- Published Sun, Jan 17, 2021, recorded Wed, Nov 18, 2020.
- Guest: Simon Willison @simonw
Package: flynt - string formatting converter. PyPi | Homepage | Source Code
flynt is a command line tool to automatically convert a project's Python code from old "%-formatted" and .format(...) strings into Python 3.6+'s "f-strings".