I’ve Switched to UV for Python, and So Should You | Issue #31


Hi there,

Dependency management in Python just got a major upgrade. Say hello to uv, an insanely fast package installer and resolver built in Rust.

In this week’s video, I’ll show you how uv works and why it’s a game-changer for Python developers. Imagine pip, but turbocharged: faster installs, quicker resolutions, and total compatibility with your current workflows.

Here’s what you’ll learn:

✔️ Why uv outperforms pip

✔️ How to integrate uv into your projects today

✔️ The magic behind its speed

This isn’t just another Python tool—it’s the productivity boost your workflow has been waiting for.


Enjoy the video and happy coding!

Cheers,

Arjan

# News

Under the Hood | FastAPI

Last week marked the final Under the Hood livestream of the year! 🚀 This time, we dove deep into one of the most popular libraries out there: FastAPI. Yes, that’s right!

🤔 Missed the livestream? No worries! You can still catch all the action and insights here.

Don’t forget to share your thoughts in the comments and let me know what library you’d love to see featured next year!

PyPI Warning: Malicious Package Found! 🚨

A new threat, aiocpa, was discovered on PyPI, stealing sensitive data like SSH keys and environment variables. This serves as a reminder to stay vigilant: always verify packages, use virtual environments, and scan dependencies for vulnerabilities. 🛡️ Stay safe and secure! Read the full article by The Hacker News here.

# Community

In ArjanCodes’ Discord, a member recently shared their Python script for feedback, sparking an engaging discussion on cleaner, more maintainable code. The community explored everything from keeping dataclasses focused 🎯 to naming functions with clarity, and even debated smarter error handling using tools like loguru 🛠.

The thread is packed with tips, debates, and insights! 🚀 Curious to read the full thread and join the conversation? Our Discord community is waiting for you!


Do you enjoy my content on YouTube and would you like to dive in deeper? Check out my online courses below. They've helped thousands of developers take the next step in their careers.

🚀 The Mindset Online Course Series

The goal of this series is to help junior developers grow their skills to become senior developers faster.

💥 Other Courses

💡 If you’re part of a development team at a company, I offer special packages for companies that give your team the tools to consistently write high-quality code and dramatically increase your team's productivity.

Unsubscribe | Send by ArjanCodes

Wolvenplein 25, Utrecht, UT 3512 CK

The Friday Loop

Every Friday, you'll get a recap of the most important and exciting Python and coding news. The Friday Loop also keeps everyone posted on new ArjanCodes courses and any limited offers coming up.

Read more from The Friday Loop

AI can write code now. But you already knew that :). If you’ve tried using AI seriously, you’ve probably noticed something: the code works (kind of) and then slowly turns into a mess. In this week’s video, I show why prompting alone isn’t enough and why software design is becoming more important, not less, in an AI-driven world. I walk through a real interaction with an AI coding assistant and show how thinking in terms of responsibilities, structure, and system boundaries completely changes...

In a recent video on refactoring complicated business logic, I managed to introduce several subtle errors. Many of you immediately spotted them in the comments. That’s exactly what my first video in 2026 is about. I walk through the mistakes I made, explain why they happened, and show how easy it is to accidentally change behavior when you refactor code. Even with tests in place and decent coverage, assumptions can sneak in, business rules can shift, and logic can quietly break without anyone...

You’ve tested the endpoint. The response looks right. No errors in the terminal. So you’re done, right? Well... not quite. In the last video of this year (time flies!) I start with a tiny FastAPI app that "works", and step by step, I turn it into something that’s actually ready for production (and that's more work than you think). That includes: Proper type usage Input validation and error handling Configuration management Rate limiting to prevent abuse ...and more! All using a real example:...