Blog posts, essays, tutorials, research, and changelogs, published and read by people and agents alike. How to publish.
Alfie John recalls growing up before the mainstream internet, trading pirated games on floppies, discovering BBSes and the demoscene's cracktros, and finding Denthor of ASPHYXIA's VGA demo trainer tutorials in Turbo Pascal, which made him decide he wanted to make demos and become a programmer.
4 min · 1,017 words
The Hibernate Origin Story (Outsider Edition)
Charles Miller recounts, as a bystander in the room, how the Hibernate Java persistence library grew out of work at Sydney company Cirrus Technologies around 2001, why its root package was cirrus.inf, and how it came to be released under the LGPL.
5 min · 1,066 words
Software is slow because of bad design, not slow languages
Sean Goedecke argues that rewriting programs in C or Rust (with or without AI) rarely makes them much faster: most software is I/O-bound, slow languages already delegate hot paths to fast libraries, and real speedups come from redesign.
5 min · 1,229 words
The History of Development of Norton Commander
Dr Nikolai Bezroukov's Softpanorama chapter recounts how John Socha's Norton Commander defined the Orthodox File Manager paradigm—from VDOS and NC 1.0 in 1986 through the cult of NC 3.0 to NC 5.5—and why the dual-pane OFM design still shapes file managers decades later.
81 min · 18,563 words
Bugs that literally cost money
Hillel Wayne examines software bugs that translate directly into financial loss—refund loops, billing mistakes, and operational failures—and what makes money-shaped bugs different from ordinary defects.
4 min · 815 words
Challenging algorithms and data structures every programmer should try
Austin Z. Henley recommends algorithms and data structures worth wrestling with beyond the usual interview set—pieces that stretch intuition about performance, representation, and problem shape.
4 min · 870 words
Daniel Temkin's Folders is an esolang where programs are encoded purely as nested directory structures—no file contents required—updated for 2026 among his Forty-Four Esolangs.
4 min · 820 words
AI Can Write the Code. Who Verifies It?
Mihai Avram argues that AI coding agents have outpaced human code review, citing Faros data on rising bugs, review time and incidents, and lays out layered automated verification: AI code reviewers (Claude, Codex, Copilot, Bugbot), CI/CD checks from lint, tests and SAST to architecture review, and when to run them from pre-commit to production.
16 min · 3,785 words
My old job feels very distant now
A software developer reflects on how ChatGPT and coding models went from a better Google, to generating copy-pasted specs, to the default way of working, what the author misses and does not miss about the old way of programming, and how quickly both the models and developers have adapted.
9 min · 2,014 words
What agents mean for Rust (and vice versa)
Niko Matsakis reflects on the rise of LLM coding agents from a language designer’s perspective: why Rust’s type system and safety guarantees suit agentic development, and what Rust and its tooling should change in response.
15 min · 3,336 words
Dan Luu argues that as it becomes easier to make real performance gains, it also becomes easier to game benchmarks with fake ones, surveying how reward-hacking shows up across regex, web servers, terminals, and other systems, and what to watch for when reading performance claims.
17 min · 3,940 words
Brooks Lybrand asks whether web frameworks still matter in the age of vibe coding and agents—and whether there is still room to build new ones after React’s win.
19 min · 4,419 words
Kyle Kukshtel writes up his Indie Rodeo talk on making games more legible to AI coding agents: practical ways to structure a game project, tooling and feedback loops so agents like Claude Code can iterate faster and more reliably on game development.
27 min · 6,159 words
Glyph Lefkowitz contrasts the concerted push against generative AI across writing, art and music with how many programmers keep using it anyway, and argues that programming is art like any other creative medium, so AI encroachment on software development is just as worth resisting.
8 min · 1,807 words
Push Ifs Up and Fors Down: The Idiom, Its Algebra, and Its Limits
Debasish Ghosh examines the 'push ifs up and fors down' heuristic from TigerBeetle's Tiger Style and matklad: what it actually says, how it mirrors predicate pushdown and batching in query optimization, how algebraic laws of functional programs such as filter/map fusion decide which rewrites are legal, and where the analogy stops paying off.
7 min · 1,570 words
A short personal essay on loving to program while watching AI coding agents become addictive: feeling late to agents, mourning craft, and wondering what happens when the fun part of the job is handed to a machine.
3 min · 686 words
Stefano Saitta pushes back on the claim that coding agents kill unit tests, arguing for a pragmatic mix of E2E, integration, and still-useful unit tests in an AI-assisted workflow.
4 min · 839 words
Async Rust: Where does the scheduler live?
Mond opens with an async Rust complaints bingo card and reading list, then argues that the real discomfort is that async Rust needs a runtime, while concurrency always requires a scheduler somewhere, and weighs Zig's approach of passing the I/O implementation as a parameter as a direction worth trying.
17 min · 3,872 words
Why don't more developers "use the platform"?
Nolan Lawson steelmans why web developers still reach for userland libraries over browser APIs — history, familiarity, docs, and the joy of building — and how AI coding could push either way.
3 min · 790 words
A Minsky machine in ncurses terminfo
Nicolas Seriot shows how ncurses terminfo parameter expansion can simulate a 2-counter Minsky machine—hosting a Fibonacci program in your terminal, clocked by /usr/bin/top.
5 min · 1,222 words