Sam 💛

@samhh.com

Human of a few decades. Loves animals and functional programming and pastel colours. https://samhh.com https://github.com/samhh Working on @gitbutler.com 🩵

I'm up to >1B tokens per month with Codex. Though that's using Sol xhigh for everything in a vain attempt to rein in its stupidity. I do wish the feedback loop was faster.

I quite like my Eight Sleep so far but I can’t get over such an expensive device shipping without WPA3 support in 2026. I’m doomed to forever have two SSIDs.

From a recent Fly blog post, advocating AI everything: “I want a world where my friends and family can make computers do exactly what they want, without waiting for me to build everything for them.” A cute sentiment that falls apart on closer inspection. Sometimes this industry is so unserious.

Using agents to crank out features of comparable quality in a fraction of the time feels empowering. Likewise being able to dig into a new codebase and ask human questions and usually get good answers. As long as you pick up on when to push back against the plausibly wrong output!

Noticing in Zed with agents I frequently don't want "queue and send", but rather "queue for later". It can take many messages to resolve something which blocks sending the message for the next thing I want that I've already written. At the moment my workaround is the clipboard.

Coding agents are great, but they seem more impactful than they are because they've replaced the majority of typing which occurs via a) more or less copy/pasting documentation and b) following compiler errors. When you are in more advanced weeds their value falls off a cliff.

Glad we woke up for the England game at 2AM, that was a classic! Our dog thinks we woke up randomly for another meal and play session.

For both work and personal stuff I'm really enjoying ChatGPT remembering previous conversations without explicit prompting (either to remember or for recall). For example I can ask for an overview of how a new technology works and it automatically connects that to the project I'm working on.

Cornwall is as lovely as they say! Even when you’re being maybe-maybe-not chased down hedgerows by bats at sunset.

Flow apparently looks like TypeScript now including dts interop, plus stricter type checking, pattern matching, and more. It's also nearly finished a Rust rewrite. If you're bought into React, this is... extremely compelling. I just wish it had non-nullary sums (enums). flow.org

Flow: A Typed Dialect of JavaScript — JS Static Type Checker | Flow

Flow is a typed dialect of JavaScript — a static type system plus first-class language constructs, built for safety and scale.

flow.org

As per annual tradition I’ve given in and installed the Apple developer betas against all advice. They actually feel more stable than the previous stable release so far.

Forza Horizon 6 at max settings (5K w/ RT) on a Studio Display XDR via GeForce NOW looks unbelievably good. I'm shocked at how playable remote streaming is, even as someone latency-sensitive. For reference this is with broadly-measured 3ms latency. And it's not heating up my office 😍

I've noticed GPT-5.5 is much more keen than other models I've used to try and create abstractions, except they're usually pretty bad. This isn't helpful if you are - as you should - treating the LLM as something that can type rather than think for you.

Experimenting a bit with local models today. I have a spare 32GB M2 Pro that's accessible over LAN for my agent via llama-server (OpenAI-compatible endpoints). It's not the fastest but models are gradually becoming more efficient.

Going from WiFi 6E (M2 Pro) to WiFi 7 (M5 Pro) has lifted my download bandwidth over WiFi in my office from ~1.3Gb/s to ~1.8Gb/s. 😳

We have a native port of TypeScript, now I want a similar performance improvement for Nix. Many of us are only using it for sourcing prebuilt dependencies in dev shells from nixpkgs, you'd think if a tool optimised for that it could be less expressive and much faster.

I'm thinking about agent sandboxing and I don't see how they can be that effective unless you run your dev process off-device, at least for most domains like frontend web. If you lock the agent down, put it in a container, whatever, it can still just write code that does any arbitrary thing.

Pi agent's /tree feature (see also /fork) is neat, basically take your linear conversation and make it a... tree! Example: ask for a thorough review, fix n at a time, /tree back to the review and go through another set. Could do the same for implementing a complex feature with summary on return.

You can recreate Raycast quicklinks in macOS 26 Shortcuts like so. Spotlight kind of hangs onto the output sometimes for some reason, even if you explicitly "stop and do nothing" at the end. But hey, like this you get syncing for free 😉

Shortcut app steps replicating a quicklink to open Nix package search

Anthropic restricting how you use their subscription (re: harnesses/agents), and seemingly reduced usage limits, is pushing me to explore alternatives. Let’s see if there’s really a moat.