Issue #664: Django vs FastAPI, Interacting With Python, Data Cleaning, and More (Jan. 14, 2025)

#664 – JANUARY 14, 2025

Django vs. FastAPI, an Honest Comparison

David has worked with Django for a long time, but recently has done some deeper coding with FastAPI. As a result, he’s able to provide a good contrast between the libraries and why/when you might choose one over the other.
DAVID DAHAN

Ways to Start Interacting With Python

In this video course, you’ll explore the various ways of interacting with Python. You’ll learn about the REPL for quick testing and running scripts, as well as how to work with different IDEs, and Python’s IDLE.
REAL PYTHON course

Optimize Postgres Performance and Reduce Costs with Crunchy Bridge

Discover why YNAB (You Need A Budget) switched to fully managed Postgres on Crunchy Bridge. With a 30% increase in performance and a 10% reduction in costs, YNAB leverages Crunchy Bridge’s seamless scaling, high availability, and expert support to optimize their database management →
CRUNCHY DATA sponsor

Data Cleaning in Data Science

“Real-world data needs cleaning before it can give us useful insights. Learn how how you can perform data cleaning in data science on your dataset.”
HELEN SCOTT

SciPy 1.15.0 Released

GITHUB.COM/SCIPY

Pygments 2.19 Released

PYGMENTS.ORG

PyConf Hyderabad Feb 22-23

PYCONFHYD.ORG • Shared by Poruri Sai Rahul

Discussions

PEP 8: More Nuanced Alignment Guidance

PYTHON.ORG

Python Jobs

Backend Software Engineer (Anywhere)

Brilliant.org

More Python Jobs >>>

Articles & Tutorials

Building New Structures for Learning Python

What are the new ways we can teach and share our knowledge about Python? How can we improve the structure of our current offerings and build new educational resources for our audience of Python learners? This week on the show, Real Python core team members Stephen Gruppetta and Martin Breuss join us to discuss enhancements to the site and new ways to learn Python.
REAL PYTHON podcast

Automated Accessibility Audits for Python Web Apps

This article covers how to automatically audit your web apps for accessibility standards. The associated second part covers how to do snapshot testing for the same
PAMELAFOX.ORG

Integrate Auth0 With Just a Few Lines of Code

Whether your end users are consumers, businesses, or both, Auth0 provides the foundational requirements out of the box allowing you to customize your solution with APIs, 30+ SDKs, and Quickstarts. Try Auth0 free today with up to 25K active users – no credit card needed to sign up →
AUTH0 sponsor

Software Bill of Materials Packaging Proposal

A new Python packaging proposal, PEP 770, introduces SBOM support to tackle the “phantom dependency” problem, making it easier to track non-Python components that security tools often miss.
SOCKET.DEV • Shared by Sarah Gooding

Unpacking kwargs With Custom Objects

You may have unpacked a dictionary using **kwargs mechanism in Python, but did you know you can write this capability into your own classes? This quick TIL article covers how to write a __getitem__() method.
RODRIGO GIRÃO SERRÃO

Musings on Tracing in PyPy

What started as an answer to a question on Twitter has turned into a very deep dive on tracing JITs, how they compare to method-based JITs, and how all that works in the alternative Python interpreter PyPy.
CF BOLZ-TEREICK

From Default Line Charts to Journal-Quality Infographics

“Everyone who has used Matplotlib knows how ugly the default charts look like.” In this series of posts, Vladimir shares some tricks to make your visualizations stand out and reflect your individual style.
VLADIMIR ZHYVOV

Stupid pipx Tricks

This post talks about pipx a wrapper to pip that allows you to use Python packages like applications. This post talks about the strengths and weaknesses of pipx and just what you can do with it.
KARL KNECHTEL

Towards PyPy3.11: An Update

The alternative Python interpreter PyPy is working towards a Python 3.11 compatible release. This post talks about how that is going and the challenges along the way.
PYPY.ORG

Learn SQL With Python

This tutorial teaches the fundamentals of SQL by using Python to build applications that interact with a relational PostgresSQL database.
PATRICK KENNEDY • Shared by Patrick Kennedy

PEP 769: Add a Default Keyword Argument to attrgetter and itemgetter

This proposal aims to enhance the operator module by adding a default keyword argument to the attrgetter and itemgetter functions.
PYTHON.ORG

Posit Connect Cloud: Share the Work you Make With Streamlit, FastAPI, Shiny, & Other FOSS Frameworks

Posit Connect Cloud lets you publish, host, and manage Streamlit, Dash & other apps, dashboards, APIs, and more. A centralized platform for sharing Python-based data science, it streamlines deployment and boosts collaboration—amplifying your impact.
POSIT sponsor

Unit Testing vs. Integration Testing

Discover the key differences between unit testing vs integration testing and learn how to automate both with Python.
FEDERICO TROTTA

Why Is hash(-1) == hash(-2) in Python?

Somewhat surprisingly, hash(-1) == hash(-2) in CPython. This post examines how and discovers why this is the case.
OMAIR MAJID

Projects & Code

pydantic-settings: Settings Management Using Pydantic

GITHUB.COM/PYDANTIC

IPychat: An AI Extension for IPython

GITHUB.COM/VINAYAK-MEHTA • Shared by Vinayak Mehta

Migrate a Project From Poetry/Pipenv to uv

GITHUB.COM/MKNIEWALLNER • Shared by Mathieu Kniewallner

TSignal: Thread-Safet Signal/Slot System

GITHUB.COM/TSIGNALDEV • Shared by San Kim

PhotoshopAPI: Photoshop Files Parser

GITHUB.COM/EMILDOHNE

Events

Weekly Real Python Office Hours Q&A (Virtual)

January 15, 2025
REALPYTHON.COM

PyData Bristol Meetup

January 16, 2025
MEETUP.COM

PyLadies Amsterdam

January 16, 2025
MEETUP.COM

PyLadies Dublin

January 16, 2025
PYLADIES.COM

Chattanooga Python User Group

January 17 to January 18, 2025
MEETUP.COM

PyCon+Web 2025

January 24 to January 26, 2025
PYCONWEB.COM

Happy Pythoning!
This was PyCoder’s Weekly Issue #664.
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 ]

Source:: PyCoder’s