¿Por Qué Dicen que la IA Programa Mal? Los Datos Dicen lo Contrario
Llevo más de un año programando con IA a diario. He construido proyectos enteros, he refactorizado codebases de miles de líneas, he integrado APIs complejas. Y cada vez que entro en Twitter/X veo el mismo debate eterno:
- "La IA genera código lleno de bugs"
- "Copilot me ha metido 3 vulnerabilidades"
- "Vibe coding es una mierda para producción"
Y al lado:
- "La IA me ha 10x mi productividad"
- "Claude Code es mejor que mis juniors"
- "Hice una app completa en un fin de semana"
¿Quién tiene razón? Ambos. Y ninguno.
Después de analizar los benchmarks reales, los estudios más recientes y mi propia experiencia, tengo una opinión muy clara: el problema nunca fue la IA. El problema es cómo la usas.
Los Datos que Nadie Quiere Ver
Antes de dar mi opinión, dejemos que hablen los números. Porque cuando alguien dice "la IA programa mal", me pregunto: ¿comparado con qué?
Claude Opus 4.5: 80.9% en SWE-bench
En diciembre de 2025, Claude Opus 4.5 se convirtió en el primer modelo en superar el 80% en SWE-bench Verified, el benchmark más respetado para evaluar capacidad de programación real.
¿Qué significa esto? Que resolvió correctamente 405 de 500 problemas de código del mundo real. No ejercicios de LeetCode. Bugs reales en repositorios de GitHub.
Pero aquí viene el dato demoledor: según Anthropic, este rendimiento supera a todos los candidatos humanos que han realizado su examen técnico interno de contratación (un examen riguroso de 2 horas).
Léelo otra vez: la IA supera a los humanos que aplican para trabajar en Anthropic.
La Evolución es Brutal
| Año | Mejor Score SWE-bench |
|---|---|
| 2024 | ~50% |
| 2025 (inicio) | 62.3% (Claude 3.7) |
| 2025 (final) | 80.9% (Claude Opus 4.5) |
En un año, hemos pasado del 50% al 80%. Eso no es mejora incremental. Es un salto cualitativo.
GPT-5.2 Codex: El Otro Gigante
OpenAI no se queda atrás. GPT-5.2 Codex alcanza el 80.0% en SWE-bench Verified y domina en SWE-bench Pro (la versión más difícil) con un 56.4%.
Estamos en un punto donde dos modelos superan consistentemente a la mayoría de desarrolladores en tareas de código del mundo real.
Entonces, ¿Por Qué Tanta Gente Dice que la IA Programa Fatal?
Aquí es donde empieza mi opinión fuerte. Y no me voy a cortar.
Error #1: No Saben Promptear
El 90% de las quejas vienen de gente que escribe prompts como:
"Haz una función que haga login"
Y luego se quejan de que el código "no funciona". Pues claro que no funciona. No has dicho:
- Qué framework usas
- Cómo es tu modelo de usuarios
- Qué tipo de autenticación quieres
- Qué base de datos tienes
- Qué errores debe manejar
La IA no lee mentes. Es un modelo de lenguaje. La calidad del output depende directamente de la calidad del input.
Un estudio de 2025 encontró que los trabajadores que empiezan las conversaciones con un plan estructurado (definiendo objetivos, pasos y posibles fallos) tienen tasas de aceptación del código significativamente mayores.
No es "prompt engineering" mágico. Es pensar antes de hablar. Lo mismo que harías con un compañero humano.
Error #2: Esperan Magia
Esto es el síndrome del "vibe coding malo". Andrej Karpathy acuñó el término "vibe coding" en febrero de 2025, describiendo un estilo donde:
"Te entregas a las vibras, olvidas que el código existe, y aceptas todo"
El problema es que mucha gente tomó esto literalmente. Y los resultados fueron desastrosos.
Dato real: Un estudio de Veracode en 2025 analizó más de 100 LLMs en 80 tareas de código y encontró que el 45% del código generado por IA introduce vulnerabilidades de seguridad.
¿Significa eso que la IA es mala? No. Significa que si copias y pegas sin revisar, vas a tener problemas. Como siempre. Como con cualquier código.
Incluso Karpathy, el inventor del término, abandonó el vibe coding para su proyecto más reciente (Nanochat). ¿Su explicación? "Los agentes de Claude/Codex simplemente no funcionaban lo suficientemente bien". Y esto lo dice alguien que trabaja en el campo.
Error #3: Copian Sin Entender
Este es el más grave. Veo desarrolladores (especialmente juniors) que:
- Piden código a la IA
- Lo pegan directamente
- No lo leen
- No lo entienden
- Cuando falla, piden "arreglarlo"
- Repeat hasta el infierno
El resultado es un codebase Frankenstein donde nadie sabe qué hace qué. Un CTO entrevistado en 2025 describió su pesadilla:
"Descubrimos que más de un tercio del codebase estaba duplicado. Un componente había crecido 9 veces el tamaño recomendado. La misma función de normalización de texto aparecía en 15 archivos diferentes."
¿El culpable? Vibe coding sin supervisión.
Error #4: Usan Herramientas Inadecuadas (O No Las Exprimen)
Incluso con modelos potentes disponibles gratis (GPT-5.1, Gemini 2.5 Pro, Claude Sonnet), hay una diferencia enorme entre:
- ChatGPT/Gemini web: Pegar código en un chat sin contexto del proyecto
- Cursor/Windsurf/Copilot: Autocompletado y chat en el IDE, pero sin acceso profundo al codebase
- Claude Code con MCPs: Terminal-first, contexto completo, testing integrado, plan mode
El problema es que la mayoría sigue en Cursor o Copilot haciendo autocompletado básico. No usan MCPs, no conectan testing, no activan plan mode para tareas complejas. Es como tener un Ferrari y usarlo solo para ir al supermercado.
Y no, no es culpa de las herramientas. Es que la gente no invierte tiempo en configurarlas bien.
Las herramientas de 2025-2026 tienen:
- Acceso a tu repositorio completo
- MCPs (Model Context Protocol) para testing, bases de datos, APIs
- Plan mode para tareas complejas
- Multi-file editing con comprensión de dependencias
La Paradoja de la Productividad
Aquí viene el dato más contraintuitivo del año. Un estudio de MIT/METR en 2025 con 16 desarrolladores experimentados encontró que:
Los desarrolladores creen que la IA les hace un 20% más rápidos. En realidad, son un 19% más lentos.
Espera, ¿qué?
Esto parece contradecir todo lo que he dicho. Pero tiene una explicación perfecta: el tiempo ahorrado en escribir código se pierde en debugging.
El 66% de los desarrolladores encuestados identificó como su mayor frustración las soluciones de IA que son "casi correctas, pero no del todo". Ese "casi" te come vivo cuando tienes que encontrar el bug.
Entonces, ¿la IA no sirve para nada?
No. Lo que este estudio demuestra es que el vibe coding puro no funciona en tareas complejas. Pero eso no significa que la IA no sea útil. Significa que necesitas un flujo de trabajo diferente.
Mi Flujo de Trabajo (El Que Sí Funciona)
Después de un año iterando, este es mi stack y mi proceso. No es el único válido, pero es el que me ha dado resultados consistentes.
Herramienta Principal: Claude Code
Uso Claude Code como mi herramienta principal por varias razones:
- Terminal-first: Trabaja donde yo trabajo
- Contexto completo: Entiende todo mi proyecto, no solo el archivo actual
- Plan Mode: Para tareas complejas, primero planifica
- MCPs: Puedo conectar testing, bases de datos, APIs
MCPs que Uso Constantemente
Los MCPs (Model Context Protocol) son la clave de mi productividad. Permiten que Claude Code interactúe con herramientas externas:
| MCP | Uso |
|---|---|
| Playwright | Testing E2E automático mientras codifico |
| Supabase | Queries a la base de datos para contexto |
| GitHub | PRs, issues, commits integrados |
Cuando Claude tiene acceso a los tests de Playwright, puede ejecutar tests mientras escribe código. Eso elimina el 80% de los bugs básicos.
Mi Flujo Real: Iteración Constante
Mi flujo no es "pido código → copio → rezo". Es bastante más caótico y eso es lo que funciona:
- Planificación inicial: Describo la tarea con todo el contexto relevante
- Plan Mode: Claude propone un plan, lo reviso, ajusto y muchas veces descarto partes
- Implementación iterativa: Archivo por archivo, validando cada cambio
- Volver atrás constantemente: En la misma conversación deshago cambios, pruebo otra aproximación, descarto ideas. No es lineal
- Tests en cada paso: Playwright/Jest validan cada cambio antes de seguir
- Commits frecuentes: Cada 10-15 minutos como mínimo, puntos de rollback
- Review del código: Leo lo que genera, entiendo qué hace, refactorizo si no me convence
La diferencia clave: yo sigo teniendo el código en mi cabeza. No me "entrego a las vibras". Dirijo el proceso, y muchas veces eso significa decirle "no, para, vamos a hacerlo de otra forma".
Skills, Hooks y Agentes
Claude Code permite extender su funcionalidad de formas que la mayoría no aprovecha:
Skills: Comandos reutilizables que cargan instrucciones específicas. Los míos:
/commit: Genera commits siguiendo convención del proyecto/test: Ejecuta tests relevantes para los cambios actuales/review-pr: Analiza un PR antes de merge/flow-status: Estado completo de Git Flow
Hooks: Scripts que se ejecutan automáticamente antes o después de ciertas acciones. Por ejemplo, ejecutar linting antes de cada commit o validar que los tests pasen.
Agentes en paralelo: Para tareas complejas, lanzo varios agentes que trabajan en subtareas simultáneamente. Uno investiga, otro implementa, otro valida.
Control de costes: Monitorizo el uso de tokens por conversación. Uso modelos más baratos (Haiku) para tareas simples y reservo Opus para lo complejo. La diferencia en la factura es considerable.
Quién Se Beneficia (Y Quién No)
Basándome en los datos y mi experiencia, tengo claro quién gana con la IA:
Los Seniors Son los Grandes Ganadores
Un estudio de 2025 encontró que los desarrolladores senior aceptan outputs de agentes IA a tasas más altas y muestran comportamiento de planificación más consistente.
¿Por qué? Porque:
- Saben qué pedir: Han visto suficientes problemas para describir bien la solución
- Detectan errores rápido: Su experiencia les permite validar el código
- Entienden el contexto: Saben cómo integrar el código generado
- No dependen de la IA: Pueden hacer el trabajo sin ella si falla
Un senior con IA puede hacer en horas lo que antes llevaba días. Pero sigue siendo el senior quien aporta el criterio.
Los Juniors: Depende
Para juniors, la IA puede ser:
- Un tutor: Si la usan para aprender y entender
- Una trampa: Si la usan para evitar pensar
El mayor riesgo es que juniors que solo "vibran" nunca desarrollan las habilidades fundamentales. Cuando la IA falla (y fallará), no tienen red de seguridad.
Mi consejo para juniors: usa la IA para acelerar tu aprendizaje, no para evitarlo. Lee cada línea que genera. Pregunta por qué. Entiende las decisiones.
Founders y Solopreneurs: El Sweet Spot
Si eres founder técnico o solopreneur, la IA cambia las reglas del juego. Puedes:
- Construir MVPs completos sin equipo
- Iterar rápido sobre feedback
- Cubrir áreas fuera de tu expertise (frontend si eres backend, etc.)
Pero ojo: esto funciona porque tú sigues siendo el revisor final. No hay equipo de QA que te salve.
El Vibe Coding Funciona... Para Lo Que Funciona
No soy anti-vibe coding. Hay contextos donde es perfecto:
- Prototipos rápidos: Probar una idea en horas
- Scripts one-off: Automatizaciones que usas una vez
- Proyectos personales: Donde el "fallo" no tiene coste
- Aprendizaje: Explorar tecnologías nuevas
Donde no funciona:
- Producción con usuarios reales: Los bugs cuestan dinero y confianza
- Sistemas críticos: Fintech, healthcare, infraestructura
- Proyectos en equipo: Código que otros van a mantener
- Largo plazo: Cualquier cosa que vivirá más de un mes
La distinción es simple: ¿qué pasa si falla? Si la respuesta es "nada grave", vibea. Si la respuesta es "problemas serios", ingeniería con IA asistida.
Mi Opinión Final
Después de todos estos datos, te doy mi take:
La IA no programa mal. La gente que no sabe usar la IA programa mal con IA.
Es como decir que "los coches son peligrosos" porque hay gente que conduce borracha. El problema no es el coche.
Los datos son claros:
- Claude Opus 4.5 supera al 80% de tareas de código real
- GPT-5.2 Codex está al mismo nivel
- Ambos superan a humanos en exámenes técnicos rigurosos
¿Cómo puede la misma herramienta producir código excelente para unos y desastres para otros? El factor humano.
La IA es un amplificador:
- Si sabes lo que haces, amplifica tu productividad
- Si no sabes, amplifica tu incompetencia
Consejos Prácticos Para Empezar Bien
Si quieres dejar de quejarte de que "la IA programa mal" y empezar a aprovecharla:
1. Elige tu Herramienta (Y Aprende a Usarla de Verdad)
El debate actual está entre dos filosofías:
IDE-based (Cursor, Copilot, Windsurf):
- Autocompletado integrado en tu editor
- Chat contextual con el archivo abierto
- Curva de aprendizaje baja
- Limitado en tareas multi-archivo complejas
Terminal-first (Claude Code, Codex CLI, OpenCode):
- Acceso completo al repositorio
- MCPs para conectar testing, bases de datos, APIs
- Plan mode para tareas complejas
- Requiere aprender a configurarlo bien
No hay una respuesta correcta. Pero sí hay una incorrecta: usar cualquiera de estas herramientas solo para autocompletado básico
2. Planifica Antes de Pedir
Antes de escribir un prompt:
- Define el objetivo claro
- Lista los pasos necesarios
- Identifica posibles fallos
- Incluye contexto relevante (framework, DB, etc.)
3. Integra Testing
Configura MCPs o herramientas que ejecuten tests. La combinación IA + tests automáticos es imbatible.
4. Itera Pequeño
No pidas "haz la app entera". Divide en tareas de 30-60 minutos. Valida cada paso.
5. Lee el Código
No confíes ciegamente. Lee. Entiende. Si no entiendes algo, pregunta.
6. Ten Puntos de Rollback
Commits frecuentes. Si algo se rompe, puedes volver atrás sin drama.
Conclusión: El Futuro Ya Está Aquí
La IA no va a mejorar mágicamente tus habilidades. Pero si ya eres bueno, te va a hacer mucho mejor, mucho más rápido.
Los datos son innegables: estamos en un punto donde los mejores modelos superan a la mayoría de humanos en tareas de código real. Y esto solo va a mejorar.
La pregunta no es si la IA "programa bien o mal". La pregunta es: ¿vas a aprender a usarla, o te vas a quedar quejándote en Twitter mientras otros construyen el futuro?
Más Recursos
Si te ha interesado este artículo, aquí tienes más contenido relacionado:
Artículos Relacionados
- Vibe Working: Qué Es y Cómo la IA Está Revolucionando la Productividad - La otra cara de la moneda: cuando el vibe coding sí funciona
- Guía Completa: Cómo Escribir Prompts Efectivos - Si tu problema es promptear, empieza aquí
- Qué es MCP (Model Context Protocol) - Explicación detallada de los MCPs que menciono
- Manual n8n Español: Tutorial para Principiantes - Si quieres automatizar sin código
Proyectos Open Source
Todos mis proyectos están en GitHub. Algunos relevantes para este artículo:
- ree-mcp - El servidor MCP de Red Eléctrica que menciono
- production-template-fastapi-llm - Template para llevar LLMs a producción
Sígueme
- YouTube @JavadexAI - Tutoriales prácticos de IA y desarrollo
- LinkedIn - Donde publico contenido como este
- TikTok @javadex - Contenido corto sobre IA
Fuentes
- LM Council Benchmarks - Comparativa actualizada de modelos IA
- SWE-bench - Benchmark de codificación real
- Claude Opus 4.5 vs GPT-5.2 Codex - Comparativa head-to-head
- Introducing Claude 4 - Anthropic
- Vibe coding - Wikipedia - Definición y contexto
- Vibe coding is not AI-Assisted engineering - Addy Osmani
- Stack Overflow: A new worst coder has entered - Stack Overflow Blog
- AI Contrarians on Vibe Coding Problems - The New Stack
- MIT/METR Study on AI Developer Productivity - METR
- Claude Code vs Cursor Comparison - Qodo
- The AI Productivity Paradox - Faros AI