Essential Vibe Coding: un manifiesto para crear con IA sin convertir velocidad en deuda
La inteligencia artificial ha cambiado por completo la forma de desarrollar software.
Hoy podemos crear funciones, interfaces, prototipos e incluso aplicaciones completas en una fracción del tiempo que necesitábamos hace unos años.
Eso es una ventaja enorme.
Pero también plantea una pregunta importante:
si ahora podemos construir casi cualquier cosa rápidamente, ¿cómo decidimos qué merece realmente ser construido?
De ahí nace Essential Vibe Coding, una propuesta personal inspirada en principios clásicos de ingeniería como KISS y YAGNI, pero adaptada al desarrollo asistido por inteligencia artificial.
La idea no es frenar el vibe coding.
Es hacerlo más consciente.

¿Qué entiendo por Essential Vibe Coding?
El vibe coding permite transformar una idea en código de forma casi inmediata mediante herramientas de inteligencia artificial.
Podemos describir lo que queremos, probarlo, corregirlo y evolucionarlo a una velocidad que antes parecía imposible.
Pero esa facilidad también puede empujarnos a generar demasiado.
Más funciones.
Más dependencias.
Más capas.
Más código.
Más complejidad.
Y ahí aparece el problema:
generar código se ha vuelto barato, pero mantener software sigue teniendo un coste.
Por eso estos principios intentan introducir algo que la velocidad por sí sola no aporta:
criterio.
Los 14 principios de Essential Vibe Coding
1. El problema manda
Antes de pensar en modelos, frameworks o herramientas, hay que entender qué queremos resolver.
Problema → necesidad → solución → tecnología.
No al revés.
2. Si no lo necesitas, no lo generes
YAGNI sigue teniendo todo el sentido en la era de la IA.
Que una función pueda crearse en segundos no significa que vaya a aportar valor.
Generar algo rápido no lo convierte en necesario.
3. Si puede ser simple, hazlo simple
KISS quizá sea incluso más importante ahora.
La IA puede crear arquitecturas muy sofisticadas rápidamente, pero la sofisticación no siempre mejora una solución.
La complejidad necesita una razón.
4. El código generado también se hereda
La IA puede escribir el código.
Pero si lo incorporamos a nuestro proyecto, nosotros heredamos su mantenimiento, sus errores y sus dependencias.
La IA genera. Tú mantienes.
5. No aceptes más código del que puedas entender
No es necesario conocer cada línea de memoria.
Pero sí deberíamos poder explicar qué hace el sistema, por qué existe cada parte importante y qué ocurre si algo falla.
Código que funciona sin ser entendido puede convertirse en deuda aplazada.
6. Cada función debe justificar su existencia
No añadas algo porque queda bien.
Ni porque la IA puede hacerlo.
Ni por el clásico:
“ya que estamos…”.
Pregunta:
¿Qué problema real resuelve?
Si no existe una respuesta clara, probablemente sobra.
7. Cada capa debe pagar su complejidad
Frameworks, agentes, APIs, microservicios, colas, bases vectoriales o contenedores pueden ser herramientas excelentes.
Pero todas añaden complejidad.
Una tecnología merece entrar cuando resuelve más complejidad de la que introduce.
8. Prototipo no significa producto
El vibe coding es fantástico para experimentar.
Podemos comprobar una idea rápidamente y descubrir si tiene sentido.
Pero que algo funcione hoy no significa que esté preparado para mantenerse mañana.
Un prototipo demuestra que algo puede funcionar.
Un producto debe demostrar que puede mantenerse.
9. Usa la IA para borrar también
Quizá una de las oportunidades más interesantes de la IA sea utilizarla no solo para generar.
También puede ayudarnos a:
simplificar código,
refactorizar,
detectar duplicaciones,
eliminar código muerto,
crear pruebas
y reducir dependencias.
Una buena sesión con IA no siempre tiene que terminar con más código.
10. Menos dependencias, menos problemas futuros
Cada dependencia que añadimos es una pieza más que tendremos que actualizar, vigilar y mantener.
Puede cambiar.
Puede desaparecer.
Puede introducir vulnerabilidades.
Por eso una dependencia también debe justificar su presencia.
11. Automatizar no elimina la responsabilidad
Que una IA genere código, tome decisiones o ejecute tareas no elimina nuestra responsabilidad sobre el resultado.
Cuanto más autónomo sea el sistema, más importante es saber:
qué puede hacer,
qué no debería hacer
y cómo comprobar que funciona correctamente.
12. La velocidad no puede convertirse en excusa
“Lo hizo la IA” no debería ser una justificación técnica.
Si algo llega a producción, alguien tiene que asumirlo.
La velocidad explica cómo llegó allí.
No justifica que deba quedarse.
13. La ausencia también es arquitectura
No crear una API puede ser una decisión.
No introducir otro framework puede ser una decisión.
No añadir una función también puede ser una decisión.
Incluso no utilizar IA cuando no aporta nada puede ser una buena decisión.
Lo que decidimos no construir también define el sistema.
14. Saber parar forma parte del desarrollo
Con IA siempre podemos añadir una cosa más.
Otra función.
Otra automatización.
Otra mejora.
Pero llega un momento en el que el producto ya cumple correctamente su propósito.
“Es suficiente” también es una decisión técnica.
KISS, YAGNI y Vibe Coding
Essential Vibe Coding no pretende sustituir principios clásicos.
Todo lo contrario.
Intenta recuperarlos en un contexto nuevo.
Vibe coding reduce el coste de construir.
KISS nos recuerda reducir la complejidad.
YAGNI nos recuerda no construir lo que todavía no necesitamos.
Y queda una parte que sigue siendo profundamente humana:
decidir qué merece existir.
La idea central
Podríamos resumir todo el manifiesto en tres frases:
Construye rápido.
Entiende lo que construyes.
Mantén solo lo necesario.
La inteligencia artificial puede multiplicar nuestra capacidad para producir software.
Eso no significa que debamos multiplicar también su complejidad.
Porque en esta nueva etapa del desarrollo:
hacer más es fácil.
Hacer solo lo necesario sigue siendo ingeniería.
Essential Vibe Coding
Manifiesto creado por Oscar de la Cuesta · palentino.es




