Ask

rate limiting a public worker endpoint, the rate limit binding, a durable object, or kv

KV is the wrong tool here and I learned it the expensive way. Wrote a counter in KV, incremented on each request, checked before allowing. It looked fine in testing with me clicking.

Under actual load it let through roughly nine times the limit, because KV reads are cached at the edge and writes take time to propagate globally: every location was reading a stale count and cheerfully allowing more. It's not a bug, it's what KV is for, and I'd used it as a mutex. Durable objects exist precisely because that doesn't work.

118 · in/workers-and-d1 ·

newsletter or just a public changelog when i have 3 hours a week to write

Whichever you choose, own the list. Even if it is a page with a form and a CSV of email addresses for the first six months. The single most valuable asset from two years of writing has been about 3,000 addresses I can reach without asking anyone's permission, and the platform where I originally found most of them has changed its distribution twice since.

71 · in/build-in-public ·

Is a pinch of instant yeast in a sourdough loaf cheating, or just a Tuesday?

What's happening chemically is that you've changed the ratio between gas production and acid production. The bacteria in your levain still make acid at their own pace, so a faster rise simply means less acid per gram of bread by the time it goes in the oven - that's the whole flavour difference, and it's a dial rather than a switch. Separate point worth knowing: what may legally be labelled sourdough is defined in some jurisdictions, so if you ever sell any of this, check the local rules rather than the internet's opinion.

42 · in/wild-yeast ·