Reading List

The most recent articles from a list of feeds I subscribe to.

TIL: Browsers offer a “copy email” in the context menu on mailto: links

When adding an email link to a document you should use the mailto: URI scheme: Email Chris That makes the browser open the associated email tool instead of opening the link in the browser. Today I found out that browsers also offer a “copy email” in the context menu that only copies the email itself […]

Album of Nothing

There's something inherently entertaining about creating real-life things out of digital stuff. Alice did this recently by turning her weekly notes into a printed and bound book, back in the day Ben took a bunch of tweets and turned them into a newspaper, and I took an online friendship group and turned it into an IRL conference LARP.

I've spent a lot of time lately digging through my own digital photographs - I was on the lookout for photos with interesting glitches or degredations - and I ended up getting sucked in to the sheer amount of photos I have of things that aren't actually worth keeping. They were blurry, had my thumb in them, were literally of just nothing (maybe the inside of a pocket?), pictures of product codes to remember for 1 minute while it was typed into an input box somewhere, or a reference to an item to track down in the IKEA warehouse. They're not good and they're not useful, and they're not pictures of things I care about. And yet, I didn't want to delete them, which I thought was a curious feeling to have about pictures of nothing.

I gathered a bunch of them up in an album and ordered physical prints and put them in a tradtional photo album, just like the ones we have at my parents' house in Cornwall, full of family past and present that I only see on special occasions and don't exist digitally.

I like it? A friend commented that each one is a bit like looking at a mystery puzzle, with a time, place and motive to solve: how did this photo come to exist.

Zig's anti-LLM contribution policy

As shared by on Simon Willison’s blog, Zig has an interesting anti-LLM policy for contributions in their code of conduct.

Zig values contributors over their contributions. Each contributor represents an investment by the Zig core team - the primary goal of reviewing and accepting PRs isn’t to land new code, it’s to help grow new contributors who can become trusted and prolific over time.

I don’t think an anti-LLM policy makes sense for most projects. But a programming language requires considerate intent and deep knowledge for changes. It’s an interesting fit there.

In addition:

If a PR was mostly written by an LLM, why should a project maintainer spend time reviewing and discussing that PR as opposed to firing up their own LLM to solve the same problem?

We’ve historically preferred PR contributions over issues, because it puts the contributor in the position to do most of the work. But if a PR is just a contributor prompting an LLM, is a well-written issue preferable? When writing code becomes cheaper, might as well let the maintainer get it done using their taste.

Rich, fully attributed context timeout errors in Go

Making Go’s generic context deadline exceeded errors traceable with small helpers that attribute the operation that timed out and indicate how long the timeout was.

Time for lower level languages?

I’ve always been intrigued by Go. It’s powerful, fast (I really like fast), and simple. The tradeoff? It’s simple. Coming from higher level languages like PHP & JavaScript, Go can feel crude.

As I’ve recently written, this blog went back to Hugo. Hugo is also fast and crude. But with LLMs, the crudeness of things doesn’t hurt as much as before. I don’t need to deal with writing it anymore, and crude is still readable.

From Just Fucking Use Go:

The boring choice is the right choice. It always was.

I agree. More than ever, I have an urge to dabble into lower level languages. AI is a huge layer of complexity we’re adding to our tooling. Let’s use it to trim the fat from our outputs.