Skip to content
TYPO3Dev Companion
written for

You will still be maintaining this in 2031.

You did not choose this installation, you will not be the one using it every day, and you will still be answering questions about it long after both of those have changed. This page is about that.

Four things that cost you a week each year

Said as the job rather than as the feature that touches it. Nobody has a search problem — they have a “the person who knew this has left” problem, and a feature list does not name that.

handover
The person who knew the project leaves

Every convention that lived in one developer’s head becomes a question somebody has to ask. The answers here are in the installation rather than in that person. A handover is a directory listing rather than a fortnight.

the long tail
Sixty sites, four releases between them

A client on 11.5 and a client on 14.3 are two different sets of names. It answers for the release that client is on, not for the newest one you happen to know.

margin
Support hours you cannot bill

The questions that eat a retainer are small, repeated, and answerable. The name of an identifier, if a field still exists, what changed in a minor. Those are exactly the ones this takes.

onboarding
A new developer on an old project

The first fortnight of a project nobody on the team wrote goes on the names the last team gave things. It runs against their checkout on day one.

In the tools you already use

One command against a checkout, in the pipeline that builds it. It reads and reports; it changes nothing, so a red run is a finding rather than a rollback.

The interesting line is the second one: an identifier that exists in the release you develop against and not in the one the client runs. That is the failure this catches before a deployment does.

One client project, in CI
bash
# in your pipeline, against the checkout in the build
dev-companion check --project . --release auto

  ✓ 61 identifiers resolved
  ! 3 identifiers not in 11.5 — used in EXT:client_theme
  ✓ 0 writes attempted

The value, as far as anyone can say

Three figures, each with its measure. The first is what four agencies report of themselves, which is worth exactly that — it says so rather than rounds up into a claim.

3.5 h
per developer, per month
Time not spent answering conventions questions, self-reported by four agencies over one quarter. Their own figures, not ours — and self-reporting is worth what it is worth.
0
per-seat charges
Priced per organisation. A tool an agency has to count seats for is a tool that lands on two machines, shared.
4
releases answered for at once
One install answers for every client you have, each against the release that client runs.

The objection this audience actually has

Not privacy and not price. It is dependency: another thing in the stack somebody has to keep alive, explain to a client, and replace when its maintenance stops.

Nothing you build depends on it
It answers questions about a project; it is not part of one. Remove it and every site you have built still builds — which is the only honest answer to “what if this goes away”.
We stopped installing tools that our clients would have to know about. This one they never have to: it is on our machines, not in their projects.

Not an agency?

The other two pages argue the same thing to people with different problems. A developer wants to know where an answer came from; an editor wants the name of the thing and nothing else.