RSSAmplifier

Blog

Joel Holder

Math, coding, philosophy, art, and other things that interest me

joelholder.comRSS feed ↗10 posts

Latest posts

The Staircase and the Slide

A staircase and a ramp can connect the same two floors. Stand at the bottom of each and they look like different ideas entirely — one moves in flat steps and sudden jumps, the other in one continuous rise. Digital and analog. Pixels and ink. A number line marked only at the integers, versus a number line with no gaps in it anywhere. Discreteness counts. Continuity flows. They feel like two…

Looking Deeper at the Meaning of Zero

Every number is defined by where it sits in the continuum relative to one fixed point. That point is zero. It can be thought of the beginning of addition. Zero is the Unit of addition, giving us back the identity of a thing when we add zero to that thing. It turns out to have two descriptions that are really the same fact: Algebra - the operation that changes nothing Geometry - that which has no…

Remote C++ Development Over SSH: No GUI Required

A full IDE running inside nothing but an SSH session. No GUI. No lag. No lock-in. Config, MIT licensed: github.com/jclosure/vscode-flavored-emacs-2026 The case for terminal-only development Here’s the thing nobody tells you: the IDE you’ve been dragging across the network — the file tree, the extension marketplace, the remote-desktop handshake — none of it was ever the point. The point was always…

Gauss, Pascal, and Triangular Numbers

Before we talk about formulas, start with a picture.

A Tiny Proof From First Principles

One of the pleasures of pure math is how far you can travel with very small tools.

Automata Arcade Is Becoming an Instrument

Automata Arcade now has selection transforms, lenses, zones, and manifold-mapped regions. The project is shifting from a cellular automata sandbox into a small workbench for building, inspecting, and reusing emergent systems. Automata Arcade started as a simple cellular automata canvas: paint cells, run the simulation, watch the pattern evolve. That loop is still there, but the tool now supports…

Automata Arcade: Building a Playable Lab for Conway’s Game of Life

Automata Arcade turns Conway’s Game of Life into a live engineering arena. You do not just observe emergence, you shape it in real time.

Evo Lumen Life, creating a living ecosystem in the browser

Evo Lumen Life started as a shader experiment and became a living artificial-life sandbox where organisms swim, feed, reproduce, struggle, and evolve in a shared ecosystem.

Wrapping C and C++ APIs in Python

Python is usually where I want to orchestrate work: load data, shape inputs, run experiments, and glue systems together. C and C++ are where I want hot loops, existing native libraries, SIMD-heavy routines, mature systems code, and APIs that already exist outside the Python ecosystem. The useful question is not whether Python or C is better. The useful question is where the boundary should be. If…

EventBusBridges for Great Good

The SockJS protocol provides a fast and reliable mechanism for providing duplex communication via Websockets. Vertx has a particularly nice implementation of this in the form of EventBusBridges, which make it easy to create secure communication pipelines between an HttpServer Verticle and a variety of polyglot SockJS clients via Websockets or fallback transports. Surprisingly, a Java-based…