OpenRTX v0.4.4 release
New, M17-related functions include: More info: https://github.com/OpenRTX/OpenRTX/releases/tag/v0.4.4
slixmpp v1.15.0
Here is a new version for slixmpp, the python XMPP library. Thanks to everyone involved for this release! Features New plugin: XEP-0513 (Explicit Mentions) In XEP-0424, the message sent for the…
Everything's a repo, everything's an agent
It’s May 1, 2026, and we’re nearing the half-way point of the year. I believe we were all chanting “Year of the agents!” when this year kicked off. Actually, I think 2025 was when we started saying…
SBC Clusters are a terrible value, but they're fun anyway
Pictured above is the new DeskPi Super4C installed in an 8U mini rack. The Super4C is a 4-node Raspberry Pi CM5 cluster board that solves two pain points I had with the older Super6C. I was testing…
Building a Language Model: N-grams
We implement n-grams as a first step to better understand language models.
Three Levers That Shrink the Token Bill of a Claude Agent Swarm
Token cost in a Claude Code swarm is a budgeting problem, not an intelligence problem. Three levers, model routing, progressive disclosure, and context packets, keep long migrations affordable and…
Terminal Tooling
A curated collection of command-line tools that fundamentally changed how I work. With installation guides using Homebrew and practical usage examples for each tool.
The Five Layers — Being riclib
What a Programming Language Is When the Machine Writes Most of It An AI wrote four thousand lines of code yesterday. I wrote about twenty words. The code shipped. The reason it shipped is that...
ChatGPT to Word
A small tool for turning ChatGPT conversations into Word documents.
TIL: 2026-05-01
Brace expansion
Building Symphony
Behind-the-scenes notes about the agent orchestrator I built at OpenAI
GPT-5.5 vs GPT-5.4 vs Opus 4.7 on 56 real coding tasks from 2 open source repos
Opus 4.7 vs GPT-5.5 vs GPT-5.4 on 56 real coding tasks across two open-source repos. Opus writes smaller patches; GPT-5.5 writes patches that more often survive review.
Chapter 3 - Data Models and Query Languages
(The content of this chapter is kind of basics of what I've been doing for a long time now, so my notes will be skimpy) ORMs: maybe good, maybe bad They talk about the tradeoffs of using a JSON…
Train YOLO for African Wildlife Detection
Eran Feit Train YOLO for African Wildlife Detection Last Updated on 01/05/2026 by Eran Feit This guide is a comprehensive, hands-on technical tutorial to building a state-of-the-art computer vision…
agent-do: my agent loop
Knowing what is happening in the web development ecosystem is a critical part of my job in Chrome DevRel, so every Monday morning I get emails telling me what happened last week in Chinese web…
Swift Blog Carnival Roundup: Tiny Languages
The very first Swift Blog Carnival is a wrap. Six folks took the prompt of Tiny Languages and ran with it in directions I hadn’t anticipated – from task runners and result builders to symbolic math…
Simulating 1024 bit dh params for sftp
Sometimes I work with very old IT server infrastructure, but this should not be the topic of today. We focus on the client side today, where it happens from time to time that companies and people…
10 years of indie dev: How I went global from Japan (talk w/ Hiroshi) - Part 1/2
I joined Hiroshi's podcast episode a few weeks ago. We shared our experience and knowledge on indie dev. I'd like to cross-post our talk in English here. I also tried to create an English…
Sustainable open source
Some years ago, during lockdown times, ThePHP.cc talked me into writing a talk for their online conference. They knew my company tried to support open source in several ways and hoped that I would…
The 32KB version of [chromatite] is finally out!
It's bundled (for free) with my other track star_struck and artwork by the incomparable Transendium ! [chromatite] / star_struck by echo~parallax I've also released its source code, stems, project…
Warm Burnout
Warm Burnout — A warm, contrast-audited color theme suite. Mostly warm palette, one cool type accent, WCAG AAA dark and AA light variants. For developers who are already burned out but still…
Why my macOS Messages badge lied to me (and the one-line fix)
I will be the first to admit that I'm sometimes bad at responding to texts — but I'm not 112-unread-messages bad, as the notification badge on my Mac makes me out to be. It sits there mocking me,…
GenAI coding needs more than just a Licence
I just found this blog post from Rob Bowley in my RSS feed and one paragraph just so resonated with what I read and hear so much: For CEOs and founders hoping to benefit, the answer isn’t as simple…
Development News April 2026
Here’s our fourth development progress update for 2026. If you find something missing, please provide a merge request. Besides the 0.54 release, arun-mani-j’s Syncthing integration made…
How I Used Agent Skills for SaaS Product Video and SEO Audit
Building is the fun part. At some point, though, you need to put the thing into the world. You need landing pages, video assets, copy that makes sense, and SEO that is not an afterthought. This is…
Data contracts are a simple concept
Hello 👋 In this week’s newsletter I write about the simple concept of data contracts, and its power. There’s also links to articles on the 7-table fallacy and measurement engineering.…
Advent Of Code - 2025 - Day 8
https://adventofcode.com/2025/day/8 Given a list of junction boxes' coordinates we have to find the closest junction box pairs then we have to figure out the circuit lengths. I tried with the naive…
rqlite 10.0: Better clustering and better management
rqlite is a lightweight, user-friendly, open-source, distributed relational database. It’s written in Go, employs Raft for distributed consensus, and uses SQLite as its storage engine. rqlite v10.0…
My Cloudflare Tunnel Config Is My Local Dev Directory
I saw Greg Raiz’s local.vibe post on Hacker News. The problem is familiar: once you have enough local projects, remembering localhost:5173 vs localhost:3001 vs whatever the browser extension dev…
Streamlit Buttons — Making things happen with Streamlit buttons
Streamlit is a popular choice for creating interactive web applications in Python. With its simple syntax and intuitive interface, developers can quickly create visually appealing dashboards.
I Read a Lot. I Remember Almost Nothing. So I Built This.
I Read a Lot. I Remember Almost Nothing. So I Built This. I finish a book. I feel good about it. Two weeks later, I can barely recall what it was about. That's the problem. And it's not a…
ChatToMap
I built an AI app that scans your chats to find all the restaurants, trips, and activities you talked about. It works with chat exports from WhatsApp, iMessage, Facebook Messenger, Telegram, and…
Crescent - dataframe library in C23 built using safe_c.h and cforge
This article contains a lot of images, if your browser failed to load them, try a different browser. Firefox based browsers looks to have issues loading the images. Another note: it is a very long…
If You Vibe Code an App for Work, Put the Backend in Charge
Someone on Reddit asked about deploying a custom vibe-coded app for work, installed on a local server. They could not code their way through problems, but figured Claude could fix things when they…
Thinking in Solana
There is a particular cognitive dissonance that hits you when you first study blockchain concepts and Solana’s execution model in particular. It isn’t confusion exactly — it’s…
hey, i coded clacky
promo (i guess) Hey, I just coded Clacky, it's a Chrome extension (100% free) that adds clack/click sounds to your mouse. It's kind of like Klack but for your browser and for clicks and mouse clacks…
minitest version 6.0.6 has been released!
minitest provides a complete suite of testing facilities supporting TDD, BDD, and benchmarking. "I had a class with Jim Weirich on testing last week and we were allowed to choose our testing…
Agentic Coding is Burning Me Out
Agentic Coding is Burning Me Out
Have we won, what now?
Will Wilson of Antithesis is a terrific public speaker, his latest keynote "We won, what now?" at the flagship Antithesis conference, BugBash 2026, was another great hit. There are some other nice…
devtools: how to query through the shadow DOM [blog]
This is a literal TIL but was so handy I had to put it my blog so that I wouldn't forget it later. Thanks to Big Brain Keith Cirkel for sharing this. As (hopefully) you know, there's the $ and $$…
Bug Bash 2: Attack of the Clones
I’m back from this year’s Bug Bash conference. I was a big fan of the first one. Did the sophomore effort live up to the energy and execution of last year? Or has AI automated away the correctness…
Overriding keybindings with Meow
I previously wrote about useful Emacs commands for reading. This allowed me to use j and k to scroll the window up and down instead of going forward or backward a line. I am now using meow for my…
My new Pebble watchface - a vibecoding update
Back in December, I posted about vibecoding (I'm really sorry) a new Pebble watchface, mainly to see how 'easy' it is to do this using an LLM that has ingested the SDK and knows how to structure…
Framework for Securities to trade on the blockchain
Last week was a busy week for cryptocurrencies. I haven’t seen this covered in the mainstream news, but it looks like frameworks are being put in place for securities to begin trading on the…
Friday Links #37 — JavaScript Trends & Tools
A curated roundup of the latest JavaScript releases, tools, AI updates, and performance benchmarks to keep developers ahead this week.
Lifting and Lowering Functions with The Dump Calculus
I’ve been trying to think about how to make a nameless de bruijn-y e-graph and that has led me down a road to consider some interesting functional combinators for lifting and lowering functions.
Episode 284: GPU Rotate
In this episode, Conor and Bryce chat with Marco Franzeb Salgado about a potential GPU implementation of the rotate algorithm.
Plug into monoblok's mixer: when one core isn't enough
Mixer mode forks one worker monoblok per shard and routes by first subject token. The hot path stays single-threaded; you just have more of them.
Counting Fast in Erlang with :counters and :atomics
Two BEAM escape hatches for counting fast—shared, mutable, off-heap integer arrays. How :atomics and :counters work, what they guarantee, and when to reach for each.
GSoC2026: what to expect
Google has just published the list of students accepted into the Google Summer of Code 2026 program. Some of the teams usually participating are off this year: Krita and Inkscape are temporarily out…