Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,830 posts.
Rebuilding memchess.com from its archive
Learn chess openings and variations online by repeating the most popular chess Master moves
Creating your own federated microblog
In this tutorial, we will build a small microblog that implements the ActivityPub protocol, similar to Mastodon or Misskey, using Fedify, an ActivityPub server framework.
Zero downtime migrations
As a backend developer at a mobile app company, a common task was migrating a database schema.This could be to improve query performance, change column ...
Pg_later: Asynchronous Queries for Postgres
Engineering deep-dives, product updates, and company news from Tembo — the platform for running coding agents across your stack.
Reproducible Git Bundles
Describes how to create reproducible and deterministic one-file bundles of git repositories for use cases such as backups.
Ruby Patterns from GitHub's Codebase
Written pieces, talks, and other bits by Zach Holman.
DuckDB 1.0.0
The DuckDB team is very happy to announce that today we’re releasing DuckDB version 1.0.0, codename “Snow Duck” (anas nivis).
Speeding up PyTorch inference on Apple devices with AI-generated Metal kernels
Our lab investigated whether frontier models can write optimized GPU kernels for Apple devices to speed up inference. We found that they can: our AI-generated Metal kernels were 1.24x faster across KernelBench v0.1 problems, and 1.87x faster across KernelBench v0 problems.
Scripting tmux
I often want to start similar workspaces in tmux; for example I always want to tail those two log files in a pane , or I always want to start both vim and mysql in a pane, etc.
Visualizing binary files with ImHex's DSL, the "pattern language"
Viewing my binary file with ImHex. The pattern language pane, on the right,...
Tracing HTTP Requests with Go's net/HTTP/httptrace
net/http/httptrace has been in the standard library since Go 1.7 and most Go developers I talk to have never used it. It exposes hooks for the points in an outgoing HTTP request that you usually cannot see from outside the transport: DNS resolution, connection acquisition, TLS handshake, the moment bytes go on the…
Again on 0-based vs. 1-based indexing
André Garzia made a nice blog post called “Lua, a misunderstood language” recently, and unfortunately (but perhaps unsurprisingly) a bulk of HN comments on it was about the age-old 0-based vs. 1-based indexing debate. You see, Lua uses 1-based indexing, and lots of programmers claimed this is unnatural because “every…
Python Is Easy. Go Is Simple. Simple != Easy
Python and Go have distinct qualities that can complement each other.
Switching from Vim to Intellij
From Vim To IntelliJ In the beginning, a love affair For the last 10 years or so, I have been a die-hard Vim user. I was introduced to Vim…
Why our team cancelled our move to microservices
Recently our development team had a small break in our feature delivery schedule. Technical leadership decided that this time would be…
How boring should your team's codebases be
Thoughts on how to keep the novelty in a team at the correct level for easy onboarding
Game Jam 2 Results
Build retro games using WebAssembly for a fantasy console
Windows Explorer Through the Years
At a glance comparison of every major Explorer release
The /bin/true Command and Copyright
Lest you think that this is a fluke that was quickly corrected, here is the /bin/true program from AT&T's Sys/V libraries as of 1990:
XSLT is a failure wrapped in pain
“ The essence of XML is this: the problem it solves is not hard, and it does not solve the problem well.” – Phil Wadler, POPL 2003
The carefulness knob
A play in one act Dramatis personae EM, an engineering manager TL, the tech lead for the team X, an engineering manager from a different team Scene 1: A meeting room in an office. The walls are ado…