Try This if You Don’t Like Python’s Exception Handling | Issue #30


Hi there,

If you’ve ever wished Python was more like Rust when it comes to handling errors, I have good news! Well, almost. 😉

In this week’s video, I introduce the returns package—a functional programming library that handles errors without exceptions. The Maybe and Result containers make error handling smooth, while railway-oriented programming keeps your code on track.

But before you dive in, there’s a catch: this approach can add complexity, and it’s not ideal for every project. Watch the video to learn how returns could (or might not) work for you!


Enjoy the video and happy coding!

Cheers,

Arjan

# News

See Squish in Action: Automate Your UI Tests with Ease

Still dealing with slow, manual testing processes? Today’s sponsor, Squish, can help you automate complex UI tests across multiple platforms—quickly and effectively.

What Squish offers:

✅ Supports Java, Windows, mobile, and more.

✅ Reduces test maintenance with adaptable scripting.

✅ Compatible with all leading CI/CD tools.

✅ Enhance test coverage with minimal effort.

Discover how Squish can optimize your testing. Click here to take their tour and see how it works in real-world scenarios!

You Want Modules, Not Microservices

Thinking of diving into microservices? Ted Neward’s article, makes a compelling case for sticking with modules. While microservices promise flexibility, they often come with heavy complexity—distributed systems, latency, data consistency issues—that don’t always pay off.

For many projects, a well-structured modular monolith can offer the benefits without the added headache. Curious? 👉 Check out the full article here.

Malicious Package Found Stealing AWS Keys from Thousands of Developers

Security heads-up! 🚨 A new malicious PyPI package named "fabrice" has been discovered, targeting developers by embedding harmful code right in the package.

Once installed, it opens the door for remote attackers to compromise your system and data. If you or your team work with Python packages, now’s a great time to double-check dependencies and stay vigilant. Get the full details in the article here.

# Community

Our Discord community recently had a great conversation about managing JWT (JSON Web Token) refresh, tackling questions like whether to check for token expiry on each request, the pros and cons of handling it client-side vs. server-side, and alternatives for session management. Members shared insights on using tools like Flask, Supabase, and Firebase, exploring the security and technical considerations behind each approach.

Curious to read more and join the discussion? 🤓💬 Head over to our Discord server, where these in-depth conversations are happening every day!

P.S. Last week, I shared a thread about Advent of Code —a fantastic programming challenge where you solve 25 puzzles to help Santa 🎅. It’s not too late to join, and many of you loved the thread! Click here to dive into the fun and test your skills! 🎄


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

Hey there, Heard of MCP? It stands for Model Context Protocol: an open standard that lets AI models like Claude or ChatGPT connect to real tools and data. In my latest video, I explain what MCP actually is, and show a working example where Claude can search YouTube videos using MCP. In the video you’ll learn: Why AI models can’t just call your API How MCP bridges that gap Two ways to structure your MCP integration Happy coding! Cheers, Arjan # News Upcoming Python Documentary CultRepo...

Hi there, We all use def to define functions in Python. But did you know there are at least 7 other ways to do it? Some of them are useful. Some are questionable. And the last one is so ridiculous, it might crash your interpreter. In this week’s video, I walk through each method, explain how it works, why you should use it (or not), and what it teaches us about how Python works under the hood. This was a really interesting topic to explore. I learned a lot from it and I hope you will too....

Hi there, Functional programming in Python can be elegant… but not always. ⚠️ In this week’s video, I walk through four common scenarios where replacing for loops with map() and filter() actually leads to worse code. Not just less readable—but also harder to debug, more error-prone, and sometimes even misleading. We’ll dive into: Exception handling that becomes a mess inside a lambda Side effects (like writing to files) that violate functional principles Nested logic that turns into...