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.
Share
Try This if You Don’t Like Python’s Exception Handling | Issue #30
Published 12 months ago • 2 min read
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.
The Software Architect Mindset - Learn the mindset that will allow you to effortlessly build and maintain scalable software systems. Become a software architect.
The 30-Day Design Challenge - Get the practice you're missing. Learn to deal with a wide variety of software design problems.
💡 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.
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.
Hi there, Most apps only store the final result: the current balance, the current inventory, the current status. But what if you could track every change that led to that result? That’s exactly what the event sourcing pattern allows you to do. Instead of overwriting state, you store a sequence of immutable events and derive the current state by replaying them. It’s like Git (kinda), but for your domain logic. In this week’s video, I show you how to implement event sourcing in Python from...
Hi there, If you’ve been learning Python for a while and still feel like you’re not improving, you’re not alone. Python feels easy at first. The syntax is clean, the barrier to entry is low, and you can build something useful in your first hour. But then… things get weird. You hit a wall. There’s object-oriented programming. Then functional programming. Then decorators, dunder methods, typing, Protocol, mypy, async… And somehow Python lets you write the same thing five different ways, and...
Hi there, You’ve probably heard developers say "That’s not very Pythonic…" But what is Pythonic code, really? Is it about using list comprehensions? Avoiding for-loops? Dressing up like Guido van Rossum? In this week’s video, I answer that question by taking a small, messy Python script and refactoring it step-by-step using the principles behind idiomatic Python. Along the way, I’ll show you what it means to think like a Python developer, using things like: Functions instead of unnecessary...