"Do I still know how to code?" I'm fortunate enough to have a vacation for so long that I eventually stopped thinking about AI, LLMs, Python, Work or even emacs. Traveled with the family by Train to nice places in Europe. Our first stop was Berlin, and we arrived with the Night Train from Stockholm. We spent two days in the City with so much modern history. Then, a fast train (299 km/h was the…
I'm the maintainer of the Python tools for the Polylith Architecture , that adds useful tooling support for teams having their code organized according to the Polylith Architecture. So far in 2026, I have made seven Feature releases (i.e. minor versions) and a bunch of smaller ones (i.e. patches). One of the features that was added this year is the possibility to inspect the coupling between…
As many developers today, I'm using agents on a daily basis for software development. At work, we went all-in Agentic Engineering in early 2026 and for me it has worked well. Not perfect , not 10x, but well and the shift was surprisingly easy. I quickly found that good coding practices are still applicable and relevant. I’m not into that vibe coding stuff, I care too much about the output. What…
"Software Architecture in the agentic era?" What's needed for an architecture to fit well in the agentic era? Probably many things, but I would say at least simplicity and available context as two very important things to consider. Even if it for sure was not the purpose from the beginning (it was born many years ago), Polylith is about that and is a good choice for Agentic Engineering. That's a…
With Agentic Engineering there's an opportunity to refactor legacy code, but this aspect of AI isn't that that much talked about and seems to be overlooked by teams out there. So far, the main thing with AI and agents has been to build new things in a fast pace. After several months of practicing Agentic Engineering, I've realized that code quality - or code health - is more important than ever.…
"- Claude, build the entire Platform from scratch. Make no mistakes." In the agentic engineering community, some think that 100% test coverage will guarantee the quality of generated code. I think that relying too much on automated tests is problematic, because testing is difficult. I'd rather review the actual source code. More importantly, having an active part in the development of it by…
A lot of great things have origins from the 1970s: Hip Hop redefining music and street culture, Bruce Lee was taking Martial Arts to the next level and the initial development of something called editor macros (also known as Emacs) was happening. I was born in that decade, but that's purely coincidence. My choice of primary development tool since a couple of years back is that editor from the…
"Don't fall into a waterfall-style of software development." Our industry is quickly adapting to the new ways of working and we are redefining what it means to be a software developer: Agentic Engineering. It's not the same thing as Vibe Coding , and probably why I have had such a surprisingly smooth transition recently. As I see it, vibe coding is about treating code as a black box: it doesn't…
"Does this need to be a breaking change?" During the years as a Software Developer, I have been part of many teams making a lot of task force style efforts to upgrade third-party dependencies or tools. Far too often it is work that add zero value for us. It adds significant cost, though. As a user of third-party tools, you don't have much choice. Even if you might feel productive as a developer…
How fast can we get useful feedback on the Python code we write? This is a walk-through of some of the feedback loops we can get from our ways of working and developer tools. The goal of this post is to find a both Developer friendly and fast way to learn if the Python code we write actually does what we want it to. What's a Feedback Loop? From my point of view, feedback loops for software is…
Continuing with the work on tooling support for interactive & fun development with Python. A while ago, I wrote an article about my current attempts to make development in Python more interactive, more "test" driven and more fun. My North Star is the developer experience in Clojure, where you have everything at your fingertips. Evaluating expressions (i.e. code) is a common thing for Lisp…
FOSDEM , a Conference different from any other I've been to before. I'm very happy for the opportunity to talk, share knowledge and chat with the fellow devs there. I also met old and new friends in Brussels, and learned a little bit more about the nice Belgian beer culture. 😀 The FOSDEM event is free and you don't even register to attend (only speakers do that in a call for speakers process).…
"REPL Driven Development is an interactive development experience with fast feedback loops” I have written about REPL Driven Development (RDD) before, and I use it in my daily workflow. You will find setups for Python development in Emacs, VS Code and PyCharm in this post from 2022 . That's the setup I have used since then. But there's one particular thing that I missed ever since I begun with RDD…
"All you need is list, set and dict" Write HTML with Python Python Hiccup is a library for representing HTML using plain Python data structures. It's a Python implementation of the Hiccup syntax. You create HTML with Python, using list or tuple to represent HTML elements, and dict to represent the element attributes. The work on this library started out as a fun coding challenge, and now evolving…
" Kubernetes , also known as K8s, is an open source system for automating deployment, scaling, and management of containerized applications." (from kubernetes.io ) Setting up Kubenetes for a set of Microservices can be overwhelming at first sight. I'm currently learning about K8s and the Ecosystem of tooling around it. One thing that I've found difficult is the actual K8s configuration and how the…
But who is Luke and who is R2? " Pants is a fast, scalable, user-friendly build system for codebases of all sizes" " Polylith helps us build simple, maintainable, testable, and scalable backend systems" Can we use both? I have tried that out, and here's my notes. Why? Because The Developer Experience. Developer Experience is important, but what does that mean? For me, it is about keeping things…
An aspect of Python Software Development that is often overlooked, is Architecture (or Design) at the namespace, modules & functions level. My thoughts on Software Development in general is that it is important to try hard writing code that is Simple, and Easy to move from one place to another. When having code written like this, it becomes less important if a feature was added in Service X, but a…
What's in a code repository? Usually you'll find the source code, some configuration and the deployment infrastructure - basically the things needed to develop & deploy something. It might be a service, an app or a library. A Monorepo contains the same things, but for more than one artifact. In there, you will find the code, configurations and infrastructure for several services, apps or…
🎉 Announcing new features 🎉 Polylith is about keeping Monorepos Simple & Developer-friendly. Today, the Python tools for the Polylith Architecture has support for Poetry , Hatch and PDM - three popular Packaging & Dependency Management tools in the Python community. In addition to the already existing Poetry plugin that adds tooling support for Polylith, there is also a brand new command line…
A couple of days ago, a nice thing happened that has made me very happy. It happened almost by accident. At work, we have a #music channel on Slack and some of us frequently share music that we like and recommend to the folks in the company. I really like those kind of work-but-not-related-to-the-actual-work kind of things. It helps developing a friendly Organizational culture, and it is also a…
When developing software, I spend most of the time thinking & talking about the problems to solve: the what , the why and the how . The thinking-part works best for me when I'm actually away from the desktop, such as walking outdoors or even when grabbing a cup of coffee & a banana by the office kitchen. 🍌 Talking is a really nice thing, we should try that more often in combination with listening…
How can we simplify things, to add value as early as possible? Software Projects is a misconception within Software Development. When organizing work into Projects, one might think that there also is a need to estimate the things to be done. Because the Project itself is by definition something that will end, or more likely be delayed . From my experience, estimation is only adding anxiety and…
This article isn't about Franz Kafka or his great novella The Metamorphosis , where the main character one day realizes that he has transformed into a Human-size Bug. It is about a different kind of Kafka: Apache Kafka , with examples on how to get started producing & consuming messages with Python . All this in a Polylith Monorepo (hopefully without any of the bugs from that Franz Kafka novella).…
I like FastAPI. It's is a good choice for developing Python APIs. FastAPI has a modern feel to it, and is also easy to learn. When I think about it, I could say the same about Polylith . Modern Python Microservices Building Python services with FastAPI and Polylith is a pretty good combination. With FastAPI, you'll have a modern framework including tools like Pydantic . The simplicity of the…
Running a full-blown 24/7 running service is sometimes not a good fit for a feature. Serverless functions (also known as Lambdas or Cloud functions) is an alternative for those single-purpose kind of features. The major cloud providers have their own flavors of Serverless, and Cloud Functions is the one on Google Cloud Platform (GCP). GCP Cloud Functions & Polylith Polylith is good choice for…