New
The latest blog posts to take off on Hacker News. 21,819 posts.
XOR
Recently I was called on to explain the ‘XOR’ operator to somebody who vaguely knew of its existence, but didn’t have a good intuition for what it was useful for and how it behaved.
My washing machine refreshed my thinking on software estimation
I recently had a saga with a washing machine that reminded me why one of the most feared and hated tasks for software developers starts with the question: “So how long will it take you to build that?”
Why I'm writing a Scheme implementation in 2025: Async Rust
I really love Rust. I’ve been using it as my language of choice for about ten years now. I believe that it is a remarkably well designed language, and that includes the parts that are often most criticized, most notably async.
Debugging an Undebuggable App
This app has a surprising number of anti-debugging protections. Let's figure out how to bypass them.
Representing Graphs in PostgreSQL
Some tricks and techniques for working with graph or tree like data in Postgresql
0+0 > 0: C++ thread-local storage performance
We discuss how to make sure that your access to TLS (thread-local storage) is fast, and how the presence of constructors and shared libraries affects the access time.
Searchcode.com’s SQLite database is probably 6 terabytes bigger than yours
searchcode.com’s SQLite database is probably one of the largest in the world, at least for a public facing website. It’s actual size is 6.4 TB. Which is probably 6 terabytes bigger than yours. …
A tail calling interpreter for Python (already landed in CPython)
It’s been nearly four years since I published Parsing Protobuf at 2+GB/s: HowI Learned To Love Tail Calls inC.In that article, I presented a technique I co-d...
How X-Plane Works
X-Plane works by reading in the geometric shape of any aircraft and then figuring out how that aircraft will fly. […]
The Joy of Nand2Tetris
For the last month, I have been working through Nand2Tetris: The Elements of Computing Systems; Building a Modern Computer from First Principles . I recently completed part 1. This first half of the text illuminates the process of building a computer purely from elementary logic gates. Each chapter is comprised of an…
Did Semgrep Just Get a Lot More Interesting?
Documentation and guides from the team at Fly.io.
Saying goodbye to FFmpegKit
Update (July 2026): I have started FFmpegKitNext, a source-only continuation of FFmpegKit’s build toolkit and wrapper library.
Sunsetting Create React App
The library for web and native user interfaces
You're not a senior engineer until you've worked on a legacy project (2023)
Everybody hates working on legacy projects, me as well. Working on one, however, helped me get a deeper understanding of the dev process.
Extensible WASM Applications with Go
Go 1.24 enhances WebAssembly capabilities with function export and reactor mode
Zed now predicts your next edit with Zeta, our new open model
From the Zed Blog: A tool that predicts your next move. Powered by Zeta, our new open-source, open-data language model.
TeX and Typst: Layout Models (2024)
An exploration of the layout models of TeX and Typst.
Tiny JITs for a Faster FFI
Can we have a faster FFI for CRuby? Yes.
Writing a Gimp 3.0 Plugin
GIMP 3.0 is almost out, and I'm thrilled. Not only will this version bring new features and improvements, but it finally modernizes the technology stack in two important ways:
League of Legends data scraping the hard and tedious way for fun
Personal website for some random tidbits I work on
Smuggling arbitrary data through an emoji
With ZWJ (Zero Width Joiner) sequences you could in theory encode an unlimited amount of data in a single emoji.
Everything about Google Translate crashing React (and other web apps)
A deep dive into Google Translate (and other browser extensions) interference breaking React and other web apps.
JJ Cheat Sheet
I’ve been learning Jujutsu a.k.a. jj , a version control system that’s compatible with git repos. It’s clicked for me in a way that git hasn’t even after many years of use.
Go 1.24 Is Released
Go 1.24 brings generic type aliases, map performance improvements, FIPS 140 compliance and more.
JetBrains Fleet drops support for Kotlin Multiplatform
A couple of years ago, we initiated the idea of creating a Kotlin Multiplatform IDE to help facilitate the development of KMP applications. We embarked on this venture, building on the Fleet platform,
How about trailing commas in SQL?
Anecdotally, this might be the most requested feature in SQL: Allow some trailing commas.
Ways to generate SSA
Static Single Assignment is a program representation where each “variable” (though this term can be misleading) is assigned exactly once. Mostly the variables aren’t variables at all, but instead names for values—for expressions. SSA is used a lot in compilers. See this lesson from Cornell for converting Bril to SSA…
We replaced our React front end with Go and WebAssembly
Build powerful software environments and containerized operations from modular components and simple functions. Perfect for complex software delivery and AI agents. Built by the creators of Docker.