XML löste den Datenaustausch, ließ aber einfache Konfiguration wie Dokumentauszeichnung wirken. Die Schöpfer von YAML gingen von der entgegengesetzten Prämisse aus: Eine Datendatei sollte wie die Daten aussehen, nicht wie Tags, die um die Daten gelegt sind.

Die Spezifikation 1.0 beschrieb YAML als eine menschenfreundliche, sprachübergreifende Unicode-Serialisierungssprache für Konfigurationsdateien, Messaging, Persistenz und Debugging. Ihr Kerntrick war visuelle Struktur: Einrückung für den Geltungsbereich, Doppelpunkte für Paare und Bindestriche für Listen.

Diese Entscheidung alterte perfekt in DevOps hinein. YAML.org beschreibt es heute als De-facto-Standard für Infrastrukturkonfiguration in Werkzeugen wie Kubernetes, Docker Compose und Terraform. Das entscheidende Merkmal war nicht die Leistungsfähigkeit; es war die Überprüfbarkeit.

Daten sich selbst zeigen lassen

Einrückung machte verschachtelte Daten ohne schließende Tags schnell erfassbar.

Mappings, Sequenzen und Skalare entsprachen nativen Strukturen in populären Skriptsprachen.

Reiner Text machte Konfigurationen leicht zu diffen, zu überprüfen und in Dokumentation einzufügen.

Das Format blieb sprachunabhängig, sodass jedes Werkzeug es übernehmen konnte, ohne es zu besitzen.

Bei von Hand bearbeiteten Formaten ist Lesbarkeit keine Dekoration. Das Format, das Menschen in einem Pull Request überprüfen können, wird das Format, auf das Teams sich standardisieren.

YAML wurde zu einer Standardkonfigurationssprache in cloud-nativer Tooling- und CI/CD-Landschaft. Seine großzügige Lesbarkeit brachte auch Fußangeln mit sich, aber die Logik der Übernahme hielt: Infrastruktur wanderte in Text, den Menschen bearbeiten konnten.

DEN BELEGEN FOLGEN

Die Quellen

  1. YAML Ain't Markup Language (YAML) 1.0 YAML.org · yaml.org ·
  2. About YAML YAML.org · yaml.org
  3. In The Beginning The YAML Company · yaml.com