How it got here
Alter looks like a nine-month project from its commit history. It isn't. The current repo is the fifth. Fourteen eras, five rewrites, one lesson learned three times.
- Feb 2025
chotu
A two-day script for saving thoughts into a database.
WhyA weekend itch: keep everything I capture in one place, built the fastest way possible.
The full story - Apr 2025
pa2: PARA + AI
The first real product: a filing system that interviewed you, sorted your goals, and summarised your projects.
WhyThe blank database needed an organising principle; PARA was it, and it never left.
The full story - May – Jun 2025
CogniNote
An AI notepad with a task board, in the repo that would later be renamed alter.
WhyStrip the filing cabinet back to the two things I actually used: notes and tasks.
The full story - Jun – Jul 2025
alter_1
The first attempt at a serious multi-service platform. It sank in three weeks.
WhyThe prototype deserved real foundations, but I built the foundations before deciding the building.
The full story - Jul – Oct 2025
The hinge
Eleven weeks, mostly on holiday, writing no code, and doing the most important work in the whole project.
Whyalter_1 didn’t fail from sloppy code; it failed because code came before the spec. So: go learn to make the spec the source of truth.
The full story - Oct 2025 – Jan 2026
The spec-first turn
Months of writing instead of coding: the entire product on paper before a line was built.
WhyBuilding first had now failed twice. Invert the order.
The full story - Nov 2025 – Apr 2026
v2: the CODE workbench
The specced product, built for real: every thought through one four-step machine.
WhyThe spec said one pipeline could process any thought. Production said otherwise.
The full story
- 10 May 2026
The reckoning
The realisation that three quarters of captures aren’t tasks, and the schema change that separated them.
WhyMatch the shape of the response to the shape of the thought.
The full story - 11 – 14 May 2026
Greenfield: 72 hours
Deleted v2’s product layer, redesigned the whole surface, and rebuilt the build process itself.
WhyNo users to protect yet, so migration was cost without benefit, and one builder needed a loop, not heroics.
The full story - May – Jun 2026
Building v3
Six weeks shipping the five modes, the self-compiling wiki, and the daily briefing.
WhyThe agent loop absorbed the volume; one crisis taught the lesson design couldn’t.
The full story - Jun – Jul 2026
Phase 5: a real product
Backups, monitoring, staging, legal pages, GDPR mechanics: the invisible half of a launch.
WhyCharging strangers is a responsibility before it’s a business model.
The full story - Jul 2026
The beta: first contact
Other people used it, on their own phones, for the first time.
WhyThe product held up better than the instruments did. I had built something I couldn’t observe.
The full story - Aug 2026
The restructure
Five pages became two tabs, the modes went internal, and the filing rules moved out of my prose into the model.
WhyThe IA gave system processes their own rooms, when users only ever arrive with three questions.
The full story - Aug – Sep 2026
The agent org
The build process stopped being a loop I cranked and became a system in its own right.
WhyParallel agents livelocked: not on code, on documentation. The fix was the file layout, not the agents.
The full story
What the arc taught me
- PARA was the constant, until it wasn’t. Named in the first real product, April 2025, and carried through four rewrites as plumbing. It finally collapsed in August 2026, when its “area” and the new “district” turned out to have quietly re-derived each other.
- Intent ≠ task, learned three times. chotu stored blobs, CODE forced tasks; only recognition finally matched the response to the input.
- Build-first and spec-first both failed alone. One died in Docker, the other in a redesign loop. The synthesis: spec-driven, executed by an agent loop.
- The tooling evolved with the field. Task Master in April 2025, Google’s Jules that December, the Claude Code iteration loop by May 2026, and an org of agents over a sharded ledger by August.
- Rewrites weren’t failures; they were compression. Each restart threw away the wrong shape and carried the idea forward.
- The instruments are not a later phase. I treated observability as launch hygiene. You cannot iterate on what you cannot see, and finding that out with real users watching is the expensive way.
- Every concept you remove has to come back as evidence. Taking the machinery off the screen doesn’t make a product simpler on its own. It makes it quieter. Receipts are the price of doing the filing for someone.