EL BUENO, EL MALO
Y EL FEO
DEL VIBE CODING
Presentador / The "Human in the Loop"
PEDRO LUIS ROMERO GONZÁLEZ
Presiona [↓] para iniciar
¿QUÉ ES EL VIBE CODING?
Lenguaje Natural
"Quiero una app de chat"
Agente IA
Procesa "la vibra"
Código Final
Sintaxis sin teclear
- Abstracción total: El programador ya no escribe sintaxis.
- Delegación: Arquitectura y lógica se dejan en manos del modelo.
LA EVOLUCIÓN DEL CÓDIGO
2021: Autocompletado
Copilot. Sugiere líneas cortas.
2023: Chat Integrado
ChatGPT/Claude. Copiar y pegar bloques de código.
2025: Agentes Autónomos
> prompt: "Crea el sistema entero"
> [Ejecutando...]
LA ILUSIÓN DE LA SIMPLICIDAD
Creemos que el prompt es todo el trabajo. Ignoramos la masa crítica que sostiene el software.
EL BUCLE INFINITO DEL CAOS
1. Falla A
2. IA Arregla A
data = check(A)
3. Rompe B
Vuelve al paso 1.
AMNESIA DE CONTEXTO
Los agentes tienen ventanas de memoria finitas. A mayor interacción, mayor pérdida de la arquitectura original.
"Aquí tienes el código usando SQLite y variables any. ¡Espero te sirva!" 🤡
LAS 69 VULNERABILIDADES
Distribución de fallos críticos inyectados por Agentes IA en pruebas de seguridad reales.
BOMBAS SILENCIOSAS
# IA generó esto para "facilitar":
ADMIN_TOKEN = "super_secret_123"
if auth_header == ADMIN_TOKEN:
return True
// IA olvidó sanitizar el input:
const q = `SELECT * FROM users WHERE id = ${userId}`;
db.execute(q); ← SQL INJECTION
LA RULETA RUSA DE MODELOS
Elige el agente. La misma instrucción generará deudas técnicas distintas.
// Modelo: Claude 3.5 Sonnet
// Riesgo: Sobrediseño masivo.
> Prompt: "Haz un formulario de contacto simple"
> Generando estructura de microservicios...
> Creando Dockerfile y Kubernetes config...
> Resultado: 20 archivos para un HTML básico.
ARQUITECTURAS DE PAPEL
"El Camino Feliz" (Localhost)
- ✅ 1 Usuario de prueba.
- ✅ Datos perfectos ingresados.
- ✅ Red estable a 0ms.
- "¡Funciona! Súbelo."
La Realidad (Producción)
- ❌ 100 usuarios concurrentes.
- ❌ Fallos de red no manejados.
- ❌ Race conditions (bloqueos de DB).
- Colapso total del sistema.
LA PARADOJA DEL TIEMPO
Ganas minutos al inicio, pierdes semanas en mantenimiento.
CUÁNDO SÍ, CUÁNDO NUNCA
Uso Permitido
- ✔️ Boilerplate: Configurar
package.jsono Docker. - ✔️ UI Aislada: "Haz un botón de Tailwind rojo".
- ✔️ Scripts desechables: Limpiar un CSV rápido.
- ✔️ Explicador: "Explícame qué hace esta función Regex".
Prohibido (Alta Deuda)
- ❌ Lógica Core: Pasarelas de pago o carritos.
- ❌ Criptografía: Sistemas de Login custom.
- ❌ Refactors Ciegos: "Actualiza toda la app a React 19".
- ❌ Esquemas DB: Diseño de relaciones complejas.
DE OBREROS A ARQUITECTOS
DOMANDO LA BESTIA
Las metodologías rígidas son el único escudo contra las alucinaciones.
TDD con IA
"Genera la prueba unitaria primero. Si la pasas, acepto el código."
BDD (Gherkin)
"Dado que el usuario... Cuando hace clic... Entonces pasa esto". Ancla a la IA al negocio.
Spec-Kits
Archivos `.md` rígidos con reglas de arquitectura que la IA debe leer antes de actuar.
EL PATRÓN ORO DEL PROMPTING
1. ROL: "Eres un Arquitecto Senior en Python/FastAPI."
2. TAREA: "Crea el endpoint aislado de procesamiento."
3. RESTRICCIÓN: "Aplica principios SOLID. Usa Pytest para cobertura."
4. PATRÓN: "Piensa paso a paso (Chain of Thought)."
5. AUDITORÍA: "Auto-evalúa la asincronía y perfiles de memoria antes de imprimir."
EL VEREDICTO FINAL
Domina los fundamentos, o la IA dominará tu sistema.
Conclusión Técnica por el Autor (Human in the loop)
PEDRO LUIS ROMERO GONZÁLEZ
Python Developer Senior con +10 años de experiencia en arquitecturas
escalables (Globant, Warner, Mercadolibre).
Especializado en la integración real de IA (Langchain, LangGraph) optimizando latencia y
rendimiento mediante AsyncIO, Profilling y Testing estricto (PyTest).
Fin de la presentación. | Sistema asegurado.