
The only thing more satisfying than writing code is being able to remove it (this is, incidently, yet another reason why slop coding anything you care about is nonsense).
I was talking with a client in the UK a fortnight or so ago now who’d written his own file store system he’d carried around for years. It stored metadata for each file in a database, which also included a hash of each file, and basic attributes he wanted to track. Upon retrieval of each file using a vaguely object store-l...
The other day, as I was driving home, I had the bad idea of listening to the most recent Waveform podcast , where they were discussing vertical vs horizontal tabs in browsers (and many other things). The whole discussion was truly painful to listen to, you’d hope people who talk tech for a living have some more elaborate takes on this kind of stuff, and yet, the whole discussion was very, very dumb.
I am not going to discuss the merits of vertical vs horizontal tabs, but I am going to say t...

Weaver, seen from the Front , Vincent van Gogh, 1884
Something that’s been floating around in my head lately is the idea that I don’t know any truly good engineers who are also not good at at product design.
Product design can roughly be designed as the contract between the creator and the user, where the contract is designed by a set of affordances, or actions that the product allows the user to take. This is all cribbed from Don Norman and The Beauty of Everyday Things .
For...

Translating errors at layer boundaries so storage details don't leak into the handler or, worse, into client responses. Translating errors at layer boundaries so storage details don't leak into the handler or, worse, into client responses.
inspired by zach lieberman
inspired by zach lieberman
inspired by zach lieberman zach lieberman

“Gandalf, my old friend, this will be a night to remember.”
― The Lord of the Rings
The next three days of my journey, I've spent in and around Twizel. This region is called the Mackenzie Basin, which includes a few popular tourist spots. It's also where my friends from Germany now live, and I was excited to see them again after a long time!
On my way to Twizel, I've made a few stops.
First, I've checked out the Moeraki Boulders . Fortunately, it was only a short detour, as I ...
A brief history of C/C++ programming languages
lemire.me
Initially, we had languages like Fortran (1957), Pascal (1970), and C (1972). Fortran was designed for number crunching and scientific computing. Pascal was restrictive with respect to low-level access (it was deliberately “safe”, as meant for teaching structured programming). So C won out as a language that allowed low-level/unsafe programming (pointer arithmetic, direct memory access) while remaining general-purpose enough for systems work like Unix. To be fair, Pascal had descendants that...
I posted about using the Banach-Tarski Paradox(BT) to explain the miracle of Loaves and Fishes (LF) here . Darling says that whenever I fool my readers or my students then I have to tell them later, so I'll tell you now: The story about me meeting with Pope and talking about the BT Paradox (that would be a good name for a rock band: B-T-Paradox) was not true. I think my readers know that. 1) I first learned the Banach-Tarski Paradox as a grad student in 1981 when I read Hillary Putnam's a...

We talk here sometimes about how to test SQL dialects with tools like TLP and PQS . One really nice property of those tools is that they let you treat the database like a blackbox.
I'm tinkering with a little SQL planner to mess around with ideas and one feature I added very early was an explicit optimization fence operator that simply blocks any optimizations:
In a query like this:
SELECT * FROM ( SELECT a , b , c , d FROM foo , bar WHERE a = c ) WHERE b...
Tucked in a tiny timed capsule against its wonky, worldly windows mesmerized the momentary Moonfarers at sweeping sights of Selene Creased by craters and crowning peaks melts and mountains molded in weeks amid barrages of ballistically laid beads lingered the landscape of Luna What the world could view is impact not as distant through the capsule crew For a world bent and battered showed that it wasn’t shattered that it was weathered, not withered trembled, not tamed or tattered Just like the ...
Regular readers will know that I've been on quite the CMS journey over the years. WordPress, Grav, Jekyll, Kirby, my own little Hyde thing, and now Pure Blog . I won't bore you with the full history again, but the short version is: I kept chasing just the right amount of power and simplicity, and I think Pure Blog might actually be it.
But there was one nagging thing. I have a books page that's powered by a YAML data file, which creates a running list of everything I've read with ratings,...

Antarctic snow cruiser circa 1939, via Historyland . Welcome to the reading list, a weekly roundup of news and links related to buildings, infrastructure, and industrial technology. This week we look at whether the Strait of Hormuz is open yet, building code cost benefit analysis, Intel joining Terafab, sponge cities, and more. Roughly 2/3rds of the reading list is paywalled, so for full access become a paid subscriber. War in Iran A two-week ceasefire between the US and Iran was announced earl...

Light: it's the radiation we can see. The communications potential of light is
obvious, and indeed, many of the earliest forms of long-distance communication
relied on it: signal fires, semaphore, heliographs. You could say that we still
make extensive use of light for communications today, in the form of fiber
optics. Early on, some fiber users (such as AT&T) even preferred the term
"lightguide," a nice analogy to the long-distance waveguides that Bell
Laboratories had experimented with.
The ...
First astrophotography session from my new house - the Virgo Cluster
stfn.plAs I already mentioned in oh so many blog posts, I now live in a house, which
opens totally new possibilities when doing astrophography. I no longer have to
drive a long way just to get to the spot, and then spend hours either outside in
the cold, or in a small shed. Now all I need is to carry out the equipment in
the evening, do the setup and polar alignment when it gets acceptably dark, and
then sit comfortably on the couch and control the session from the inside. Which
means I can do much lon...
Kicking the Tyres on Harbor for Agent Evals
rmoff.net
After cobbling together my own eval for Claude , I was interested to discover harbor .
It’s described as:
A framework for evaluating and optimizing agents and models in container environments.
Which sounds kinda cool, right?
After cobbling together my own eval for Claude , I was interested to discover harbor .
It’s described as:
A framework for evaluating and optimizing agents and models in container environments.
Which sounds kinda cool, right?
After...
The newest zine from my research group, “Carol’s Causal Conundrum”, is out today! You can read it online, or print your own free copies to read offline !
This zine is an introduction to causally ordered message delivery , a fundamental abstraction for distributed programming. It’s the result of a six-month collaboration between my student collaborator, Ayush Manocha, and me. In the zine, we talk about what exactly causally ordered message delivery is, what problem it solves, and a...

The tipping point came in the summer of 2025. That July, several artificial intelligence models solved five out of six problems at the International Mathematical Olympiad, an annual challenge for some of the world’s best high school students. But while mathematicians were shocked — few had expected the programs to get that good that quickly — the impressive results didn’t necessarily mean that AI…
Source The tipping point came in the summer of 2025. That July, several artificial int...

Why we need collaborative AI engineering Why we need collaborative AI engineering
A
Acemoglu2023
Daron Acemoglu and Simon Johnson:
Power and Progress: Our Thousand-Year Struggle Over Technology and Prosperity .
PublicAffairs,
2023,
978-1541702530.
Achen2017
Christopher Achen and Larry Bartels:
Democracy for Realists: Why Elections Do Not Produce Responsive Government .
Princeton University Press,
2017,
978-1400888740.
Adams1905
Samuel Hopkins Adams:
The Great American Fraud .
Collier,
1906.
B
Baldwin2014
Peter Baldwin:
The Copyright Wars: Three Cen...

The global standing desk market reached $8.6 billion in 2025 and is on track to hit $9.1 billion in 2026, according to Global Market Insights. More than 24 million office setups worldwide now include a standing or sit-stand desk, and that number keeps climbing as hybrid work reshapes how people think about their workspaces. This article pulls together the latest user data, market figures, health research, and regional trends in one place.
Standing Desk User Statistics: Key Numbers for 2026 ...

Whenever a new technology shows up, the conversation quickly splits into camps.
There are the people who reject it outright, and there are the people who seem
to adopt it with religious enthusiasm. For more than a year now, no topic has
been more polarising than AI coding agents.
What I keep noticing is that a lot of the criticism directed at these tools is
perfectly legitimate, but it often comes from people without a meaningful amount
of direct experience with them. They are not necessaril...
The Fediverse deserves a dumb graphical client
2026-04-09 18:30
I love the Fediverse. I have been on it for years, and it remains the only social network where I actually enjoy spending time. No algorithmic feed pushing outrage, no dark patterns, no surveillance capitalism. Just people talking to each other over an open protocol.
But every time I wanted to recommend it to someone, I ran into the same wall: the clients are heavy. Mastodon's web interface ships megabytes of JavaScript. Elk, ...
I'm happy to announce the general availability of watgo
- the W eb A ssembly T oolkit for G o. This project is similar to
wabt (C++) or
wasm-tools (Rust), but in
pure, zero-dependency Go.
watgo comes with a CLI and a Go API to parse WAT (WebAssembly Text), validate
it, and encode it into WASM binaries; it also supports decoding WASM from its
binary format.
At the center of it all is wasmir - a semantic
representation of a WebAssembly module that users can examine (and manipulate)....