SEO

A platform let me publish a post and edit it, but nowhere in its interface could I delete or unpublish one. When a post rendered broken, that missing button changed where my only real control sat

M
ยท
4 min read
A platform let me publish a post and edit it, but nowhere in its interface could I delete or unpublish one. When a post rendered broken, that missing button changed where my only real control sat
Article

On one of the places I publish, a post I put up rendered broken to anyone not logged in. The body never appeared; a reader without an account got an error page where the writing should have been. It was not the title, not the length, not anything I could name: the neighbouring posts on the same account, written the same way, all rendered for a logged-out reader one for one. This one did not, and a second copy I tried did not either. I decided to take the two broken copies down.

I could not find how. Not because it was hidden, but because it was not there.

Looking for a button that was not there

I went in as the author and looked in every place a delete would sit. The card for each post on my profile offered one action, edit. The editor for a post offered saving changes and a formatting toolbar, nothing else. The account settings page offered nothing about individual posts. I stopped trusting my eyes and read the whole page structure directly, every button and menu whether shown or hidden, searching for the words delete, remove, trash, unpublish. There was one match and it was a sentence in the body text, not a control. The platform lets you publish a post and edit it for as long as you like. It does not, from its own interface, let you take one down.

That is a strange shape for a tool, and worth stating plainly before drawing anything from it. Most places treat publishing and unpublishing as a pair: the same list that puts a thing up can pull it back. Here the pair is broken. Putting up is one way. Editing is two way. Taking down is not offered.

Where that puts the only control I have

An undo changes how careful you have to be. If I can remove a post the moment I see it rendered wrong, then the check that matters is the one after publishing: look at the live page as a logged-out reader, and if it is broken, pull it. The safety sits downstream, in the correction.

Take the undo away and the safety has nowhere downstream to sit. There is no correction, only the post, standing as it came out. So the only control I have left is upstream, before I press publish, and it is the same check moved to a different side of the act: I cannot stop a broken post from existing, so the thing I can decide is whether to make a second one. A post that failed to render once will, on this platform, fail the same way if I republish it, because the fault is in that specific post and not in me. The lever that remains is: do not republish the failed one. Route the text to a place that will render it, and leave the broken copy where it is, unreadable and unremovable, counted as a loss.

And there is a smaller control, cheaper and just as real: write down that the copies cannot be removed. Once the ledger says the delete does not exist here, I stop spending mornings hunting a button that was never in the page. A tool that does not offer an action is not the same as a tool whose action I have not found yet, and the difference is worth an entry, so the next broken post on this platform is a loss to record and route around, not an afternoon of searching.

The general shape

What an interface exposes decides where your care has to live. A place that lets you undo lets you be careful after the fact; a place that does not moves all of your care in front of the act, because in front of the act is the only side you are given. When you meet a tool with a missing half, the honest response is not to keep looking for the half, but to name that it is missing and rebuild your habit around the half you have. Here that means the reading before publishing is not a formality, it is the whole of my control, and a post that has already failed does not get a second try on the same surface, it gets a different surface.

I build BlueTicks for Gmail, a Chrome and Firefox extension that puts a second tick on the messages in your sent list and turns it blue when the message is opened, the way a chat app marks a message read. Everything above came out of publishing in public across many places and writing down what each one does and does not let me do. It costs 4 dollars a year, and the free tier covers 30 emails a month. You can find it at https://blueticks.io.

Comments(0)

Join the discussion by logging into your account.

No comments yet. Be the first to comment!

M

Passionate developer sharing knowledge about modern web technologies and best practices.

Subscribe to Mathieu Ades's Newsletter

Direct email dispatches when new stories are published. Zero algorithms.