Progress
The home page names the principles. This page explains them. Everything here comes from the Toyota Production System — I work at TOYOTA, so these are not metaphors I borrowed, they are the method I stand in every day. What follows is how it translates to software.
The seven stations
- 01
REQUEST
Nothing starts until the customer pulls. A brief is not a wish list — it is the first constraint, and it decides everything downstream.
- 02
RESEARCH
What is current, what is stable, what is a trap. I read the release notes, not the hype cycle.
- 03
DESIGN
Grid, type scale, motion timings — written before anything is drawn. Boring underneath, so the surface can take risks.
- 04
BUILD
Built in the browser, on real devices, against a real network. The design is not done until it runs.
- 05
POLISH
The pass that catches what shipped hurriedly: the gap in the code, the gap in the design. This is where 5S does its work.
- 06
HANDOVER
The client sees it running, not as a slide. Anything that needs a caption to be understood is not finished.
- 07
REVISION
Feedback comes back as code, not as opinion. Then the line runs again — and it runs better than last time.
Genchi Genbutsu
現地現物 — go and see
Literally: the actual place, the actual thing. On the plant floor it means you do not diagnose a fault from a spreadsheet — you walk to the machine. In software it means the staging link on your own laptop is not evidence. Open the real site, on the device the user actually holds, on the network they actually have. A performance budget met on fibre is not a performance budget. Most of what I believed at the research stage dies here, and it dies cheaply — which is the entire point of going to see.
5S
the five disciplines of a clean workplace
Five disciplines for keeping a workplace fit to work in. On the floor they are about tools and space; in a repository they are about attention. A messy workspace does not slow you down dramatically on any one day — it taxes you slightly on every day, which is worse, because you stop noticing.
- SEIRISort
Delete the dead code, the unused asset, the option nobody picked.
- SEITONSet in order
Every value has one home. If it is written twice, the two will drift.
- SEISOShine
Clear the console. A warning you have learned to ignore is a bug you have not found yet.
- SEIKETSUStandardise
Same spacing, same easing, same naming — so the next screen costs less than the last.
- SHITSUKESustain
The standard only counts on the day it is inconvenient.
Kaizen
改善 — change for better
Kaizen is not the heroic rewrite. It is the small correction, made every single time, without waiting for permission or a milestone. One fewer re-render. One clearer label. One duplicated value collapsed to a single source. None of these are worth a changelog entry on their own, and all of them together are the difference between a codebase that gets easier to work in and one that gets harder. This is why the line closes back on itself: revision is not the end of the process, it is the process running again with what it learned.
None of this is about speed. A line that runs fast and ships defects is not running. It is about making the next thing cost less than the last one — and being honest, at every station, about what is actually finished.