I'm Alain Di Chiappari, software engineer and computer scientist
specialized in systems and networks. I love contributing to free
software and have a passion for whatever runs on computers. My recent
years of work have focused on backend development, developer
experience, infrastructure and platform engineering, software
architectures, observability, and reliability. You can find me on
linkedin, github and
my blog.
[WASD] to move, P/R pause/restart.
Latest posts
Software Engineering is Back Coding agents have replaced every framework I used
We have the chance again to get rid of useless complexity and keep
working on the true and welcome complexity of our ideas, our
features, our products. The complexity that matters. The complexity
that is actually yours.
Beyond Snippets: Where Are AI's Software Masterpieces?
Stay pragmatic: neither fear nor follow the vibe coding hype
Year 2025, surrounded by AI models that can supposedly do anything.
Redis, Postgres, Vercel, Supabase, Go, Zig, Ghostty, go find the
software, tool, tech company you like - these are all remarkable
creations that many of us use daily, directly or indirectly. Some we
love, some we tolerate, but each represents not just code, but
entire ecosystems built through human collaboration: communication,
negotiation, documentation, and years of iteration and refinement...
On the Joy of HackingPraise for Software as Art and the loneliness that comes with it
The dual nature of software, as both a commercial product and a
form of creative expression, creates an inevitable tension,
especially in talented people. While most business software is
indeed a product for consumption, there exists another realm where
code transcends mere utility...
Rethinking MTTRIs elevating DORA (& friends) metrics to business indicators a
trap?I've spent the last few years working with various metrics,
including DORA, and particularly with MTTR. [...] MTTR's statistical
significance is remarkably low. When we look at incident data, we
often see a non-normal distribution of recovery times. Some
incidents take minutes to resolve, while others might take days,
independently of their impact and severity. Moreover, most
companies, especially small and medium-sized businesses, don't
experience enough incidents to achieve statistical significance in
their measurements. And if they do have a high volume of incidents,
that itself should be their primary concern rather than optimizing
their MTTR...
Tactical vs Strategic DevelopersA Philosophy of Software Design In the world of software creation, developers have different ways
of thinking and working. In his enlightening book "A Philosophy of
Software Design," John Ousterhout talks about the ideas and methods
that make software design work well (or at least better). One
important thing he discusses is the difference between tactical and
strategic developers. This helps us understand the various
approaches these developers use when creating software, and why the
modern approaches that companies adopt bring to a dangerous path...
Death by configuration parametersWhere to place complexity? Deeper modules provide a significantly better interface, concealing
complexity and enhancing clarity and readability. However, this
improvement does not come without a cost. It demands better design
and more thoughtful choices. A crucial factor in this process is
complexity management, and we understand that it is not always
feasible to eliminate it entirely. Sometimes, it is inherent in the
domain we operate in, or it arises from real-world scenarios.
Additionally, in many 'fast-paced' work environments, those who
contribute (directly or indirectly) to the design of a system are
often rewarded for short-term choices rather than for long-term
sustainability...
Random projects I've been working on
Cashout
AI-Powered Telegram Bot for Wallet Management.
The NRK Programming Language
[WIP] A small programming language with a bytecode interpreter
implementation written entirely in C99.