AGENTS.md – Open format for guiding coding agents
agents.md
Copilot broke audit logs, but Microsoft won't tell customers
pistachioapp.com
How to Draw a Space Invader
muffinman.io
Tiny microbe challenges the definition of cellular life
nautil.us
How we exploited CodeRabbit: From simple PR to RCE and write access on 1M repos
research.kudelskisecurity.com
D2 (text to diagram tool) now supports ASCII renders
d2lang.com
Physically Based Rendering in Filament
google.github.io
Emacs as your video-trimming tool
xenodium.com
Without the futex, it's futile
h4x0r.org
Show HN: OpenAI/reflect – Physical AI Assistant that illuminates your life
github.com
Candle Flame Oscillations as a Clock
cpldcpu.com
How Figma’s multiplayer technology works (2019)
figma.com
How to Scale Your Model: How to Think About GPUs
jax-ml.github.io
Why Semantic Layers Matter (and how to build one with DuckDB)
motherduck.com
Avi Loeb: Is 3I/Atlas Our Turing Test by a Superior Alien Intelligence?
avi-loeb.medium.com
Custom telescope mount using harmonic drives and ESP32
svendewaerhert.com
The joy of recursion, immutable data, & pure functions: Making mazes with JS
jrsinclair.com
Launch HN: Uplift (YC S25) – Voice models for under-served languages
Fast Type-Aware Linting in Oxlint
oxc.rs
Passive Microwave Repeaters
computer.rip
Perfect Freehand – Draw perfect pressure-sensitive freehand lines
perfectfreehand.com
This is a pretty good description of RGA (Replicated Growable Array). Which is a list & text CRDT that works pretty well in practice. Automerge used to use this algorithm for text editing, before moving across to FugueMax.
This algorithm has another obscure downside: It has interleaving problems if you insert items backwards. If two users do a series of inserts in reverse order, their inserts will get interleaved in a weird, unpredictable way. Eg, if I type "aaaaa" (as a series of prepended inserts) and you type "bbbb" in the same way, we can end up with "ababababa" or "aabbabbaa" some combination like that. We generally want CRDTs to be non-interleaving - so, "aaaaabbbb" or "bbbbaaaaa" should be the only possible results.
This problem is fixed by FugueMax, described in "The Art of the Fugue" paper[1]. If you're thinking of implementing a text CRDT, I recommend starting there. Fuguemax is a tiny change from RGA. We swap out the sequence numbers for a "right parent" pointer and the problem goes away. Coincidentally, the algorithm is also a 1 line change away from Yjs's CRDT algorithm.
And its really not that complicated. Most of the complexity in the fuguemax paper comes about because - like with RGA - they describe the algorithm in terms of inserts into a tree. If you ask me, this is a mistake. The algorithm is simpler if you primarily think of it as inserts into a list. (Thanks Kevin Jahns for this insight!) I programmed Fuguemax up live on camera a few months ago like this. You can fit a simple reference implementation of fuguemax in ~200 lines of code[2]. (The video is linked from the readme in that repository. In the video I explain the algorithm and all the code along the way).
[1] https://arxiv.org/abs/2305.00583
[2] https://github.com/josephg/crdt-from-scratch/blob/master/crd...