Serverless on Google Cloud: What You Can and Can’t Do | Issue #58


Hi there,

You’ve probably heard that serverless is the easiest way to deploy code to the cloud. And on the surface, it is.

With Google Cloud Functions, you can literally deploy a simple Python function like this:

def hello(request):
return "Hello from Cloud!"

A few lines of code. No servers. No infrastructure.

But... there are quite a few limitations:

  • No FastAPI or async support
  • One route per function
  • requirements.txt only, no pyproject.toml
  • Cold starts for large dependencies
  • No custom runtime or Docker image

In this week’s video, I break down exactly what you can (and can’t) do with Google Cloud Functions, show a neat trick to support subroutes using Flask, and explain when you should consider alternatives like Cloud Run or Kubernetes.

Happy coding!

Cheers,

Arjan

# News

Quick Update From the ArjanCodes Team

You may have noticed things are a little quieter than usual around here. That’s because our team member Viktoria is currently on pregnancy leave (exciting times ahead!). She’ll be back with us early next year. In the meantime, our weekly newsletters might occasionally be a bit shorter.

That said, I’d love your help: if you stumble upon an interesting topic, article, or idea that you think would be a great fit for an upcoming issue, just hit reply and send it my way. Your input is always welcome!

# Community

How many red flags can you spot?

This real employer questionnaire recently came up in one of our Discord discussions:

  • Age? Gender? Marital status?
  • Willing to work more than 8 hours per day?
  • Available to work on your days off?

By the time you’re done reading it, you’re wondering: is this an application or an early warning system?

These kinds of stories get discussed every day in our Discord server. If you enjoy analyzing hiring practices, bad code, and everything in between, join us!

👉 Join the community now to read the discussion and share your thoughts.


Do you enjoy my content on YouTube and would you like to dive in deeper?

🚀 Check out my online courses

My courses have helped thousands of developers take the next step in their careers. Check out these courses to help grow your skills and become a senior developer:

🔧 Need help with a complex codebase?

If your team is struggling with tech debt, unclear architecture, or cloud costs that keep creeping up, my team and I can help. We don’t just review, we get in and fix things. We’re only working with a few companies at a time to stay focused, so if it sounds like a fit:

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, We all want to grow: as developers, as professionals, as people. But there’s one habit that can keep you from reaching your full potential. I’ve struggled with it my whole career, and I’ve seen countless other developers fall into the same trap: making assumptions and never questioning them. Early in my startup days, I dismissed React because I thought it wasn’t worth my time. I was wrong. More recently, I almost ignored AI coding tools for the same reason. These moments taught me...

Hey there, Writing software tests doesn't have to be hard. In my latest video, I walk you through how to write unit tests in Python with pytest Here’s what you’ll learn: The basics of unit testing (and why they matter) The difference between mocking and monkey patching, and when to use each How to refactor code for better testability How to use pytest fixtures to avoid repetition Advanced pytest features like parametrize, raises, skip, and xfail You’ll see multiple approaches in action, from...

Hey there, I've been using uv for all my Python projects lately. If you haven't made the switch yet from poetry, or pip/virtualenv/setuptools, this is a great time to try the tool. In my latest video, I walk through the latest updates to uv, including a hands-on demo of how uv now handles project setup, dependency management, syncing, and more, all from one tool. Uv now includes a fully integrated build backend, and as of version 0.8.0, it’s the default. That means no more extra config, and...