







One thing you might notice if you read my blog is that I do a lot of hardware projects. Generally, these include a board, some software, and possibly some extraneous components (like CAD design, such as a case). Software tooling is quite mature, but I find that hardware had traditionally lagged quite a bit behind. For a while, I just lived with this, but over the last few months I've put in a bunch of effort to improve my workflow.
the world hasn’t figured out yet that you can literally just fix everything with a Nix overlay
There are many things that are uncertain in our industry right now, but one thing I am certain about, and have been for almost 13 years, is that Nix is a terrible programming language. I remember when I first learned it, it felt like pushing shit uphill. The learning cliff

Serpentine software
I don’t usually write hot takes. But StrongDM’s Software Factory post is worth it, so here goes. Their post is elegant, short, and well-written, so I’m going to just go through a bunch of pull quotes. Compounding correctness long-horizon agentic coding workflows [now] compound correctness rather than error This is a big, empirical claim. I’m already convinced by my own experiences that agents, suitably scaffolded, can form a Brownian ratchet, such that pouring on more compute helps, on balance.
I've gone full Nix: Proxmox to NixOS + Incus | Bas Nijholt
After years of running a Proxmox cluster, I migrated my entire homelab to NixOS with Incus. I explain the philosophical friction of imperative 'appliance' OSs vs declarative hosts, share how I migrated my LXC/VM workloads, and why it is the perfect infrastructure to manage using AI agents.
Software Acceleration and Desynchronization
A look at the ever-present drive to make software delivery faster and how it might break down various activity loops in organizations.

psf (@psf@oldbytes.space)
In their article ["Malleable Software"](https://www.inkandswitch.com/essay/malleable-software), Ink & Switch list various ways that modern software applications fail to serve the user: - Software is too rigid: users can’t tailor it to suit their workflow, except by entering the role of programmers. - Software applications are overspecialized "avocado slicers", not general tools like "knives", so their lack of tailorability is keenly felt. - Software doesn’t provide a reasonable learning curve from beginner to expert; in other words, time spent learning an application doesn’t unlock tailorability, instead the end user must learn an unrelated skill like a markup/scripting language or even the tool’s implementation language. - Software applications are increasingly siloed, so sharing data between apps, let alone orchestrating cross-app workflows, is overly difficult. These are real problems. From what I can tell, Ink & Switch are software researchers, and view the problems from a highly technical perspective, focusing on novel infrastructure that enables end-user programmability. They pose questions such as "how do we ease users into programming?" and "instead of shipping a dead, static binary, can we ship a living image containing programming tools allowing it to be modified in arbitrary ways while still running?" These ideas are technologically exquisite, but they fail to provide a gentle learning curve. (cont'd) 🧵
The Future of Software Engineering Isn’t What You Think
Over the past two decades, I’ve watched software eat the world, then hardware catch up, then Generative AI reshape both at the same time…
Scott Jenson: Are we really going to use the same Desktop UX forever?
Vibe Maintainer
Some attendees at an AI Tinkerers meetup in early Feb were asking me what it’s like to be the maintainer of a big OSS project where the…

Software engineering under the spotlight
Think of a tech company as a giant, dimly-lit factory. Work goes on throughout the factory as components shuffle back and forth, and finished products get steadily carted away, but the coordination and efficiency of each section is fairly low. Some parts of the factory get jammed up and don’t do anything for days. Other parts are manically producing broken components which are thrown away unused. However, the factory manager - i.e. the tech company CEO - has one tool to combat this problem. That tool is the spotlight.

Lean Data Automation: A Principal Components Approach
Plus: A nimble, composable example with Github Actions, Hamilton, and Runhouse

Impeccable: Design skills for AI harnesses
1 skill, 23 commands, and curated anti-patterns for impeccable frontend design. Works with Cursor, Claude Code, GitHub Copilot, Gemini CLI, and Codex CLI.

Impeccable: Design skills for AI harnesses
1 skill, 23 commands, and curated anti-patterns for impeccable frontend design. Works with Cursor, Claude Code, GitHub Copilot, Gemini CLI, and Codex CLI.



You have to beat the models at something
In 2025, I wrote that software engineers ought to be assessed by “value over replacement”: not how much money they made for their company, but how much they…