~/VibeHandbook
PDF gratis

Capítulo 08 · 05

Itera sobre diffs, no reescrituras

Una vez que el código existe, resiste la tentación de pedir todo de nuevo. Seguimientos vagos como "hazlo mejor" descartan código que funciona y reintroducen errores que ya habías corregido. Señala el cambio específico que quieres.

That's not right, rewrite the whole thing.
The function works, but two issues:
1. The error on line with `throw new Error` should return a
   Result type instead of throwing — match the pattern in
   the validateUser function above.
2. The loop re-reads `items.length` each iteration; hoist it.

Show me just the diff for those two changes.

El ciclo saludable es un bucle ajustado: dale el al modelo, lee el resultado, luego refina con un diff pequeño y dirigido —nunca una reescritura completa— hasta que quede bien:

   ┌─────────┐     ┌─────────┐     ┌─────────┐
   │ PROMPT  │ ──▶ │  MODEL  │ ──▶ │ OUTPUT  │
   └─────────┘     └─────────┘     └────┬────┘
        ▲                               │
        │                               ▼
        │                          ┌─────────┐
        │         good?            │ REVIEW  │
        │   yes ◀──────────────────┤  diff   │
        │                          └────┬────┘
        │                               │ no
        │      refine (small diff)      │
        └───────────────────────────────┘
                                    drift? ▶ reset to last good

Pedir un diff (en lugar de una reescritura completa) mantiene los cambios revisables y preserva las partes que ya funcionan. Trata el resultado de la IA como el de un colega: comenta líneas específicas, pide ediciones dirigidas. Cuando un cambio se descarrila y el código se aleja cada vez más de lo que querías con cada respuesta, no sigas parcheando: vuelve a la última versión en la que confiabas y vuelve a dar el prompt desde ahí con una descripción más precisa. Iterar hacia adelante sobre una base rota solo agrava el desorden.

¿Lo quieres sin conexión?

Descarga el libro entero en PDF o EPUB — gratis.