Skip to navigation
Building by hand vs AI-generated code
08.09.26
## English — Building by hand, line by line When I build code myself, I go line by line and test each command at the real system. That is more than carefulness — it is a **dialogue**. Every line I write, the system answers with an output, an error, a result. I read the answer, correct my assumption, continue. This loop — *intention → observation → correction* — is the smallest unit of understanding that exists in development. What that loop produces: 1. **A mental model.** Step by step I build a *running map* of how the system actually behaves — not how it is supposed to behave. I have walked the terrain; the codebase is not a picture to me, it is ground I have crossed. 2. **Knowledge made from mistakes.** The errors I make become my knowledge. Every wrong assumption I catch teaches me the true dependency, the real boundary, the hidden constraint. AI-generated code trains nobody: the mistakes I would have made are simply *absent*. 3. **Ownership.** Because I can trace every line back to a tested behavior, I can extend the system, debug it at 3 a.m., explain it, hand it over. Ownership is not a title — it is the ability to answer *"why does this work?"* 4. **Memory of the order.** I know why this line comes before that one, why this command needs that state first. That ordering is the architecture in its smallest form. ### AI-generated code — the loop is gone When AI code arrives, it arrives as a **finished artifact**. The loop — intention, observation, correction — ran inside the model, not in me. The system never spoke to me through errors, and feedback I never received cannot become understanding. What that means: 1. **Complete but not comprehended.** It runs — but no line was ever tested against my understanding, no command proven step by step at the live system. 2. **The knowledge I would have earned is missing.** The mistakes I didn't make teach me nothing. The codebase never explains itself to me, because I never heard it answer. 3. **Debugging starts from zero.** When the artifact breaks — and artifacts break — the investigation begins where understanding should have been: I must reconstruct, on the spot, a map that was never built. 4. **The codebase is a facade.** It looks finished and it behaves, but nobody holds the mental model. The map lives in the model, not in the team. The moment the model is gone, so is the understanding. ### The line, the difference, the loss The line-by-line test is not a quality ritual. It is **the act of developing itself** at its smallest scale — the unit where builder and build become one map. Whatever produces understanding without the loop produces a *picture*, not a *terrain*. AI can make the picture; only the loop makes the terrain *mine*. --- ## Deutsch — Mit der Hand bauen, Zeile für Zeile Wenn ich selbst baue, gehe ich Zeile für Zeile vor und teste jeden Befehl am echten System. Das ist mehr als Sorgfalt — es ist ein **Dialog**. Jede Zeile, die ich schreibe, antwortet das System mit einer Ausgabe, einem Fehler, einem Ergebnis. Ich lese die Antwort, korrigiere meine Annahme, mache weiter. Diese Schleife — *Absicht → Beobachtung → Korrektur* — ist die kleinste Einheit von Verständnis, die es in der Entwicklung gibt. Was diese Schleife erzeugt: 1. **Ein mentales Modell.** Schritt für Schritt baue ich eine *laufende Karte* davon, wie das System wirklich ist — nicht wie es sein soll. Ich habe das Gelände durchquert; die Codebase ist für mich kein Bild, sondern Boden, den ich überschritten habe. 2. **Aus Fehlern gewordene Kenntnis.** Die Fehler, die ich mache, werden mein Wissen. Jede falsche Annahme, die ich ertappe, lehrt mich die wahre Abhängigkeit, die echte Grenze, die versteckte Bedingung. AI-Code trainiert niemanden: Die Fehler, die ich gemacht hätte, sind einfach *nicht da*. 3. **Eigentum.** Weil ich jede Zeile auf getestetes Verhalten zurückführen kann, kann ich das System erweitern, um drei Uhr nachts debuggen, erklären, übergeben. Eigentum ist kein Titel — es ist die Fähigkeit zu antworten: *"Warum funktioniert das?"* 4. **Erinnerung an die Reihenfolge.** Ich weiß, warum diese Zeile vor jener kommt, warum dieser Befehl jenen Zustand zuerst braucht. Diese Reihenfolge ist die Architektur in ihrer kleinsten Form. ### AI-generierter Code — die Schleife ist weg Wenn AI-Code eintrifft, trifft er als **fertiges Artefakt** ein. Die Schleife — Absicht, Beobachtung, Korrektur — lief im Modell, nicht in mir. Das System hat nie durch Fehler zu mir gesprochen, und das Feedback, das nie ankam, kann kein Verständnis werden. Was das bedeutet: 1. **Vollständig, aber nicht verstanden.** Es läuft — aber keine Zeile wurde je gegen mein Verständnis getestet, kein Befehl Schritt für Schritt am echten System belegt. 2. **Die Kenntnis, die ich verdient hätte, fehlt.** Die Fehler, die ich nicht gemacht habe, lehren mich nichts. Die Codebase erklärt sich mir nicht, weil ich sie nie antworten hörte. 3. **Debugging beginnt bei null.** Wenn das Artefakt bricht — und Artefakte brechen — beginnt die Untersuchung dort, wo das Verständnis hätte sein müssen: Ich muss die Karte, die nie gebaut wurde, im Moment rekonstruieren. 4. **Die Codebase ist eine Fassade.** Sie sieht fertig aus und sie verhält sich, aber niemand hält das mentale Modell. Die Karte lebt im Modell, nicht im Team. Ist das Modell weg, ist auch das Verständnis weg. ### Die Zeile, der Unterschied, der Verlust Die Zeile-für-Zeile-Prüfung ist kein Qualitätsritual. Sie ist **der Akt des Entwickelns selbst** im kleinsten Maßstab — die Einheit, in der Bauender und Gebautes eine Karte werden. Was Verständnis erzeugt ohne die Schleife, erzeugt ein *Bild*, kein *Gelände*. Die AI kann das Bild machen; nur die Schleife macht das Gelände zu meinem.
Reply
Anonymous
Information Epoch 1789399979
ACID (Atomicity, Consistency, Isolation, and Durability)
Home
Notebook
Contact us