- Introduction to the Tower library
-
One of the components of my OpenTelemetry demo is a Rust application built with the Axum web framework. In its description,
axum
mentions:axum
doesn’t have its own middleware system but instead usestower::Service
. This meansaxum
gets timeouts, tracing, compression, authorization, and more, for free. It also enables you to share middleware with applications written usinghyper
ortonic
. - Oracle justified its JavaScript trademark with Node.js—now it wants that ignored
-
Indeed, Oracle has more lawyers than engineers.
- How could I have missed it???
-
new little song:
— Forrest Brazeal (@forrestbrazeal) October 4, 2022
"The Re-Org Rag (I'm My Own VP)" pic.twitter.com/NLB4dtpD8s - From Table Layouts to Tailwind: The Evolution of Front-End Styling (1995–2025)
-
A long history of CSS, Sass, Tailwind, and more
Warning: it’s an exhaustive but long read.
- Emerging Patterns in Building GenAI Products
-
As we move software products using generative AI technology from proof-of-concepts into production systems, we are uncovering a range of common patterns. Evals play a central role in ensuring that these non-deterministic systems are operating within sensible boundaries. Large Language Models need enhancement to provide information beyond a generic and static training set. Most of the time we can do this with Retrieval Augmented Generation (RAG), although the basic RAG approach requires several patterns to overcome its limitations. When RAG isn’t enough, Fine Tuning becomes worthwhile.
- Why I Changed My Mind About Backstage? A Brutally Honest Opinion
-
- Docker Bake is Now Generally Available in Docker Desktop 4.38!
-
TIL. I probably won’t use it ever, because I’m used to
Dockerfile
that I can use across all tools, e.g., OrbStack. - Implementing Container Runtime Shim: runc
-
After having explored how to run WebAssembly on Kubernetes, I had the idea one could do the same with JVM bytecode. It requires writing a shim, code that would run between the
containerd
andjava
processes. I tried, but it requires a lot of system programming skills, which I lack at the moment. The post is a good foundation to understand what you need to do; the next post in the series implements it in Rust. It’s not trivial either. I’ve stopped my thought experiment for the moment. - How to Build a Multi-Tenancy Internal Developer Platform with GitOps and vCluster
-
In this blog, we’ll explore how to build a multi-tenancy platform using a self-service approach. The goal is to establish the logic behind a self-service approach while highlighting that an Internal Developer Platform (IDP) is more than just a UI and APIs — it’s about building the core functionality that powers them.
I think that’s the first time that I see a not vague definition of an IDP.
- Observing Lambdas using the OpenTelemetry Collector Extension Layer
-
Lambda extension layers allow you to run any process alongside your code, sharing the execution runtime and providing additional services
- The Ultimate Guide to Kubernetes Init Containers
-
I think init containers are massively under-utilised.
- From Zero to Fully Operational Developer Platform in 5 Steps!
-