A kernel bug froze my machine: Debugging an async-profiler deadlock
How I investigated and worked around a kernel bug that caused async-profiler to freeze my machine whenever I tried to use a profiler.
The latest blog posts to take off on Hacker News. 21,817 posts.
How I investigated and worked around a kernel bug that caused async-profiler to freeze my machine whenever I tried to use a profiler.
A programming blog written by Vaxry.
ICU gets Unicode right and pays for it. This post shows a different approach: fold-safe windows, SIMD probes, and verifiers for fast UTF‑8 search.
Introduction Over the last decade, when working on databases with UUID Version 41 as the primary key data type, these databases have usually had bad performance and excessive IO. https://datatracker.ietf.org/doc/html/rfc4122#section-4.4 ↩
Building a Tamagotchi-style language learning iOS app with SwiftUI character animation - on drill design, motivation loops, and where Duolingo gets it wrong.
In May of 2023 an internal refactoring PR from the Svelte repo made it to the front page of the Hacker News forums. The (superficially) controversial PR seem...
One of the (many) depressing things about the "AI" future in which we're living, is that it exposes just how many people are willing to outsource their critical thinking. Brute force is preferred to thinking about how to efficiently tackle a problem. For some reason, my websites are regularly targetted by "scrapers"…
There comes a time in every software engineer’s life when they come up with a new binary-to-decimal floating-point conversion method. I guess my time has come. I just wrote one, mostly over a weekend: https://github.com/vitaut/zmij .
“Compiler Engineering in Practice” is a blog series intended to pass on wisdom that seemingly every seasoned compiler developer knows, but is not systematically written down in any textbook or online resource. Some (but not much) prior experience with compilers is needed.
About two weeks ago I entered a discussion with the docs.rs team about, basically, why we have to look at this: When we could be looking at this: And of course, as always, there are reasons why thi...
An informal introduction to formality in Lean 4
Back in 2017 I wrote about a technique for creating closures in C using JIT-compiled wrapper. It’s neat, though rarely necessary in real programs, so I don’t think about it often. I applied it to qsort , which sadly accepts no context pointer. More practical would be working around insufficient custom allocator…
Discover Twilio’s shift to a single powerful service! Learn cloud communication trends, customer success stories, and how to build scalable apps. Join now!
A 12 day Advent of Code year convinced me Gleam is the real deal, thanks to Rust-like errors, great pipes, and surprisingly ergonomic FP.
MATLAB still shines for math-heavy work. Its whiteboard-style syntax makes code easy to read, review, and run on modern tools like RunMat and fast GPUs.
In Dec 2022 I watched Richard Stallman's talk on the EmacsConf , it was titled "What I'd like to see in Emacs". One of the interesting points Mr. Stallman pointed out in this talk was "memorable names", "I think every …
Understanding how search engines transform text into tokens through character filtering, tokenization, stemming, and stopword removal.
I had a vague idea that closures could have a variety of performance implications; I did not believe that so many of the chosen and potential designs for C and C++ extensions ones, however, were so…
There are very few universal rules in software engineering, but there are are a lot of near-universal principles. Things like "prefer composition to...
Today, we’re pleased to release pg_clickhouse, an Apache 2-licensed PostgreSQL extension to transparently execute analytics queries on ClickHouse directly from PostgreSQL.
One of legal tech's clichés is that "lawyers live in Word". This is demonstrably incorrect. I, for example, am a lawyer and in fact live in London, England…
Common Lisp has good packaging tools, but they're different. Here we explain the what and how.
There's an old compiler-building tutorial that has become part of the field's lore: the Let's Build a Compiler series by Jack Crenshaw (published between 1988 and 1995).
Automatically erase memory to prevent secret leaks.
Django 6.0 was released today, starting another release cycle for the loved and long-lived Python web framework (now 20 years old!). It comes with a mosaic of new features, contributed to by many, some of which I am happy to have helped with. Below is my pick of highlights from the release notes.
Let’s get a few things out of the way before I go any further with this seemingly impertinent thought, because it’s nowhere near as snarky as it sounds.
I'm the kind of person who thinks about the design and implementation of hash tables. One design which I find particularly cute, and I think deserves a bit more publicity, is Robin Hood open-addressing with linear probing and power-of-two table size. If you're not familiar with hash table terminology, that might look…
Blog post
Agentic coding tools are dramatically reducing software development costs. Here's why 2026 is going to catch a lot of people off guard.