Algorithmic and optimization playtime Solving Quoridor This post significantly improves the state of the art in solving the board game Quoridor. I describe novel techniques that enable fully solving almost all board configurations with area ≤ 28 (e.g. 5x5, 8x3, 7x4, etc) for most wall counts on a consumer laptop. Background I was introduced to the board game Quoridor back in 2014 and was immediate
25 May 2026Latest posts
Contra Conway Every Man a Microservice Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations. — Melvin E. Conway, How Do Committees Invent? Conway's law appears true if you observe organizations and systems as they are, but the causality is reversed . Systems are not conceived by organizations, but by a single
8 Feb 2026The cleansing fire of rebirth Manufacturing as Maintenance The maintenance spectrum has two ends. At one end, an object is lovingly maintained with effort and care through the years. A cherished blade sharpened on a whetstone every few months. At the other end, we have manufacturing: just toss the dull knife into the smelter at one end of a factory, and out the other end comes a beautiful, perfect
31 Jan 2026Some thoughts on implementations LLM Memory I've been thinking about LLM memory since GPT3 came out. Back then, my LLM side project was story generation (i.e. fiction). Context windows for LLMs were tiny back then: 4K tokens, input + output. So just a few pages of text. How to write a novella if your entire knowledge of the text is only a few pages, as if you were an amnesiac author? Suppose you'r
19 May 2025Everything I know about how to use it, so far Claude Code A few months ago, Anthropic released Claude Code . It's basically Claude in a little agentic CLI loop. Out of the box, it's good, but not great. But it can be made great with a few tips. This post describes all the tips and tricks I have for using it effectively. N.B. I've been in the habit of writing it as claude-code instead of Claude Cod
11 May 2025A graphical representation Solution-space taste There's a visual analogy I've been drawing on whiteboards for years to explain a key element of taste in software design. Imagine the problem domain as a 2D field of obstacles you're trying to get across: In this analogy, a path represents a solution. Suppose you're trying to get from the center of the bottom to the center of the top. A common failur
25 Apr 2025How good are you? New Game timer: 0 moves: 0 Controls: Click a cell to select it Click another cell to swap Clicking a selected cell will deselect it
22 Apr 2025Layout optimization problem Typo Minimizing Keyboard I'm always frustrated when I make a typo, but the typo is of another valid word, so a spellchecker can't easily catch it. For instance, "love" and "live" are easy to typo — 'o' and 'i' are adjacent on a QWERTY keyboard. There's a ton of these words. Precious and previous. Funding and Finding. All these words differ in 1 letter and those letters
6 Apr 2025Predictions on near-term AI inference spending The curve is bending We've finally crossed an inflection point of model utility where the output is actually worth more than the cost for real dev work. It's starting to make sense to throw lots of money towards inference. Some devs will likely get 5-digit AI inference budgets in 2026. There will probably be some disruption of the junior dev job marke
5 Apr 2025A fun puzzle game New Game Cheat remaining: 10 moves: 0 (optimal: 0) timer: 0 Mouseover a puck to select it Click in a direction to slide Pucks stop at walls or other pucks Get the matching puck to the colored X This game is obviously inspired by Ricochet Robots which is the best nerd party game and you should buy a copy of immediately
4 Apr 2025Fun little board game Rohit Chess @krishnanrohit tweeted this tonight: 7yo created a new game - The front lines move like King in chess - Large circles in the back like bishop, diagonally - The spiral round thing is the King to get checkmated, though it moves like Queen in chess Surprisingly fun! pic.twitter.com/cBtkfX7XPB — rohit (@krishnanrohit) March 10, 2025 I described the game to o1-pro and
10 Mar 2025Please make it AI software I'm surprised doesn't exist yet State of play I'm writing this on 20 February 2025. It's been: 4.5 years since GPT3 2.5 years since DALLE-2 and StableDiffusion 2 years since ElevenLabs voice cloning 1.5 years since Llama 2 1 year since Suno AI music 3 months since OpenAI o1 The good I don't like to be overly pessimistic, so I'll start by listing a few applications of AI
20 Feb 2025An essay on post-AI economics Technocapital In this essay, I posit: A technocapital entity will exist That entity will consume an ever-growing percentage of the universe Humanity will be contained to a bounded slice of the universe Within that slice, the only labor that will have value is that in which humanity is inseparable from the value (i.e. art) Definition Let's recursively define technocapi
6 Feb 2025A guide How to write a good design document This essay is a version of the response I gave to my friend Vik's call for suggestions: had a lot of people ask how they can learn to write design docs, and i didn’t have a good answer besides “work at a place with writing culture and smart senior engineers”. anyone have more useful advice? https://t.co/7F9BV31shv — vik (@vikhyatk) August 31, 2024 Defini
1 Feb 2025An honest primer Design Patterns A software design pattern is just what the name suggests: a pattern that comes up repeatedly in software design. Just like an architect may design two different houses, there are a lot of similar problems faced. For example, where to position the door to a room? The middle of a wall? The corner? Does it open in or out? A skilled architect may say "this is a small b
4 Jan 2025How to write complex software Suppose you are implementing some complex piece of software — a database, a word processor, a filesystem, a web browser, whatever. How do you get started? How do you actually organize the code? This post attempts to lay out a general method for approaching this problem with some specific techniques and guiding heuristics. Overview The 10,000 foot view of what we'll di
1 Jan 2025The study of bureaucracy Bureaulogy I'm fascinated by the formation, evolution, and perpetuation of bureaucracies. If I were to ever lose my mind and decide to go do a sociology PhD, I'd absolutely do it about bureaucracy. I'd want to establish a new subdiscipline of bureaulogy — the study of bureaucracies. I think this subdiscipline is just as real and interesting as something like anthropology o
21 Dec 2024On the shackling of the peasantry A peasant's plight I recently read the excellent book The Inheritance of Rome . It covers the period between 400 and 1000 AD, i.e. the Dark Ages. Until reading it, I hadn't really considered what it was like to be a serf in the feudal era. You learn about the period in World History class in high school, but mostly just mechanistically — how the feudal system work
14 Nov 2024A sociotechnological trend Every Man his own API We're witnessing the spread of social trend I've been calling API-ification . This isn't a new trend, but has previously only been available to the few. By API-ification, I mean a person exposes well-defined processes for interfacing with that person. For most of history, only high-demand people such as politicians, CEOs, celebrities had access to t
9 Nov 2024Solving coordination problems in community-building Culture is a set of social Schelling points Imagine if I picked 1 person from 1000 disparate tribes from around the planet and put them in a town together. The town would have 1000 citizens, but no culture. It may develop a culture over time, but immediately post-transplant, there is none. Culture is a shared experience. It's high-context. And, t
27 Oct 2024