2025-10-17
Automerge
automerge.orgAutomerge is a local-first sync engine for multiplayer apps that works offline, prevents conflicts, and runs fast.
2025-08-25
Everything I know about good API design
www.seangoedecke.com/good-api-design2025-06-16
CSS Classes considered harmful
www.keithcirkel.co.uk/css-classes-considered-harmfulThe solution to all of these problems
I humbly put forward that modern web development provides us all the utilities to move away from class names and implement something much more robust, with some fairly straightforward changes:
Attributes
Attributes allow us to parameterise a component using a key-value representation, very similar to Map<string, T>. Browsers come with a wealth of selector functions to parse the values of an attribute.
2025-06-12
Always do Extra
www.bennorthrop.com/Essays/2021/always-do-extra.phpExtra is different than More. Extra is finishing those two screens, but then researching a new library for form validation that might reduce the boilerplate code. Or it's learning ways to protect against common security vulnerabilities from data entry. These little off-ramps from the main highway of Normal Work could be dead-ends and not have any practical value to the project. But they might also be important contributions. And that's the thing with Extra. While the tangible value to the project is uncertain (it could be nothing this time or it could be something), the value to you is real.
2025-05-30
The PGP Problem
www.latacora.com/blog/2019/07/16/the-pgp-problemWhy do people keep telling me to use PGP? The answer is that they shouldn’t be telling you that, because PGP is bad and needs to go away.
2025-05-15
Writing that changed how I think about PL
bernsteinbear.com/blog/pl-writingEvery so often I come across a paper, blog post, or (occasionally) video that completely changes how I think about a topic in programming languages and compilers. For some of these posts, I can’t even remember how I thought about the idea before reading it—it was that impactful.
2025-04-24
Instrumenting Axum projects
determinate.systems/posts/instrumenting-axum2025-03-13
Building interactive web pages with Guile Hoot
spritely.institute/news/building-interactive-web-pages-with-guile-hoot.html2024-11-20
On "Safe" C++
izzys.casa/2024/11/on-safe-cxx2024-10-21
init.py files are optional. Here’s why you should still use them
dev.arie.bovenberg.net/blog/still-use-init-py2024-10-10
'Do' More With 'Run'
maxgreenwald.me/blog/do-more-with-runI recently wrote about Async Pool, one of my favorite JavaScript / TypeScript helpers, and today I want to share an even simpler yet extremely useful utility
2024-09-25
in which interactive development saves the day
technomancy.us/1892024-09-16
Technical Writing One introduction
developers.google.com/tech-writing/one2024-09-10
run freebsd in qemu on linux
sethops1.net/post/run-freebsd-in-qemu-on-linux2024-08-18
Permacomputing
permacomputing.netPermacomputing is both a concept and a community of practice oriented around issues of resilience and regenerativity in computer and network technology inspired by permaculture.
2024-07-09
Using use in Gleam
erikarow.land/notes/using-use-gleam2024-06-19
Pimalaya
pimalaya.orgOfficial website of the Pimalaya project.
2024-06-14
CAUSAL.AGENCY(7)
causal.agencyI make mostly IRC software in C. I like OpenBSD but also the GPL. I just want to read books and try to learn to be kinder. When I can I'd like to talk to strangers and experience more magic.
2024-06-13
Solving SAT via Positive Supercompilation
hirrolot.github.io/posts/sat-supercompilation.html2024-06-11
Self-serve dashboards
briefer.cloud/blog/posts/self-serve-bi-mythSales pitches are the only place where “self-serve dashboards" work. In the real world, it's a different story.
Why "business" people don't use metabase/power-bi.