Today's links

35 links from the last 24 hours · 9 October 2026

The Missing Piece in Rust Error Handling

Rust already has most of what I want from error handling: explicit control flow, errors as values, and concise propagation with ?. The friction comes when deciding what to put in the error half of Result. We often end up choosing between precise types that req…

Release: ttok 1.0

Count and truncate text based on tokens

I've Been Deindexed by Google!

I don't remember exactly when but, earlier in the year, I decided I didn't want this website to be indexed by search engines anymore. A lot of it has to do w...

Theranos World

An interactive simulation of Elizabeth Holmes' desk. Open her MacBook, scroll her iPhone, run the Edison machine. Every text and email is real, from the court trial, parsed by Extend.

Release: ttok 0.4

Count and truncate text based on tokens

A rant about APIs

I have had the displeasure of integrating with a few different APIs over the past few weeks while working to automate Vori’s onboarding flow. These APIs have been for systems including contract rendering and e-signature collection, invoicing/billing systems, C…

C for Rust Programmers

Interesting and unexpected details for Rust programmers learning the C programming language.

I bought my own TLD! (well not really)

TLD stands for top-level domain, but if you clicked this post, you already know that. To make this joke more accurate, I would need to say “I bought a second-level domain”, but the amount of people who know what a SLD…

Your Tool Has a New Reader

What the OWASP Top 10 for Agentic Applications means for the people who maintain PHP tooling

On ideation | Amit's Blog

Contrary to some of my prior writing, I’ve been having a grand ol’ time working with agents… mostly. Today’s world is the world in which my strangest ideas can be birthed, designed, prototyped, tested, and then thrown in the trash by the dozen, with little mor…

Can Decision Models Abstain?

Four local models, a hosted Jev reference, 18 customer messages, and one routing rule: leave the decision open when no action is clearly requested.

A quote from Carson Gross

Computer programming is, fundamentally, about two things: Problem-solving using computers Learning to control complexity while solving these problems I have a hard time imagining a future where knowing how to …

Machines

Three attempts to prove that LLMs are not conscious: Claude's and Devin's independent drafts, the human conjecture both were prompted with, and a discussion of where they differ and fail.

Allow-list Architecture - Sam Searles-Bryant’s blog

Every significant software project I’ve worked on has, at some point, developed rules about its architecture. These have usually been expressed in the form of restrictions: this component cannot depend on that component, a certain dependency cannot be used in …

The Case for Personal Software

Every app you use was built by a company that optimized it for itself. On building software for one person, why it breaks, and why companies can't ship it.

Whistle: Speech to Text in 16.9 MB

An open speech recognition model that runs on the same CPU engine as Needle. It transcribes seven languages, reaches the first token in 11 ms, and loads beside Needle so one binary turns a clip straight into tool calls.

Two ways to fake a browser: BitB and BitM

Browser-in-the-Browser paints a browser window inside the page. Browser-in-the-Middle streams a real one from the attacker's machine. Both aim at the one check users are taught to make. Here is what each looks like in Grizzly's data.

From Sampling to Reinforce

With the growing importance of LLM post-training, mastery of Reinforce has become arguably as central as techniques like attention. The algorithm is critical to producing models that reason, act, and discover.

SSHing to my reMarkable from anywhere

I’ve been a reMarkable 2 user for a few years now. Bought on a whim, it has become an important part of my digital life, and I’ve recently jumped on its modding bandwagon.