Go for Pythonistas: What You Need to Know | Issue #40


Hi there,

Python is simple but frustrating. Rust is powerful but strict. And then there’s Go—fast, modern, and surprisingly easy to use. I put it to the test against Python and Rust, and what I found blew my mind. 🤯

Go nails concurrency, has built-in tools (no pytest or flake8 needed), and in some cases… it even beats Rust in performance. Yes, really. I built a REST API, ran benchmarks, and compared everything from syntax to error handling.

Is Go the perfect balance between Python’s simplicity and Rust’s power? Watch this week’s video to find out! 🚀

Cheers,

Arjan

# News

How to Deal With Missing Data in Polars

Polars is fast and efficient, but how does it handle missing data? 🤔

A new Real Python article explores how Polars defines "missing," how it compares to Pandas, and the best ways to fill, drop, and detect null values. If you're working with data pipelines, this is a must-read! 👉 Check out here.

Top Python Libraries of 2024

Python’s ecosystem is always evolving, and staying ahead means knowing which tools are shaping the industry.

Tryolabs recently highlighted some of the most impactful Python libraries from 2024—many of which are set to play an even bigger role this year. Here are the top Python libraries in 2024. 🚀

# Community

Recently in our Discord server, an interesting discussion sparked around a video by Dave Farley about critical warning signs in software projects.

Here are a few red flags that stood out:

🚩 Rigid planning – Overplanning makes teams resistant to change, even when it’s obvious the plan isn’t working.

🚩 The “hero developer” trap – Relying on a few rock stars instead of building resilient teams.

🚩 Big risky changes – Instead of “Many More Much Smaller Steps” (MMMSS), teams often take big leaps that increase failure rates.

🚩 Strict control policies – Some teams require approval just to add a new class! This often happens in large companies with poor encapsulation, where changing one system risks breaking everything.

These discussions remind me how good software design can mitigate many of these issues. Functional programming, strong modularization, and clear feedback loops can help avoid these pitfalls.

👉 Have you ever worked in a team where even adding a class required approval? How did it impact productivity? Join the conversation in our Discord server and share your thoughts!


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 everyone, I love it when I come up with a design that uses exactly the things I thought were a sign of bad design. In this week's video I show you how to build a clean Python SDK for a REST API. The idea was simple: create a reusable base model that handles all the CRUD operations so you can just write User.find() and user.save(), without duplicating logic all over your codebase. Sounds great, right? Well, after recording the video, I realized something: not all APIs will have all CRUD...

Hey everyone, Python’s flexibility is great, but if you're working on a larger project it becomes hard to make sure not everything depends on everything else. There is a way to avoid that trap, and that's by using abstractions. Unfortunately, I often see production code with way too much coupling that can be easily improved by relying on abstractions. This week’s video shows simple abstractions using Callable, ABC, and Protocol. You’ll learn how to: Reduce unnecessary imports Decouple your...

Hey everyone, I was reviewing some of the projects I’ve worked on over the past year, and I noticed something interesting: I almost never use Python’s @dataclass anymore. Not because it’s bad. In fact, dataclasses are still a great feature of the language. But as my projects have grown more complex, especially with tools like FastAPI, Pydantic, and SQLAlchemy, I’ve found that dataclasses just… don’t fit the way I design software anymore. In my latest video, I dive into this in detail. You’ll...