Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,842 posts.
April Fools 2014: The *Real* Test Driven Development (2014)
Update: APRIL FOOLS! by Kaue Silveira Here at Google, we invest heavily in development productivity research. In fact, our TDD resea...
Delimited continuations in lone Lisp
The lone lisp delimited continuations implementation journey.
Implementing and Understanding Type Classes (2014)
Describing three strategies of implementing type classes, aiming to clarify their behavior
Optimizing Matrix Multiplication on RDNA3
Writing Super-Fast Matrix Multiplication with HIP, RGP, and ISA
Scaffolded LLMs as natural language computers
Recently, LLM-based agents have been all the rage – with projects like AutoGPT showing how easy it is to wrap an LLM in a simple agentic loop and prompt it to achieve real-world tasks. More generally, we can think about the class of ‘scaffolded’ 1 LLM systems – which wrap...
Stuff Your Logs
Paul Khuong's personal blog. Some Lisp, some optimisation, mathematical or computer.
Clojure Numerics: Orthogonalization and Least Squares
How to solve linear systems that have many solutions, or those that have no solutions at all? That's the theme for a thick math textbook, of course, but from...
Introduction to genetic algorithms (example in Javascript)
In this post, we'll learn the basics of one of the most interesting machine learning algorithms, the genetic algorithm. This article is part of a series.
How user groups made software reuse a reality
Before the widespread existence of software repositories like CPAN, NPM, and PyPI, developers seeking to reuse an existing algorithm or library of routines would either check books or journals for code, or, they just might post a classified ad:
80386 Memory Pipeline
The FPGA 386 core I've been building now boots DOS, runs applications like Norton Commander, and plays games like Doom. On DE10-Nano it currently runs at 75 MHz. With the core now far enough along to run real software, this seems like a good point to step back and look at one of the 80386's performance-critical…
Building a custom code search index in Go
Abstract TL/DR I present what I belive is a unique index for indexing and searching source code. It copies ideas from Bing bitfunnel implementation to create a very fast, memory efficient trigram …
Defining Statistical Models in Jax?
This is Bob. And I’d like to know the best way for us to code a bunch of models in JAX to use to evaluate parallel algorithms including normalizing flows. I’m going to dump out my current thinking, but I’m really hoping to get feedback from experts on the best way to do this without starting a flame war in the…
Bash Initialisation Files
It's incomplete, but probably a reasonable place to start. If you think there's something that desperately need to be fixed then send me email and I'll look at it.
Applied Monotonicity: A Brief History of CRDTs in Riak
RiakAround 2013, Riak was at the forefront of Conflict-Free Replicated Data Type (CRDT) development with the engineers at Basho Technologies working hard to integrate efficient, usable CRDTs from t...
Making ASCII Art in Vim
I like using Vim to make ASCII art. I don't use any plugins; Vim already has a bunch of built-in features that are super useful for making ASCII art!
Modeling the World in 280 Characters
An exploration of the mindset, methods, and motivations behind crafting tiny, expressive shaders that combine code, art, and constraint.
Merklizing the key/value store for fun and profit
Joel Gustafson
Eytzinger Binary Search
This tutorial is loosely based on a 46-page paper by Paul-Virak Khuong and Pat Morin “Array layouts for comparison-based searching” and describes one particular way of performing efficient binary search by rearranging elements of a sorted array in a cache-friendly way.
Hunting Down a Go Runtime Bug on 32-Bit Embedded Systems
A customer's Go application kept crashing on a 32-bit embedded Linux system. We traced the fatal netpoll error to a pointer aliasing bug in the Go runtime.
Releasing jsfunfuzz and DOMFuzz
Today I'm releasing two fuzzers: jsfunfuzz , which tests JavaScript engines, and DOMFuzz , which tests layout and DOM APIs.
Babashka Babooka: Write Command-Line Clojure
There are two types of programmers in the world: the practical, sensible, shell-resigned people who need to google the correct argument order for ln -s ; and those twisted, Stockholmed souls who will gleefully run their company’s entire infrastructure on 57 commands stitched together into a single-line bash script.
Nibble Sort
A while back, John Regehr posted the Nibble Sort Programming Contest on his blog. The objective was to write a program that sorts the 4-bit components (nibbles) of 64-bit words as fast as possible. For example, 0x42badc0ffeed00d5 should result in 0xffeedddcba542000 after sorting.
Creating Org mode sparse trees in Emacs and organice
When you have lots of information in an Org file, it helps to narrow it down to just the topic that interests you right now. There's many ways to do that depending on what exactly you want to do. Creating an Org mode sparse tree is one of those options!