ArjanCodes - Videos
Back to ChannelThe Hidden Mechanism Behind Clean Python APIs (Descriptor Deep Dive)
🧱 Build software that lasts. Join the Software Design Mastery waiting list → https://arjan.codes/mastery. In this video, I explain what descriptors are, why attribute access in Python sometimes be...
Stop Passing Primitives Everywhere (Use Value Objects)
🧱 Build software that lasts. Join the Software Design Mastery waiting list → https://arjan.codes/mastery. In this video, I show how to use the Value Object pattern in Python to model prices, perce...
Stop Mixing FastAPI with Business Logic: Fix It with Ports & Adapters
🧱 Build software that lasts. Join the Software Design Mastery waiting list → https://arjan.codes/mastery. In this video, I refactor a FastAPI + SQLAlchemy example into a clean Ports & Adapters (He...
You’ve Been Underusing Dataclasses (These Tricks Are Wild)
🧱 Build software that lasts. Join the Software Design Mastery waiting list → https://arjan.codes/mastery. In this video, I show you 7 powerful and lesser-known things you can do with dataclasses i...
Python Properties vs Methods: The Contract You Didn’t Know You Were Making
🧱 Build software that lasts. Join the Software Design Mastery waiting list → https://arjan.codes/mastery. In this video, I break down when something in Python should be a property and when it shou...
CQRS in Python: Clean Reads, Clean Writes
💡 Check out MongoDB Atlas: https://www.mongodb.com/atlas. When your FastAPI list endpoint starts pulling full documents just to compute derived fields, it’s usually a sign your read and write mode...
Stop Building Ugly APIs: Use the Fluent Interface Pattern
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In this video, I take a small but realistic Python animation API and refactor it step by step into a fluent interf...
10 Python Features You’re Not Using (But Really Should)
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Python has a lot of powerful features hiding in plain sight, and many developers never really use them. In this vi...
This Design Pattern Scares Me To Death
👉 Get real-time, search result data from Google, Youtube and more with SerpApi: https://serpapi.link/arjan-codes-jan-2025. Business rules have a nasty habit of spreading across your codebase: copi...
7 Things You Didn’t Know Dataclasses Could Do
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Dataclasses are often treated as nothing more than a shortcut for generating init methods, but there’s a lot more ...
The Right Way to Use AI for Writing Maintainable Code
🧱 Build software that lasts. Join the Software Design Mastery waiting list → https://arjan.codes/mastery. AI can write code, but without solid software design, it quickly turns into an unmaintaina...
I Made a Classic Refactoring Mistake
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In my previous video on refactoring complicated business logic, I made several mistakes and you spotted them. In t...
How to Tell If Your Code Is Actually Production-Ready
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Your code works locally: you’ve tested the endpoint, the numbers add up, and everything looks fine in the terminal...
Retry Pattern: The Secret to Resilient Python Code
👉 Get real-time, search result data from Google, Youtube and more with SerpApi: https://serpapi.link/arjan-codes. This video shows you how to stop your Python code from crashing when APIs, network...
How to Refactor Insanely Complicated Business Logic (Step by Step)
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Untangling deeply nested if/else logic is one of the hardest parts of working in real-world Python codebases. In t...
The Lazy Loading Pattern: How to Make Python Programs Feel Instant
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In this video, I dive deep into the **Lazy Loading pattern,** one of the simplest and most effective ways to make ...
Stop Hardcoding Everything: Use Dependency Injection
→ Check out Thesys here: https://www.thesys.dev/?utm_source=youtube&utm_medium=creators&utm_campaign=arjan In this video, I explore how Dependency Injection can make your Python code cleaner, more...
Stop Overwriting State And Use Event Sourcing Instead
→ Try Flox for free: https://flox.dev/?utm_source=youtube&utm_medium=social&utm_campaign=Arjan&utm_content=homepage In this video, I explore how to build an inventory system using the event sourci...
Learning Python Feels Easy. Until It Isn’t.
→ Python Programming Fundamentals course (DataCamp): https://datacamp.pxf.io/POPxVR → Associate Python Developer track (DataCamp): https://datacamp.pxf.io/Dy2oea Python is often praised as the ea...
Why Your Code Isn’t Pythonic (And How to Fix It)
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. What does it actually mean to write *Pythonic* code? In this video, we answer that question by taking a small, mes...
Too Many Function Arguments? Use This Pattern
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Tired of passing five arguments to every function? In this video, I clean up a realistic Python codebase using the...
The Best Way to Share Code Between Python Apps
✅ Learn how to build robust and scalable software architecture: https://arjan.codes/checklist. In this video, I show you how to use uv workspaces to manage multiple Python apps—like a CLI tool and...
I Hate Long If-Elif Chains: This Design Pattern Solved It Once and For All
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. If your code is littered with endless if-elif chains just to handle different formats, behaviors, or commands, the...
My 4 Favorite Python 3.14 Features
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Python 3.14 is here, and it’s not just about pi. In this video, I’ll walk you through the four features I’m most e...
Anatomy of a Scalable Python Project (FastAPI)
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In this video, we break down the anatomy of a scalable Python project using FastAPI and uv. You’ll learn how to se...
SOLID: Writing Better Python Without Overengineering
Check out https://www.squarespace.com/arjancodes to save 10% off your first purchase of a website or domain using code ARJANCODES. Are the SOLID principles still relevant when you’re writing Pytho...
The Real Reason the Singleton Pattern Exists
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Singletons are often criticized for introducing global state and making code harder to test—but there’s more to th...
Avoid Messy Code: Design Patterns for AI Agents in Python
Check out https://www.squarespace.com/arjancodes to save 10% off your first purchase of a website or domain using code ARJANCODES. If you’re building AI agents in Python and your code is starting ...
Python Has the Best Standard Library Ever: 10 Modules You Need to Know
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Python’s standard library is one of its greatest strengths, but many developers only scratch the surface. In this ...
Build Production-Ready AI Agents in Python with Pydantic AI
Check out https://www.squarespace.com/arjancodes to save 10% off your first purchase of a website or domain using code ARJANCODES. Pydantic AI lets you integrate large language models like GPT-5 *...
We need to talk.
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. We all have assumptions that quietly hold us back. I’ve been guilty of this my whole career. In this video, I shar...
How to Write Great Unit Tests in Python
Check out https://www.squarespace.com/arjancodes to save 10% off your first purchase of a website or domain using code ARJANCODES. Want to learn how to write professional, maintainable unit tests ...
UV Just Got A Serious Upgrade
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In this video, I walk you through everything new in uv, including major improvements to performance, dependency ma...
Why Are Not More People Using These Python Libraries?
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Python’s standard library is one of its greatest strengths, but many developers only scratch the surface. In this ...
The Builder Pattern in Python: Finally Explained!
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In this video, I show you the Builder Pattern in Python. It’s a practical and underrated design pattern you’re pro...
Is SaaS Dead? Here's a Senior Engineer's Perspective
Check out https://www.squarespace.com/arjancodes to save 10% off your first purchase of a website or domain using code ARJANCODES. Is SaaS dead? Some claim AI agents and vibe-coded micro-SaaS will...
I Designed a Python SDK That Relies on… Deep Inheritance?!
Check out https://www.squarespace.com/arjancodes to save 10% off your first purchase of a website or domain using code ARJANCODES. Ever wondered how to build a clean Python SDK without a giant god...
This Is Why Your Python Code Turns Into Spaghetti
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Why do Python projects turn into spaghetti so easily? In this video, I show how using abstraction (with Callable, ...
It Seems I No Longer Use Python’s Dataclasses
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. In this video, I take a deep dive into Python dataclasses in 2025. Are they still useful now that we have Pydantic...
Serverless on Google Cloud: What You Can and Can’t Do
➡️ Get started with Pulumi for free: https://www.pulumi.com/?utm_source=arjancodes. In this video, I’ll show you what Cloud Run Functions can and can’t do, how to work around common limitations, ...
MCP…. So What’s That All About?
✅ Learn how to build robust and scalable software architecture: https://arjan.codes/checklist. Want your AI tools to actually *do* something? In this video, I’ll show you how to integrate external...
Writing Python Functions Like a Mad Scientist
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Most Python developers stick with def, but there’s a whole world of alternative ways to define functions—some sma...
Should You Replace Every For Loop With Map and Filter?
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Think map() and filter() are always better than for loops? Not so fast. In this video, I’ll walk you through four ...
If I Were Starting Today, This Would Be My Tech Stack (2025)
💡 Save hours every week and bring your tasks, calendars, and AI assistant into one powerful app. Try AkiFlow here → https://akiflow.pro/ArjanCodes. Curious what tech stack powers ArjanCodes? In th...
10 Python Anti-Patterns That Are Breaking Your Code
➡️ Try Lokalise today: https://bit.ly/arjancodes. Think your Python code is clean? Think again. In this video, I’m exposing 10 Python anti-patterns that look smart, but secretly create chaos. Stic...
I’m in prison...
👷 Review code better and faster with my 3-Factor Framework: https://arjan.codes/diagnosis. In this video, I’ll give you a tour of the new office/studio space and share what’s next for ArjanCodes. ...
The REAL Reason You Should Use Type Hints in Python
👷 Review code better and faster with my 3-Factor Framework: https://arjan.codes/diagnosis. In this video, I’m going to show you why type hints in Python are useful, how to add them to your Python ...
The Hidden Dangers of Python Decorators
💡 Learn how to design great software in 7 steps: https://arjan.codes/designguide. Python decorators look like a great way to add functionality—until they break your type safety, hide function requ...
10 Tips to Keep Your Software Simple
👉 Take your productivity to the next level and keep your team organized - try monday.com for free today: https://bit.ly/424BbYW. In this video, I’ll show you 10 essential tips to keep your code si...
How to Use Git Branches Like a Pro (FastAPI Example)
👉🏻 Streamline your Git workflow - get started with GitKraken for free: https://bit.ly/4j8AlRM. Confused about Git? You’re not alone — but after this video, you’ll have a clear understanding of mer...