the world of dizzi

Die Zahlen

Sechs Zahlen, und wie jede gezählt wurde

Eine Zahl ohne Methode ist eine Behauptung. Jede Zahl unten trägt die Methode, die sie hervorgebracht hat, und das Datum, an dem sie gemessen wurde – und wo sie sich am aktuellen Stand nicht prüfen lässt, sagt sie das auf ihrer eigenen Kachel.

Kurz gesagt
Sechs Zahlen stehen vorn auf dieser Website.
Drei kann jeder prüfen: die 10 Anwendungen, die 38 Dokumente, die Länge des Bau-Skripts.
Drei nicht: Die Zahl der Commits ist privat, und der Code hinter den Python- und Test-Zahlen ist nicht mehr öffentlich.

Am 6. August 2026 hat der öffentliche Code-Auszug den aktuellen Stand verlassen. Veröffentlicht ist jetzt ein kuratierter Satz von 38 Dokumenten. Zwei der Zahlen unten beschreiben deshalb etwas, das nicht mehr zum aktuellen Stand gehört und sich daran nicht nachrechnen lässt. Sie bleiben auf der Seite, und das wird gesagt – denn eine Zahl zu löschen, mit der die Website zwei Wochen lang vorn stand, wäre die leisere Art von Unehrlichkeit.

Gemessen, nicht behauptet

Die sechs Zahlen vorn auf dieser Website

Drei der sechs lassen sich am aktuellen Stand nicht prüfen, und jede der drei sagt das auf ihrer eigenen Kachel. Jede Kachel klappt auf und zeigt, wie sie entstanden ist.

  1. 10 Anwendungen – der Kern und neun um ihn herum

    prüfbar

    Wie gezählt wurde

    Die zehn sind je eine Zeile im README des Auszugs: admin, communication, core, creating, healthy, management, memory, money, news, trading. Den Kern als eine der zehn zu zählen ist eine Entscheidung, keine Messung – dieselbe Menge wird überall dort als neun Anwendungen um einen Kern ohne eigene Oberfläche beschrieben, wo es auf dieses Verhältnis ankommt.

    Bis zum 6. August 2026 gab es für die Zahl eine zweite, gröbere Methode: die Ordner unter apps/. Neun davon haben die Kuratierung mit ihrem README überstanden; die Papiere der Trading-Flotte wurden ganz herausgenommen, deshalb landet das Zählen von Ordnern jetzt bei neun, und die Tabelle ist die Methode, die weiter trägt.

    apps/ im Repository ↗

  2. 38 Dokumente veröffentlicht – der Code nicht

    prüfbar

    966 versionierte Dateien, bis 6. August 2026

    38 Dokumente, jetzt

    Derselbe Ordner, vor und nach der Kuratierung vom 6. August 2026. Nichts wurde hinzugefügt, damit der zweite Balken besser aussieht.
    Wie gezählt wurde, und was diese Zahl ersetzt

    git ls-files im veröffentlichten Ordner: 38 Markdown-Dokumente. Achtundzwanzig gehören dem Netz selbst – die Gesetze, die Vision, die Architektur-Papiere und die geschriebenen Verträge –, neun sind je ein README pro Anwendung; das letzte ist das README des Ordners. Diese Zahl ist aktuell und lässt sich von jedem mit einem Befehl nachrechnen.

    Sie ersetzt eine andere Zahl. Vom 23. Juli bis zum 6. August 2026 hielt derselbe Ordner 966 versionierte Dateien: den ganzen Code-Auszug, einen kuratierten Commit. Das wurde mit Absicht zurückgeschnitten. Was ging, ging aus Gründen, die es wert sind, genannt statt versteckt zu werden – die gemeinsamen Bibliotheken und das Sicherheitskonzept, weil eine Landkarte dessen, was noch nicht gehärtet ist, genau einer Art von Leser hilft; die Papiere der Trading-Flotte, weil Regeln zur Positionsgröße und die Mechanik von Entscheidungen über echtes Geld nicht auf eine offene Seite gehören; die Umsetzung jeder Anwendung, weil man die Methode zeigen kann, ohne die Maschine mitzuliefern.

    Nichts wurde veröffentlicht, damit diese Zahl besser aussieht. Der Ordner hat nur Dateien verloren, nie welche dazubekommen, und jedes Dokument, das noch darin steht, stand schon vorher dort.

    Die 38 im Repository ↗·Die eine Anwendung ohne Quell-Link →

  3. ~100.000 Zeilen Python in 632 Dateien

    am aktuellen Stand nicht prüfbar

    Wie gezählt wurde, und warum es sich am aktuellen Stand nicht wiederholen lässt

    Gemessen im Code-Auszug, der den aktuellen Stand am 6. August 2026 verlassen hat. Bis zu diesem Tag ließ sich die Methode unten am aktuellen Stand wiederholen; seitdem nicht mehr. Sie steht trotzdem hier, damit man die Zahl wenigstens daran messen kann, wie sie entstanden ist.

    Zahl der Dateien: git ls-files "*.py" – 632 Dateien. Die gerundete Zahl steht für eine genaue: 100.234 Zeilen tragen ein Zeichen, das kein Leerraum ist, und insgesamt gibt es 119.249 Zeilen. Auf den anderen Seiten steht die gerundete Zahl, weil sich das Arbeits-Repository jeden Tag bewegt und der nächste Auszug eine andere genaue Zahl tragen wird; beide beschreiben dieselbe Messung.

    Eine Einzelheit, die es wert ist, genannt zu werden, weil genau so etwas zwei ehrliche Zählungen auseinanderbringt: Zwei Dateien enden ohne letzten Zeilenumbruch – apps/core/tests/test_voice.py und apps/news/tests/test_report.py. Eine Zählung, die Zeilenumbrüche zählt, verpasst bei beiden die letzte Zeile und landet zwei zu niedrig. Die Zahl oben zählt Zeilen, nicht Zeilenumbrüche.

  4. 2.667 Test-Funktionen in 309 Dateien

    am aktuellen Stand nicht prüfbar

    Wie gezählt wurde, und warum es sich am aktuellen Stand nicht wiederholen lässt

    Gemessen im Code-Auszug, der den aktuellen Stand am 6. August 2026 verlassen hat – wie die Zahl oben, und aus demselben Grund.

    Jede versionierte .py-Datei wird nach Funktionen durchsucht, deren Name mit test_ beginnt. Die Testsammlung wird für diese Zahl nicht ausgeführt; sie zählt also geschriebene Tests, nicht bestandene. Dieser Unterschied ist der ganze Grund, warum die Zahl so beschrieben wird und nicht als Erfolgsquote.

    Vierundvierzig davon sind asynchron; eine Zählung, die nur nach def test_ sucht und nicht nach async def test_, landet deshalb bei 2.623. Die Zahlen je Anwendung auf der Anwendungs-Seite stammen aus demselben Durchlauf derselben Auswertung.

    Wo sie liegen →·Die Zahlen je Anwendung →

  5. 1560 Zeilen im Skript, das diese Website baut

    beim Bauen gezählt

    Wie gezählt wurde, und warum sie sich selbst zählt

    Die Zahl der Zeilen von bake.py im eigenen Repository dieser Website. Davon tragen 1421 ein Zeichen, das kein Leerraum ist. Die Fußzeile jeder Seite nennt diese Zahl, also gehört sie wie die anderen mit ihrer Methode hierher.

    Sie steht noch aus einem zweiten Grund in dieser Liste. Bis zum 26. Juli stand in derselben Fußzeile 100 Zeilen, während die Datei mehr als fünfmal so viele hatte, und kein Leser hätte es an der Seite merken können: Der einzige Quell-Link in dieser Fußzeile zeigte auf das Repository des Netzes, das diese Datei nicht enthält. Dann ging es ein zweites Mal schief – die Zahl wurde auf den richtigen Wert gesetzt, und genau die Arbeit, die diese Seite hinzufügte, ließ die Datei darüber hinauswachsen.

    Beide Lücken sind hier geschlossen. Die Zahl wird nirgends mehr von Hand geschrieben: Das Bau-Skript zählt seine eigenen Zeilen und schreibt das Ergebnis in jede Fußzeile, in diesen Eintrag und in die Kurzfassung am Ende dieser Seite. Eine Änderung, die seine Länge ändert, ändert alle, und bake.py --check schlägt fehl, bis sie neu gebaut sind – so kann die Zahl nicht mehr veralten, ohne dass die Prüfung es sagt. Und die Zahl in der Fußzeile ist jetzt ein Link auf diesen Eintrag, der den fehlenden Quell-Link trägt.

    bake.py im eigenen Repository dieser Website ↗

  6. 2.600+ Commits im privaten Arbeits-Repository hinter dem Auszug

    am aktuellen Stand nicht prüfbar

    Wie gezählt wurde, und warum die Zahl eine Untergrenze ist

    git rev-list --count im Arbeits-Repository, das privat ist. Diese Zahl war nie prüfbar, und sie ist die einzige der drei, für die das schon immer galt. Der öffentliche Ordner ist ein einziger Commit, also beweist das Zählen von Commits dort nichts über die Arbeit dahinter.

    Deshalb steht sie als Untergrenze da und nicht als genaue Zahl: Eine genaue Zahl sähe genau aus und ruhte doch auf nichts, was man einsehen kann, und sie wäre nach einem Tag veraltet. Eine Untergrenze ist das Höchste, was eine private Zahl für sich beanspruchen darf.

Die Summe, die ein Leser ausprobiert

Wo die anderen 628 Tests lagen

Zählt man die neun Test-Zahlen auf der Anwendungs-Seite zusammen – Dizz Creating trägt keine, weil sein Kern nie im Auszug war –, kommt man auf 2.039, nicht auf 2.667. Der Unterschied ist echt, und er war nirgends raffiniert versteckt: Die gemeinsame Arbeit liegt nicht in den Anwendungen.

  • 579 in packages/ – die gemeinsamen Bibliotheken, appkit und das Design-System
  • 46 in ops/ – die Betriebsskripte und die Prüfung der Dokumentation
  • 3 in templates/ – das Gerüst, mit dem eine neue Anwendung beginnt
  • 2.039 in den zehn Ordnern der Anwendungen – Dizz Creating trägt nichts bei

579 + 46 + 3 + 2.039 = 2.667. Die Balken sind diese Summe, maßstabsgetreu gezeichnet. Die Summe steht hier, weil ein Leser, der diese vier zusammenzählt, die Antwort auf der Seite verdient statt eines Widerspruchs, über den er rätseln muss. Diese Aufteilung gehört zur selben Messung vom 27. Juli wie die Gesamtzahl und beschreibt wie sie Code, der nicht mehr zum aktuellen Stand gehört.

Warum die gemeinsamen Bibliotheken am meisten tragen

Das ist der Teil der Architektur, der sich am leichtesten sagen und am schwersten zeigen lässt. Gemeinsame Bibliotheken, die Anmeldung, Prüfung des Vertrags, Sicherheitslage und Löschnachweise für zehn Anwendungen tragen, sind der Ort, an dem ein Fehler überall ein Fehler ist – und genau dort lagen 579 der Tests, mehr als in jeder einzelnen Anwendung.

Ein Wort, das genau sein muss

Was abtrennbar hier heißt, und was nicht

Abtrennbar heißt: Jede Anwendung läuft schon für sich – eigener Port, eigene Datenbank, eigene Oberfläche. Dieser Teil ist gebaut.

Für sich verkaufbar ist eine andere Behauptung, und sie ist ein Ziel des Entwurfs, keine fertige Funktion. Das Werkzeug zum Verpacken selbst ist nicht gebaut.

Was aufgeschrieben ist, und wie weit es reicht

Dieser Teil war bis zum 6. August 2026 im Code-Auszug sichtbar; der aktuelle Stand trägt den Vertrag, der ihn verlangt.

Es gibt einen geschriebenen Export-Vertrag, der festlegt, wie eine Anwendung, dazu der Kern und die Teile der gemeinsamen Bibliotheken, die sie wirklich nutzt, zu einem eigenständigen Paket wird. Dieser Vertrag hat Entwurf, Platzhalter und Vertragstests.

docs/66 – der App-Export-Vertrag ↗

Prinzip · Ehrlichkeit

„Wurde ein Wert nie gemessen, sagt das System das, statt eine Null zu zeigen.“

Grenzen

Was diese Zahlen nicht sagen

  • Sie sind eine Zählung, kein Urteil. Eine Zählung von 2.667 geschriebenen Tests sagt nichts darüber, wie viele bestehen, und nichts darüber, was sie abdecken. Eine Zahl, die man durch schlechtere Tests erhöhen könnte, ist kein Maß für Qualität.
  • Sie beschreiben einen Auszug, nicht das System. Das Arbeits-Repository ist größer; veröffentlicht war ein kuratierter Teil davon, und einige Module waren schon damals mit Absicht weggelassen.
  • Sie sind datiert, und zwei davon sind jetzt Geschichte. Die Python- und die Test-Zahlen wurden am 26. Juli 2026 am Code-Auszug vom 23. Juli gelesen und am 27. Juli noch einmal; dieser Auszug gehört seit dem 6. August 2026 nicht mehr zum aktuellen Stand, also lassen sich diese beiden daran nicht wiederholen. Die Zahl der Dokumente und die Zahl des Bau-Skripts sind aktuell – die des Bau-Skripts entsteht beim Bauen, sie ist also so aktuell wie die Seite, die Sie lesen. Die Zahl der Commits wurde am 26. Juli im privaten Repository genommen.
  • Es sind die sechs, mit denen die Website vorn steht, nicht jede Zahl im Text. Eine Zahl mitten in einem Satz – die neunzehn Übergabe-Verträge, V1 bis V19 – trägt ihren Quell-Link dort, wo sie steht, auf der Seite, die sie nennt.
  • Eine davon ruht auf meinem Wort. Die Zahl der Commits ist privat und lässt sich von außen nicht prüfen; deshalb ist sie eine Untergrenze, und deshalb wird sie hier genannt, statt zwischen Zahlen zu stehen, die sich prüfen lassen.

Kurzfassung

Die Zahlen in einem Absatz

Zwei der sechs Zahlen – die Python-Zeilen und die Test-Funktionen – wurden am 26. Juli 2026 anhand des öffentlichen Code-Auszugs vom 23. Juli 2026 gemessen und am 27. Juli erneut gelesen. Die anderen vier stammen aus eigenen Quellen: die Zahl der Anwendungen aus der Tabelle im README des Auszugs, die 38 Dokumente aus dem veröffentlichten Ordner (jederzeit nachzählbar), die Zeilenzahl des Bau-Skripts beim Bauen selbst, die Commits am 26. Juli aus dem privaten Arbeits-Repository. Die Zählweise steht oben bei jeder Zahl einzeln.

  • 10 Anwendungen (Core + 9).
  • 966 versionierte Dateien in einem einzigen kuratierten Commit – dieser Code-Auszug gehört seit dem 6. August 2026 nicht mehr zum aktuellen Stand; veröffentlicht ist seither ein kuratierter Satz von 38 Dokumenten, die 966 ist durch die 38 ersetzt.
  • ~100.000 Zeilen Python in 632 Dateien, genau: 100.234 Zeilen mit sichtbarem Inhalt – im aktuellen Stand nicht nachprüfbar, steht nur noch mit Datum da.
  • 2.667 Test-Funktionen in 309 Dateien – gezählt, nicht ausgeführt, also geschriebene Tests, keine bestandenen; auch im aktuellen Stand nicht nachprüfbar.
  • 1560 Zeilen im Skript, das diese Website baut – beim Bauen selbst gezählt, im Repository dieser Website.
  • 2.600+ Commits im privaten Arbeits-Repository hinter diesem Auszug: die einzige Zahl hier, die Sie nicht nachprüfen können – Sie haben dafür nur mein Wort, und deshalb steht sie als Untergrenze da.

Zur deutschen Einstiegsseite →