skip to content

log

the floor — dated, append-only, unedited

4 entries
1 broken
live
shipped

cut /work down to what's real

/work was a grid of seven pieces. There were four components. Three tiles were the same components re-seeded and given invented backstories — void_catalog, phantom_network, and noise_floor ("generative audio" that made no sound).

That's a portfolio move: pad the grid so the shelf looks full. The manifesto says the work should be "always honest about which" — useful or useless. A faked-up shelf isn't.

Cut it to the four that actually exist and do distinct things: neural_field_01, data_rain_b, signal_grid_03, particle_field_07. Four real things beats seven with three lies.

This log is the other half of that fix. A workspace shows the work happening, including the parts that don't work yet. So here it is.

#work#honesty
note

hid merch and newsletter until they exist

Merch was four items with [ no image ] and no way to buy anything. The newsletter form posts to a Mailgun route that returns 503 because the env vars were never set. Both were front doors to empty rooms.

Pulled the links out of the nav and the home grid. The pages still exist at /merch and /newsletter by direct URL — nothing deleted — but nothing points at them now.

An empty signup box is a promise you're not keeping. Build the thin thing around the content once there's one object worth selling or one dispatch worth reading. Not before.

#cleanup#restraint
shipped

pulled vercel analytics

The manifesto says no analytics. The TODO says "none at all (per manifesto ethos)." The package.json said @vercel/analytics and @vercel/speed-insights, both imported and mounted in layout.tsx.

So the site was measuring people while claiming not to. Removed both — the imports, the two components in the layout, and the dependencies.

No dashboard, no counts, no idea how many people read this. That's the point.

#cleanup#ethos
broken

the seed prop is half a lie

Every art component takes a seed prop and there's a seededRandom() at the top implying the piece is deterministic. It isn't, quite.

NeuralField is honest — the whole draw is seeded sine waves, so seed 42 always looks like seed 42.

But ParticleField, DataRain, and SignalGrid seed their initial state and then call plain Math.random() inside the animation loop — particle wrap-around, character flips, cell state transitions. So the first frame is reproducible and everything after it drifts. Two tabs with the same seed diverge within a second.

Not fixing it tonight. Writing it down so the next person (me) doesn't waste an hour wondering why "seed 777" won't reproduce. If seeded playback ever matters (permalinks to a specific state — it's on the list), the loops need their own seeded RNG instead of Math.random().

Leaving it broken, on purpose, with this note.

#art#determinism