Blog ·
Wenn der Titel nicht die Überschrift sein kann
Eine Regel, nach der Titel und Überschrift gleich sind, stößt mit einer Grenze von sechzig Zeichen zusammen. Fünf Sprachen brauchten das vorhandene Muster.
Von Provibr
Einer unserer Artikel trägt im Titel ein Wort, auf das es ankommt: Schwachstelle. Es ist ein Stück über einen Scanner, der null Bytes sendet, und ohne dieses Wort beschreibt der Titel etwas anderes.
In fünf der neun Sprachen war das Wort verschwunden. Nicht aus dem Fließtext, sondern aus dem Titel und damit aus dem Browsertab, dem Suchergebnis und der Vorschau in sozialen Netzwerken. Die Aufgabe war, es in allen neun wieder einzusetzen.
Das erwies sich in der Form, in der es aufgeschrieben war, als unmöglich, und das Interessante daran ist, warum.
Zwei Regeln, die nicht beide gelten können
Die Anweisung lautete: der Titel, der Titel für soziale Netzwerke und die Überschrift sind eine Zeichenkette. Sagen Sie an allen drei Stellen dasselbe. Das ist eine gute Regel, und es ist die Regel, die wir aufgeschrieben haben, nachdem ein Leser einen Link fand, der das eine versprach, und eine Seite, die etwas anderes behauptete.
Die andere Regel ist ein Längenband. Der gerenderte Seitentitel muss zwischen zwanzig und sechzig Zeichen liegen, Suffix eingerechnet, denn so viel passt, bevor ein Suchergebnis ihn abschneidet. Dieses Band ist keine Vorliebe; das gesamte Korpus von 850 erzeugten Dateien lag darin, ohne einen einzigen Ausreißer.
Setzt man das fehlende Wort wieder ein, ist die volle Überschrift im Niederländischen und Italienischen 68 Zeichen lang, im Portugiesischen 70, im Spanischen und Französischen 71 und im Rumänischen 75. Englisch und Deutsch landen auf genau 60, und das ist ein Zufall, den zu bemerken sich lohnt: die beiden Sprachen, in denen die ehrliche Überschrift zufällig passt, sind auch die beiden, in denen die Regel aussieht, als funktioniere sie.
Eine der beiden Regeln musste also nachgeben, und keine von beiden ist verzichtbar. Die Überschrift muss den Gegenstand benennen und der Titel muss passen.
Das Muster war schon im Haus
Die Auflösung wurde dafür nicht erfunden. Von den 850 erzeugten Artikeln hatten 197 bereits einen Titel, der sich von der Überschrift unterscheidet. Für einen Artikel ist das etwas Gewöhnliches: die Überschrift ist ein Satz und der Titel ist eine Beschriftung.
Das Französische machte es bei genau diesem Artikel schon so. Sein Titel liest sich als Beschriftung mit einem Doppelpunkt, seine Überschrift als Frage, die der Fließtext beantwortet. Niemand hatte das als Entscheidung festgehalten; es war einfach das, was jemand geschrieben hat, als der Satz nicht passte.
Die Behebung ist also, dass fünf Titel die Gestalt übernehmen, die fast ein Viertel des Korpus und eine der neun Sprachen bereits benutzten, und dass die Überschriften den vollen Satz tragen. Das Wort steht im Titel, im Titel für soziale Netzwerke und in der Überschrift, und es muss nicht an allen drei Stellen dieselbe Zeichenkette sein, um dieselbe Aussage zu sein.
Die Regel überlebt, aber sie braucht eine neue Formulierung: gelten muss, dass ein Leser, der über einen Link ankommt, die Seite wiedererkennt. Die Gleichheit Byte für Byte war eine bequeme Art, das in den Sprachen durchzusetzen, in denen es zufällig möglich war.
Warum die vorhandene Wache das nicht hätte finden können
Wir hatten gerade eine Wache für genau diese Familie von Problemen gebaut: ein Linktext, der einen Artikel anders benennt als dessen eigener Titel. Sie war hier grün, und sie war aus einem strukturellen Grund grün und nicht aus Glück.
Das hier ist ein Defekt im Titel. Die Titel hatten ein Wort verloren, und die Linktexte, die auf sie zeigten, waren in der Runde, die die Wache baute, passend dazu gekürzt worden. Beide Seiten waren sich einig. Ein Vergleich zwischen zwei Dingen, die gemeinsam geändert wurden, kann nicht sehen, dass beide falsch sind.
Gefunden hat es die Versionsverwaltung. Der Commit, der die Linktexte reparierte, zeigte, dass drei davon gekürzt wurden, im Niederländischen, Italienischen und Portugiesischen. Der Bericht erwähnte nur zwei. Einen Diff zu lesen statt einer Zusammenfassung ist das, was aus einer Aufgabe mit zwei Punkten die wirkliche Gestalt des Problems machte.
Eine Wache, die hinter uns aufgeräumt hat
Am Ende steht eine kleine Folge von Ereignissen, die aufzuschreiben sich lohnt, denn darin verhält sich die Wache besser als die Leute, die sie benutzen.
Nachdem die Titel geändert waren, feuerte die Namenswache einmal, auf einem niederländischen Link zu einem anderen Artikel. Das sah nach Kollateralschaden aus, und es wurde eine Ausnahme dafür festgehalten, mit einer Begründung.
Dann wurden die Titel noch einmal angepasst, um sie in das Längenband zu bringen, und der Befund verschwand. Die Ausnahme war jetzt tot: eine Zeile in einer Ausnahmeliste, die nichts trifft.
In dieser Wache gibt es einen Test, dessen einzige Aufgabe es ist, zu scheitern, wenn eine Ausnahme nie getroffen wird. Er scheiterte, und die Zeile flog heraus. Der abschließende Diff gegen das Verzeichnis der Wache ist leer, und das ist die stärkste verfügbare Aussage: die Reparatur verlangte überhaupt keine Änderung an den Regeln.
Eine Ausnahmeliste, die nur wächst, ist ein Verzeichnis von allem, was jemals irgendjemand aufgegeben hat. Eine Ausnahmeliste, die ihre eigenen toten Einträge entfernt, ist eine Liste, die Sie in einem Jahr noch lesen können.
Kleinigkeiten, die im Vorbeigehen gelernt wurden
Ein Doppelpunkt im Titel ist eine Form und keine gemessene Entscheidung. Er liest sich als Beschriftung statt als Satz, er kürzt gut, und das Französische hatte ihn bereits gewählt. Das ist als eine Entscheidung über die Form aufgeschrieben, denn so zu tun, als käme sie aus einer Messung, wäre unehrlich darüber, welche Teile hiervon gemessen wurden und welche Geschmack waren.
Ein Längenband ist eine Bedingung je Sprache, auch wenn es global aussieht. Derselbe Satz ist in einer Sprache acht Zeichen länger und in einer anderen fünfzehn, und jede Regel, die als „überall dieselbe Zeichenkette“ formuliert ist, bricht zuerst in der Sprache, die am wortreichsten ist. Das ist hier meistens das Rumänische.
Und eine Aufgabe, die als zweizeilige Anweisung geschrieben ist, kann einen Widerspruch enthalten, der erst auftaucht, wenn man versucht, beide Hälften zu erfüllen. Die richtige Antwort ist nicht, die Hälfte zu erfüllen, die leichter zu prüfen ist.
Was wir aufschreiben würden
- Wenn zwei Regeln zusammenstoßen, ist keine von beiden falsch. Finden Sie heraus, welche die Zusicherung ist und welche nur deren bequeme Durchsetzung war.
- Gleichheit Byte für Byte ist ein Stellvertreter für Wiedererkennbarkeit. Sagen Sie, was Sie wirklich wollen.
- Suchen Sie das Muster im Korpus, bevor Sie eines erfinden. Unseres stand schon in 197 von 850 Dateien.
- Dass eine Sprache es bereits tut, ist ein Beleg, auch wenn es niemand als Entscheidung aufgeschrieben hat.
- Eine Wache kann einen Defekt nicht sehen, wenn beide Seiten gemeinsam geändert wurden. Einigkeit ist nicht Richtigkeit.
- Lesen Sie den Commit und nicht die Zusammenfassung. Der Diff hatte drei Einträge, wo der Bericht zwei hatte.
- Ein Test, der bei einem toten Eintrag in der Ausnahmeliste scheitert, räumt hinter Ihnen auf. Unserer entfernte eine Ausnahme, die wir gerade erst hinzugefügt hatten.
- Ein leerer Diff gegen Ihre Regeln ist das stärkste Ergebnis einer Reparatur. Es bedeutet, dass die Regeln richtig waren.
- Längengrenzen gelten je Sprache. Derselbe Satz ist irgendwo fünfzehn Zeichen länger.
- Sagen Sie, welche Entscheidungen gemessen wurden und welche Form waren. Sie zu vermischen kostet die gemessenen ihre Glaubwürdigkeit.
Zur Klarheit: der Inhaltsbuild erzeugte 850 Artikel ohne Warnungen, wo es zuvor fünf waren, die Inhaltsprüfung war 851 von 851 erzeugten Dateien Byte für Byte gleich, die Web-Suite 4594 grün, die Typprüfung sauber, der Linter ohne Fehler, der Byte-Durchlauf über die 25 berührten Dateien in jeder Zählung unverändert, der Diff genau 174 Zeilen hinein und 174 heraus, der Layoutdurchlauf 27 von 27 bei 390 Pixeln über den Artikel in neun Sprachen, der Blogindex 54 von 54 und sechs ukrainische Artikel 18 von 18 gegen einen Produktionsbuild. Nicht bewiesen: es gibt weiterhin einen Leser je Sprache, und die Wahl der Doppelpunktform ist eine Entscheidung über die Gestalt und keine Messung.
Aus der Plattformarbeit an Provibr. Woher die Regel über Titel und Links stammt, steht in Drei Fehler, die kein Skript sehen konnte, und wie die Wache, die sie durchsetzt, eine Kürzung von einem Austausch unterscheidet, steht in Zwei Namen für denselben Artikel.