¿Dónde vive el software?
Cuando el código se convierte en resultado, la conversación se convierte en conocimiento.
Durante décadas, el repositorio fue la memoria del software.
Ahí estaba el código, sus versiones y la historia de cómo había evolucionado. Si queríamos cambiar algo, modificábamos el código y registrábamos ese cambio.
Era natural que Git fuera nuestra fuente de verdad.
Pero el Vibe Coding está cambiando algo fundamental: el código ya no necesariamente es donde ocurre el cambio.
El cambio ocurre antes
Cuando trabajamos con un agente de IA, podemos pedirle que agregue una funcionalidad, explicarle una restricción, cuestionar su propuesta, descartar una alternativa y volver a intentarlo.
El código aparece al final de todo ese proceso.
Lo importante ocurrió antes.
Ocurrió en esa negociación entre nosotros y la IA donde definimos qué queremos, qué no queremos, qué restricciones existen y qué decisiones debemos respetar.
El código es el resultado de la conversación.
Y esto cambia nuestra relación con el repositorio.
Git sigue siendo fundamental. Necesitamos versionar el código, poder comparar cambios, hacer rollback y conservar un artefacto reproducible.
Pero el repositorio empieza a parecerse más a un backup del estado funcional del software que al lugar donde vive todo el conocimiento necesario para evolucionarlo.
Porque cuando volvamos a modificarlo, probablemente no queramos empezar leyendo cientos de archivos para reconstruir por qué el sistema terminó siendo como es.
Querremos que la IA entienda lo que ya sabemos sobre él.
¿Dónde guardamos el porqué?
Aquí aparece el problema.
Podríamos pensar que la solución es conservar las conversaciones con la IA.
Pero un chat tampoco es todavía un buen repositorio de conocimiento.
La conversación puede contener la intención, las restricciones y las decisiones, pero también cientos de intercambios irrelevantes. Las decisiones importantes quedan enterradas. Encontrar dentro de seis meses por qué descartamos una determinada arquitectura puede ser tan o más difícil como reconstruirlo leyendo el código.
Tenemos entonces dos piezas que resuelven problemas diferentes:
Git conserva muy bien el qué.
El chat conserva mucho del porqué.
Pero ninguna de las dos está realmente diseñada para conservar la historia intelectual del software.
Hace falta algo más
Tal vez el siguiente paso no sea reemplazar Git ni convertir el chat en nuestro nuevo repositorio.
Tal vez necesitemos algo que todavía estamos aprendiendo a construir.
Un lugar donde podamos conservar las decisiones, restricciones, principios, contexto e intenciones que dieron forma al software.
Un repositorio de intención.
El código seguiría ahí. Seguiría siendo necesario, versionado y desplegable.
Pero dejaría de estar solo.
Porque cuando una IA vuelva a trabajar sobre ese proyecto, no bastará con decirle qué código existe.
Será mucho más valioso poder decirle por qué existe.
Durante décadas aprendimos a versionar código.
Quizás ahora tengamos que aprender a versionar algo más difícil de capturar:
la intención que produjo ese código.
Y quizás ese sea uno de los cambios más profundos que el Vibe Coding está introduciendo en la forma en que construimos software.
Compartir:
¿Te gustó este artículo? Apoya este blog y ayuda a que siga creciendo.
Invítame un café