What we write down when we decide something
A decision that only exists in a conversation gets re-argued every few months. Writing it down is cheaper than remembering it.
Unfinished copy is fine. Unfinished copy that looks finished is the problem, and the difference is whether a build can tell them apart.
2 min read
Written by
Seratlas Team
Engineering and delivery
2 min read
We build and operate assessment software. We write here about the parts that are harder than they look.
Every site is published with some of its copy unwritten. The question is whether the unwritten parts are labelled, and whether anything stops them from being shipped as though they were real.
It is invisible to a search of the codebase once someone has "improved" it into plausible English, and it is invisible to a reader, who assumes the words were chosen. So it survives to production, and it is discovered by a customer.
We use an explicit token instead. Anything unwritten says so, in the copy, in the data file, and to the reader. A visitor who lands on a section marked as a placeholder learns something true about where we are. A visitor who lands on confident filler learns something false.
A convention that depends on remembering is not a convention. A small script walks the data files for the token and exits non-zero when the build is a production one, so placeholder text cannot reach a production deploy by omission. Its output doubles as the copy backlog: whatever it lists is what is left to write.
There is a category of content where "fill this in later" is the wrong plan entirely, and the honest version is an empty state.
Named people are the clear case. A plausible invented name attached to a job title and a profile link is one coincidence away from being a real person, presented as an officer of a company they have never heard of. A fabricated customer quote is worse, because an endorsement nobody gave is a legal exposure rather than an embarrassment. Neither gets a placeholder that reads as real: the names carry the token, the profile links are inert, and the testimonial carousel renders nothing at all until a quote is marked as cleared by the person who said it.
The careers page works the same way. It shows that nothing is open, because advertising a role that is not funded wastes the time of whoever applies.
A placeholder is acceptable when the reader can tell. Where they cannot tell, the alternative is not better filler — it is an empty state that says so.
A decision that only exists in a conversation gets re-argued every few months. Writing it down is cheaper than remembering it.
What this site is for, what is still missing from it, and why we would rather publish it in that state than wait.
A consent checkbox that starts checked is not consent. A few small decisions separate a form that asks from one that assumes.
A reading-time estimate is a guess presented as a fact. That is fine, as long as the guess is not wrong in a way the reader will notice.
We would rather answer a direct question than write a follow-up post nobody asked for.