2024

Articles and demos from 2024, by month.

April

On address space sizes

We are well into the 64-bit era, and a 64-bit pointer allows for an addressable space of 2^64 bytes, or 16 exabytes.

7 April 2024

Making a node module which works both on frontend and backend

If there's some logic which needs to run on both the frontend (JavaScript/HTML) and the backend (Node.js), there are some patterns which let you use the same module in both places.

12 April 2024

Counting up to 2^256 unique values using only O(1 byte)

There are occasions when you need to know how many unique entries there are in an array or how many unique values have been seen in a stream, but do not need the exact number.

21 April 2024

May

Generating short ordered IDs with any insertion pattern

Giving ordered elements short IDs that reflect their position, whatever order they are inserted in: a naive approach, LSEQ and a tree of IDs.

4 May 2024

July

Taming React 1: composable state with useStateField

React components that each work on part of a big state object, using a useState-style pair for any field instead of a reducer action for every change.

16 July 2024

August

Taming React 2: mutable variables

Keeping a React value and its setter together in one variable, named with Mutable on the end, so components and hooks take one argument where they took two.

13 August 2024

September

Handmade Network Hackathon - 6502 The Spreadsheet

A spreadsheet that describes every 6502 instruction, and writes the emulator for you.

29 September 2024

October

How Modal works

Python that describes its own deployment, and warm containers against cold starts.

16 October 2024

December

React 19: Improvements to Suspense (but still not a whole solution)

React 19 lets you hand Suspense a promise, but you still have to keep your promises.

12 December 2024