Ramblings of a Software Craftsman
Archives
Search
Subscribe
Becoming the machine
December 24, 2025
Every machine serves a purpose. People need purpose. The temptation to become the machine is higher than ever. The promise of the machine is alluring. If I...
Importance of writing
December 24, 2025
As AI generated content becomes the norm, I believe that human-generated content and raw thoughts and emotion will become more valuable. In many ways, I’d...
Rediscovering a 2021 podcast on Python, .NET, and open source
December 22, 2025
Yesterday, the kids came home for the Christmas holidays. Marco surprised me by telling me that on his flight from Brussels, he discovered and listened to...
Isengard in Oxford
December 21, 2025
The Los Angeles Review of Books on The Bovadium Fragments, JRR Tolkien’s posthumous complete work, which was just recently published. Anyone who has read...
Less
December 18, 2025
When I’m writing, I write. When I’m cooking, I cook. When I’m talking to someone, I put my phone away. The constant mental juggling that felt necessary...
JJ Cale
December 14, 2025
We watched A Private Life in the theatre yesterday, a fine, funny and intriguing French film set in Paris with a solid Jodie Foster as protagonist. But I’m...
A Plea by Flea
December 14, 2025
I reluctantly admit that it was Spotify’s Discover Weekly that let me discover Flea’s new solo single, A Plea. It’s jazz, and it’s beautiful. There are...
Programming isn't the job
December 12, 2025
AI can replace most of programming, but programming isn’t the job. Programming is a task. It’s one of many things you do as part of your work. But if you’re...
Fleeing Deer
December 7, 2025
I swear it’s not an impressionist painting, just a blurry photo I took yesterday during my forest walk. The deer were watching me from the edge of the woods,...
Why speed matters
December 7, 2025
If everything is slow-moving around you, it is likely not going to be good. To fully make use of your brain, you need to move as close as possible to the...
On the boundaries of humanity
December 6, 2025
For most of humankind, and for tens of thousands of years, the idea that humanity includes every individual on the face of the earth has not existed. This...
Code from my session at WPC 2025
December 5, 2025
On Wednesday, I held a session titled “Feature Flags and Dynamic Configurations in C#” at WPC 2025. It went well, at least judging by the offline questions...
To hide in the woods
December 4, 2025
The woods, the jungle, the forest are the boundary between the wild and the civilized, a place of shelter and legendary fears, of hiding and losing oneself....
Eve 2.2.4
December 2, 2025
Eve v2.2.4 was just released on PyPI. It is a minor update, with a validation fix contributed by smeng9. See the changelog for details. The post Eve 2.2.4...
How Brian Eno created Music for Airports
December 2, 2025
Brian Eno’s Ambient 1: Music for Airports is a landmark album in ambient and electronic music. Although it wasn’t the first ambient album, it was the first...
On the usefulness of writing
December 2, 2025
I think of it [the usefulness of writing] like breathing but for ideas. We do so much reading all day—there should be a natural balance with producing words...
My session on MCP servers at .NET Conference Italia 2025
November 26, 2025
I presented a session at the .NET Conference Italia 2025 in Milan a couple of weeks ago. The title was “Integrating our applications with LLMs and AI via MCP...
Time
November 26, 2025
If you want to understand time — which is how you come to befriend life — turn to stone. Climb a mountain and listen to the conversation between eons encoded...
Train Dreams
November 25, 2025
With all the medium-to-very-low-quality productions we’ve been accustomed to from Netflix, it was a pleasant surprise and a relief to watch Train Dreams last...
I Am Not Yours
November 25, 2025
I was walking early this morning, as usual, when I came across an unusual advertising sign. It was in Spanish, text only, red background and black...
Older archives