Latest articles

Subscribe via RSS

  • ,

    Coding can be super lonely

    ·

    ·

    3 min read

    I hate coding solo. Not in the moment or when I’m in the zone, I mean in the long run. I love getting into that deep focus where I’m locked in and hours pass by in a second! But I hate snapping out of it and not having anyone to chat with about it. (I’m […]


  • Bob and I have spent many years as Python devs, and 6 years coaching with Pybites and we can safely say that being a Senior Developer is only about 1/3 Python knowledge. The other 60% is the ecosystem. It’s the tooling. It’s all of the tech around Python that makes you stand out from the rest. This is […]


  • I’ve had some challenging conversations this week. Lately, my calendar has been filled with calls from developers reaching out for advice because layoffs were just announced at their company. Having been in their shoes myself, I could really empathise with their anxiety. The thing is though, when we’d dig into why there was such anxiety, a common […]


  • In my previous Pybites article, I showed how I built and deployed a book tracking API using FastAPI, Docker, and Fly.io. That project taught me a lot about backend development, containers, and deploying modern APIs. But a backend alone isn’t enough—users need an interface. And FastAPI’s Swagger UI, while useful for testing, just isn’t user-friendly […]


  • The Problem I have for as long as I can remember had a bit of a problem with analysis paralysis and tunnel vision. If I’m working on a problem and get stuck, I have a tendency to just sit there paging through code trying to understand where to go next. It’s a very unproductive habit […]


  • Structuring Python projects properly, especially when developing packages, can often be confusing. Many developers struggle with common questions: To help clarify these common challenges, I’ll show how I typically set up Python projects and organise package structures using the Python package and environment manager, uv. The challenge A typical and recurring problem in Python is […]


  • Python generators provide an elegant mechanism for handling iteration, particularly for large datasets where traditional approaches may be memory-intensive. Unlike standard functions that compute and return all values at once, generators produce values on demand through the yield statement, enabling efficient memory usage and creating new possibilities for data processing workflows. Generator Function Mechanics At […]


  • For the PDM program I worked on a FastAPI project to track books using the Google Book API and also provide AI powered recommendations using Marvin AI. As the project came closer to deployment, I knew that I wanted to try out containerization for a reliable and repeatable way to deploy. I chose Docker due […]