
El vibe coding es una metodología de desarrollo donde te apoyas en la inteligencia artificial (IA) para crear software mediante instrucciones en lenguaje natural, dejando que el modelo genere tus aplicaciones. En lugar de escribir el código tú mismo, «vibras» conversando con la IA para construir aplicaciones y con esto, en principio parecería que los programadores no son ya necesarios.
En realidad, esta “euforia” está incrementando la deuda tecnológica de la empresa y elevando los costos de mantenimiento de largo plazo, pero, sobre todo eliminando su capacidad de innovación tecnológica a futuro.
Puntos clave del vibe coding
Una cosa es que se pueda hacer un programa o sistema de software y otra cosa es el valor de mantenerlo a través del tiempo. Este es el problema del vibe coding, poderlo actualizar y tenerlo a punto a lo largo de meses o años.
Por otro lado, es maravilloso que las aplicaciones sucedan en cuestión de minutos por un precio muy bajo, casi gratuito, pero muy pocas personas que no sepan de sistemas entienden la relevancia de una arquitectura sistémica empresarial. En pocas palabras, es ver cómo cada proceso se relaciona con otros procesos de otras áreas del negocio, y no solo estar haciendo programas por todos lados que no interoperan entre sí, creando silos de información y operación.
Al no tomar en cuenta esto, el costo de lograrlo cuando sea necesario implicará muchos reprocesos, rediseños y en general hacer toda una compostura mayor del negocio por no haberlo hecho con las herramientas y filosofía de sistemas que los arquitectos de sistemas tienen y conocen.
Diferencia entre programar y hacer ingeniería de sistemas
Programar es escribir código, pero la ingeniería de sistemas incluye entre muchas otras cosas preocuparse por la
- Escalabilidad: ¿cómo hacer que lo que funciona en una instancia pueda replicarse en decenas de sucursales/tiendas, etc.?
- Integración: Que conviva con otros sistemas de otras empresas o departamentos internos
- Seguridad: Que no sea fácilmente vulnerable o deje de operar cuando reciba datos que no se contemplaban
- Cumplimiento: Dependiendo del tipo de negocio puede haber regulaciones que debe tener cada sistema para poder operar con el sistema financiero o bancario, por ejemplo
- Continuidad: Tener estrategias para tolerancia a fallas
- Mantenimiento: Tener las actualizaciones que mantengan vigente a los sistemas ante cambios del entorno.
Entre muchos otros puntos que difícilmente una persona que no tiene estos conocimientos podrá contemplar.
Vibe coding: cuando sí
En principio si queremos hacer un prototipo rápidamente, o una investigación con poco presupuesto, o una automatización repetitiva simple, o acelerar algunas tareas técnicas que no conviven con otros sistemas o procesos o exploración de ideas o pruebas de concepto, el vibe coding es un parteaguas muy valioso.
Vibe coding: cuando no
Cuando nadie entiende el código, o se elimina por completo la supervisión humana, o es algo que en principio requiere de arquitectura de sistemas (que va a convivir con otras aplicaciones, procesos, integraciones de sistemas o con otras empresas, etcétera) o se prioriza la velocidad de desarrollo sobre el soporte de la tecnología entre otros puntos, NO se debe de emplear el vibe coding.
En pocas palabras, mientras mayor sea:
- el impacto financiero,
- la criticidad operativa,
- la complejidad,
- la regulación,
- la exposición legal,
- el costo de falla,
menos “vibe coding” debería existir sin supervisión humana experta.
Costos ocultos del vibe coding
De manera enunciativa y no absoluta puedo mencionarte que hay una serie de costos que no se toman en cuenta por la mayoría al pensar en vibe coding, tales como:
- La deuda tecnológica acumulada,
- La pérdida futura de productividad,
- La dependencia excesiva de prompts,
- Los retrabajos masivos,
- Las integraciones frágiles o inexistentes
- Al hacer depuraciones del código es mucho más complejo,
- Los sistemasson casi imposibles de entender,
- Los costos crecientes de mantenimiento, por no entender que se hizo o cómo se hizo
- La necesidad como consecuencia de lo anterior de consultores externos a futuro,
- Muy posiblemente más gasto en nube,
- Mucho más gasto en ciberseguridad, y más complejo,
- La necesidad (u obligatoriedad como consecuencia) de auditorías y cumpliomiento,
- La pérdida de conocimiento organizacional,
- La disminución del pensamiento crítico técnico,
- El incremento silencioso del TCO (el costo de operar la tecnología en el mediano y largo plazo).
Estos serían algunos de los costos a considerar del vibe coding.
Sobre todo, me preocupa un costo “nuevo” el “costo de la juventud”, esta es mi reflexión:
Si los profesionales jóvenes ya no entienden fundamentos porque todo se resuelve con prompts… ¿de dónde saldrán los arquitectos, especialistas y senior desarrolladores del futuro? La IA puede acelerar el desarrollo… pero también acelerar el “deskilling”.
El riesgo no es solo tecnológico… sino intelectual.
Ejemplos de problemas del vibe coding
- ERP / Finanzas: Un ERP puede parecer funcional durante meses… hasta que un cambio regulatorio revela que nadie entiende realmente cómo fue construido.
- Ciberseguridad: Un sistema generado por prompts puede funcionar perfectamente… hasta que una vulnerabilidad invisible provoque una filtración masiva.
- Integraciones empresariales: Muchas integraciones hechas con IA funcionan bien en pruebas… pero colapsan cuando escalan, cambian procesos o crece la complejidad operativa.
Y la historia se repite…
Si tratamos de ejemplificar este problema con fenómenos del pasado, ya lo hemos vivido de formas diferentes, tal como:
- Macros de Excel imposibles de mantener
- Shadow IT,
- Fábricas de software baratas,
- Sistemas heredados improvisados,
Por solo mencionar ejemplos que puede que ya hayan vivido muchos por no pensar en el mediano y largo plazo de los sistemas y desarrollos de software.
Conclusión: Lo barato sale caro
Muchas empresas quieren verse “AI-First”, y muchas direcciones quieren reportar reducción de fuerza laboral suplida por la tecnología. Inclusive, muchos ejecutivos están siendo premiados por ahorros inmediatos, pero el problema tecnológico normalmente aparece años después… cuando quienes tomaron la decisión incluso ya no están en la empresa.
Tenemos que recordar que, aunque la IA escriba el código, la responsabilidad de sus resultados está en las personas que la decidieron usar.
Por otro lado, no todo debe automatizarse, aunque se pueda.
Una cosa es generar programas rápido, otra es poderlos y saberlos soportar a lo largo del tiempo. El software debe de dar grandes beneficios al usarlo en el largo plazo, no costar cada vez más y más para simplemente operar.
Estimado Moises,
Como siempre, una extraordinaria nota al respecto de lo que pasa en nuestra industria. Me gustaría añadir a los puntos que mencionas, un par de puntos adicionales:
Hablas de la juventud y el deskilling: Lo que estamos viendo algunos en la industria mas bien será el «no trabajos para devs o ingenieros JR». Dado que la IA supuestamente «bien aplicada», con ingenieros SR detrás de ella, los hará ULTRA productivos (digamos sin considerar todos los riesgos que mencionas); ¿entonces que trabajos podrán conseguir los ingenieros recién graduados?… esas tareas que hacían los becarios o ingenieros jr y que hoy son automatizadas por un arquitecto o ingeniero SR usando AI, (sin quejas, ni vacaciones, ni malas prácticas (hasta eso, hay modelos que cubren las deficiencias de otros modelos, y colaboran para producir SW con calidad bastante decente)).
Vibe coding, cuando si: desde mi punto de vista, un dev, sr, arquitecto de sw con ya varios años de experiencia, con un buen proceso de «creación de software usando ai» (para ya no llamarle desarrollo de SW), puede producir aplicaciones y plataformas bastante robustas, bien diseñadas, escalables, y demás en un tiempo reducido de tiempo; sin demérito de calidad, «garantía» o con alta posibilidad de mantenibilidad, ya sea por el/ella mismo, o por prompts o incluso otro equipo de ingeniería distinto.
Sin duda continua el cambio vertiginoso de nuestro universo y nuestro día a día; y cada vez que uso un modelo nuevo, me siento mas arcaíco y obsoleto (y eso que no tengo tantos años de experiencia como tú comprenderas !! 😀 )
ABRAZO!
Me gustaMe gusta
Muchas gracias por tus valiosos comentarios. Respodiendo:
Me gustaMe gusta