En los últimos meses, el concepto de vibe coding (desarrollar dejándose llevar 100% por lo que genera la IA sin profundizar en las tripas del código) se ha puesto de moda. Sin embargo, cuando te enfrentas a un proyecto real, la realidad te da un golpe directo.

Recientemente me incorporé a un proyecto del que apenas tenía contexto inicial. Estaba construido sobre una solución prefabricada con una arquitectura bastante “sucia” o acoplada. Con el objetivo de entregar valor rápido, caí en la trampa: empecé a vibecodear más de lo que me gustaría, fiándome casi a ciegas de lo que la IA me devolvía.

La trampa del «un paso adelante, dos para atrás»

El resultado de esta dinámica no fue mayor velocidad, sino frustración. Cada vez que solucionaba un bug o implementaba una funcionalidad guiado únicamente por la IA, algo más se rompía en otra parte del sistema.

Y lo más curioso: yo no estaba haciendo vibe coding puro. Estaba envolviendo cada cambio en pruebas automatizadas. Pero ni siquiera con tests la estrategia funcionaba del todo. La sensación constante era la de dar un paso hacia adelante y dos hacia atrás.

¿Por qué ocurre esto?

  1. Falta de contexto profundo: La IA analiza fragmentos o ventanas de contexto, pero no entiende la arquitectura global ni las decisiones del pasado.
  2. Análisis superficial: El modelo tiende a dar la solución más obvia e inmediata al síntoma, no a la causa raíz.
  3. Efectos secundarios invisibles: En arquitecturas acopladas, una modificación “correcta” a nivel sintáctico puede romper invariantes de negocio que el modelo desconoce.

La solución: Volver a los fundamentos

Tuve que parar. Me senté, detuve el flujo automático de prompts y decidí invertir tiempo real en:

  • Estudiar a fondo la herramienta base y sus limitaciones.
  • Analizar la arquitectura del proyecto para comprender el flujo de datos.
  • Revisar código manualmente para detectar patrones de fallo.

En cuanto empecé a ser yo quien guiaba a la IA (y no al revés), el proyecto dio un giro. Le proporcioné posibles causas de fallos, acoté los caminos a explorar y filtré sus sugerencias con criterio técnico.

Conclusión: La IA no mata al desarrollo de software, lo transforma

No soy un hater de la IA. La uso a diario y estoy convencido de que la forma tradicional de picar código línea por línea quedó atrás.

Hoy en día, alguien sin fundamentos técnicos puede construir un prototipo funcional, algo que antes era imposible. Pero construir no es mantener. Mantener un proyecto real con deuda técnica, clientes reales y requerimientos cambiantes exige perfiles experimentados que entiendan de contexto, negocio y arquitectura. La IA es un copiloto extraordinario, pero el piloto sigue siendo el desarrollador.