Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 3,497 posts.
Building Container Images with Nix
Dockerfiles are de facto standard for creating container images. In this article I highlight some issues with this approach and I propose building container images with Nix.
Three sins of authors in computer science and math (1997)
Most of us learn how to write technical articles by osmosis. After reading a hundred or so papers, we unconsciously pick up the common patterns of the field and begin to imitate them. This phenomenon is largely beneficial, but there are several truly odious habits that are almost universally and inadvertently adopted…
Fuzz me wrong – How QuickCheck destroyed my favourite theory
Quite a while back I wrote a larger article on the algebraic foundation of software patterns which also covered the MapReduce algorithm .
Version Control for Structure Editing
That’s the headline for my latest project (with Tomas Petricek), presented at HATRA. [paper] [recorded talk] With this work I am finally confronting the demon cursing my work: version control. If w…
Diving Deep on S3 Consistency
A deep dive on why we changed Amazon S3's consistency model
A Macro View of Nanite
After showing an impressive demo last year and unleashing recently with the UE5 preview, Nanite is all the rage these days. I just had to go in and have some fun trying to figure it out and explain…
Journalists Start Demanding Substack Censor Its Writers
This new political battle does not break down along left v. right lines. This is an information war waged by corporate media to silence any competition or dissent.
Joining CSV and JSON data with an in-memory SQLite database
The new sqlite-utils memory command can import CSV and JSON data directly into an in-memory SQLite database, combine and query it using SQL and output the results as CSV, JSON …
Acoup: The Trench Stalemate
This week (and next) I want to build a bit off of our discussion of Victoria II and talk a bit about World War I and in particular the trench stalemate on the Western Front. That trench stalemate i…
Fintech Giant Fiserv Used Unclaimed Domain
If you sell Web-based software for a living and ship code that references an unregistered domain name, you are asking for trouble. But when the same mistake is made by a Fortune 500 company, the results can range from costly to disastrous. Here’s the story of one such goof committed by Fiserv [ NASDAQ:FISV ], a $15…
Spotify Codes – Part 2
In part 1 I dove into Spotify Codes and explained the general technical concepts of how they work. If you haven’t read that post you should check it out. I shared it on reddit where it generated a lot of interesting discussion. Ludvig Strigeus, a key early developer at Spotify and the person who invented Spotify…
Making Generative Art with Rust
Artists as technical experts and an interview with generative artist Alexis André
A working D compiler on OpenBSD
I got GDC , the GNU D Compiler, working on OpenBSD . Supporting D has been a very long time coming. Here's the story of how we got here and where we need to go next.
Some sanity for C and C++ development on Windows
A hard reality of C and C++ software development on Windows is that there has never been a good, native C or C++ standard library implementation for the platform. A standard library should abstract over the underlying host facilities in order to ease portable software development. On Windows, C and C++ is so poorly…
In defense of interesting writing on controversial topics
Some thoughts on the New York Times' Slate Star Codex profile
The Decline and Fall of the Latin Neuter
Reading time: 15 minutes There are many significant differences between Latin and its linguistic descendants, the Romance languages. One that stands out from the rest is grammatical gender. Latin h…
The HTML video element needs to go back on the drawing board
The HTML standard doesn’t provide web authors the tools required to embed small video files in a screen and bandwidth responsive way. This needs to change.
AWS doesn’t know who I am
AWS needs an identity that uniquely represents its users, not fractured across corporate identity providers.
Ergodicity, What's It Mean
Ensemble averages and time averages
GitHub Copilot: First Impressions
A glimpse of the upcoming paradigm shift in how we do development
Tesla Project Dojo Overview
A couple of days back, Ganesh Venkataramanan, leader of the Tesla Dojo project, announced the Dojo machine learning training system. It’s an unusually network rich, power dense, and memory light design. I’ve summarized the architecture of the system below but I found three aspects of the system particularly…
The Queen’s Latin or Who Were the Romans? Part I: Beginnings and Legends
Who were the Romans? How did they understand themselves as a people and ‘Roman’ as an identity? And what were the implications of that understanding – and perhaps more importantly…
What’s the origin of the phrase “big data doesn’t fit in excel”?
Welcome to Yak Shaving School! As part of my MSc I'm reading a book about Data Analytics. So I've been chasing down quotes to find their origin. One paper had this popular quote in it (emphasis added): As with many rapidly emerging concepts, Big Data has been variously defined and operationalized, ranging from trite…
Mutation Driven Testing: When TDD Just Isn’t Good Enough
As someone who loves discussing Software Craftsmanship and best practices, Test Driven Development (TDD) is a bit of a sore spot for me. Let me start off by saying that I love TDD’s emphasis on tes…
Book Review: Double Fold
Finalist #6 of the book review contest
Ancient Babylonian Algorithms: The Earliest Programs
An interactive, illustrated timeline of historic moments in humankind's quest for information. With annotations by Jeremy Norman.