- A medida que el "slop", contenido de baja calidad generado por IA, se expande por todo internet, no solo en música, video y texto, también aparece un fenómeno similar en el software
- La producción de contenido se concentra en optimizarse únicamente para maximizar la interacción y los ingresos, mientras que la artesanía y la creatividad tienden a desaparecer
- El deterioro de la calidad y la degradación técnica en las grandes tecnológicas ya venían ocurriendo antes de la llegada de la IA, y una división del trabajo estrecha por roles debilita la pericia y la capacidad de pensamiento de los ingenieros
- Los agentes de IA son útiles para tareas repetitivas bien definidas, pero tienen limitaciones fundamentales: alucinan, no entienden bien el código y generan mal código
- Al igual que el movimiento Arts and Crafts del siglo XIX, ha llegado el momento de restaurar en el software ideas de la computación temprana y recuperar una artesanía centrada en las personas
La expansión del slop de IA y el concepto de technique
- Tras la publicación de los modelos de IA, aumentó de forma explosiva en audio, video y texto el contenido de baja calidad generado por IA conocido como “slop”
- El contenido basura siempre ha existido, pero con la IA el trabajo necesario para producirlo se redujo decenas de veces o más
- En tareas sin criterio o donde el criterio no importa, la IA alcanzó un nivel suficiente para reemplazar la mano humana
- El concepto de "technique" de Jacques Ellul: una forma de pensar que reduce la actividad a un conjunto de medios eficientes orientados a objetivos medibles y definidos
- Los Reels de Instagram, los videos de YouTube y los posts de blog se consideran “buenos” si obtienen la máxima interacción con el mínimo esfuerzo
- La obsesión con las métricas y el rendimiento erosiona valores intangibles como la artesanía, la belleza y el placer
Comparación de plataformas musicales: Bandcamp vs Spotify
- Bandcamp: se enfoca en álbumes completos y curaduría personal
- Respaldó el auge de la música indie de las décadas de 2010 y 2020, ayudando al ascenso de artistas como Car Seat Headrest, Mitski, Alex G y Phoebe Bridgers
- Como plataforma que toma la música misma como fin, prohíbe la música generada por IA
- Spotify: modelo basado en playlists y recomendaciones algorítmicas
- Se enfoca más en la optimización de métricas que en la música misma
- Se expande la música plana y ajustada al algoritmo
- En un entorno donde la artesanía no se toma en cuenta, la IA produce en masa contenido mucho más ventajoso para “maximizar ingresos” que la música hecha por personas
El deterioro de la calidad en la industria del software
- Incluso antes de la llegada de la IA, mucho software ya se encontraba en un estado de baja calidad generalizada
- La ingeniería de software en las grandes tecnológicas se ha degradado hasta parecerse más a "plomería"
- Se limita a conectar sistemas diversos para que los datos fluyan
- La idea de Richard Hamming sobre el “gran trabajo”, es decir, crear un regalo para la humanidad, hoy se percibe como algo demasiado idealista en la industria tecnológica
- Muchos sistemas de software a gran escala están sobredimensionados, mal diseñados y pobremente documentados
- Los usuarios viven constantemente a la defensiva para no ser explotados en el proceso de “enshittification” por el cual las plataformas empeoran cada vez más
- Hay afinidad con la visión planteada en la charla de Jonathan Blow Preventing the Collapse of Software Civilization
- Los ingenieros profesionales y las grandes empresas de software han olvidado cómo hacer bien su trabajo
- Debido a una estructura de monopolio no competitivo, quedan protegidos de la presión del mercado
- Las prácticas de software se relajan
- Las organizaciones se vuelven obesas
- La calidad general se deteriora de forma significativa
- Los ingenieros de big tech solo cumplen roles extremadamente limitados dentro de organizaciones enormes
- Las capacidades amplias de ingeniería y la artesanía se desgastan de forma natural
El problema del capital humano y la división del trabajo
- Lo que una empresa o una sociedad puede lograr con computadoras depende del capital humano, es decir, de cuánto logra formar ingenieros con habilidades amplias
- La estructura extrema de división del trabajo en las grandes tecnológicas
- Produce en masa personal técnico de capacidades estrechas familiarizado solo con un área
- Lo fija como fuerza laboral que solo puede funcionar dentro de la estructura organizacional actual de big tech
Aparecen dos fenómenos que vuelven a la IA una amenaza para la ingeniería de software
- 1. La percepción realista de que los agentes de IA amenazan a la ingeniería de software profesional
- Para ingenieros cuyo trabajo se ha reducido a producir software de baja calidad, repetitivo y de alcance estrecho
- La IA sí funciona en la práctica como un sustituto bastante eficaz
- 2. La generalización excesiva sobre las capacidades de los agentes de IA
Limitaciones fundamentales de los agentes de IA
- Para que esas afirmaciones se sostengan, hace falta una visión extremadamente estrecha de lo que es el software
- Igual que la música generada por IA exige ver la música solo como una métrica de consumo
- Se considera el software únicamente como una herramienta para lograr fines, con la actitud de que “si está suficientemente bien, basta”
- A partir de probar directamente agentes de IA, queda claro que son útiles en ciertos aspectos, pero tienen límites evidentes
- Dicen con seguridad cosas que no son ciertas, no entienden bien el contexto y a menudo generan código de baja calidad
- Puede que mejoren en algunos ámbitos, pero igual que en música o texto, hay límites estructurales claros
- Los agentes de IA no tienen pensamiento autónomo y no pueden descubrir por sí solos qué quiere el usuario
- Donde mejor funcionan es cuando la solicitud define con claridad el problema
- Ej.: “escribir pruebas unitarias”, “implementar una función de BD de esta forma”
- Los intentos de generalizar sus capacidades por lo general fracasan
- A menudo producen código monstruoso, novedoso pero difícil de mantener, entender y extender
Problemas del “Vibe Coding”
- Al principio parece impresionante, pero con el tiempo se vuelven evidentes sus defectos característicos
- Código innecesariamente verboso y con un estilo descuidado
- Estructuras simples, pero con un diseño plano y pobre en lo estético
- Sus rastros repetitivos terminan volviéndose cada vez más molestos
- Cuando aparecen problemas, el proceso de depuración se convierte en una tarea repetitiva y frustrante
- Mientras se programa distraídamente viendo otros videos o pasando por redes sociales
- Se repite una y otra vez al agente: “hay un bug, arréglalo de nuevo”
- Rasgos que aparecen con frecuencia en código generado por IA
- Botones con padding excesivo
- Espaciados y colores inconsistentes
- Una planitud estética general
- Elementos de UI cuya razón de existir no está clara
- La tendencia a añadir etiquetas y explicaciones innecesarias a todos los elementos
Problemas sistémicos de la industria del software y la necesidad de artesanía
- Es difícil negar que la mayor parte del código no es muy bueno, especialmente en entornos de grandes empresas
- Con IA es posible seguir produciendo software de baja calidad más rápido y con mayor eficiencia
- Pero la IA no resuelve los problemas sistémicos centrales que arrastra la industria del software
- El problema de fondo es que todavía no se ha establecido cómo construir buen software en entornos de gran escala
- Resolver esto requiere no automatización, sino artesanía y pensamiento crítico humano
El movimiento Arts and Crafts y su semejanza con el software
- Se pone atención al movimiento Arts and Crafts de la época de la Segunda Revolución Industrial
- John Ruskin y William Morris respondieron a una era en la que la asombrosa capacidad de las máquinas y la producción industrial desplazaba al artesano individual
- No vieron la producción industrial como progreso incondicional, sino que entendieron que había un “estilo” propio en sus resultados y en sus condiciones de trabajo
- Criticaron que el trabajador se estuviera convirtiendo cada vez más en una pieza de una enorme maquinaria industrial
- Señalaron que existían áreas en las que la máquina no podía sustituir al ser humano, y que eso no ha cambiado ni entonces ni ahora
- Buscaron recuperar la artesanía medieval como fuente de inspiración
Un giro similar que hace falta en el software
- En el campo del software también hace falta un giro y un movimiento semejantes
- Es necesario volver a estudiar y restaurar las formas y las ideas de la computación temprana
- Existe un rico tesoro de ideas que fueron ignoradas por la corriente principal, pero nunca desaparecieron
- Proyectos que eran impresionantes y bellos de formas distintas al software actual
- Hoy seguimos sobre una rama muy estrecha del desarrollo tecnológico, la ruta que va de C/Unix a Javascript/web
- Pero hay muchísimo más por explorar
- Apenas se avanza un poco en una dirección no tradicional, la ayuda de la IA casi desaparece
- Al intentar escribir Forth con Claude, la experiencia fue más cercana a una interferencia que a una ayuda
- Como punto de partida, se recomienda la wiki de Permacomputing
Perspectivas en la era del código con IA
- El código con IA puede hacer aún más común el software de baja calidad producido en masa
- Al mismo tiempo, también podría abrir un nuevo espacio para ingenieros que quieran recuperar la artesanía y la expresión creativa
- No hay pesimismo: cuanto más escasa se vuelva la artesanía, más valor tendrá por sí misma
- En un momento en que el software dominante muestra sus límites, la degradación de la calidad continúa y la conciencia política vuelve a cuestionar el valor de las estructuras centralizadas
- Es un buen momento para que desde los márgenes brillen software experimental, hecho por personas y operado a escala humana
1 comentarios
Opiniones de Hacker News
Me gustó la parte que menciona las ideas de Jacques Ellul
Hace volver a pensar en que la esencia del ‘progreso’ tecnológico consiste en elevar la eficiencia al valor supremo
Resulta interesante que este valor haya sido aceptado casi sin cuestionamientos. Aun así, sigo creyendo que todavía son posibles otras opciones
La eficiencia tiene, por naturaleza, la característica de sacrificar adaptabilidad y resiliencia
En cambio, el oficio, el cuidado y el asombro son difíciles de medir. La métrica que uso son los correos de personas reales, y eso es irregular e impredecible
Creo que también se puede producir código de alta calidad mediante agentes de programación
No se resuelve con un solo prompt, sino que requiere un proceso orquestado de planificación–implementación–verificación–revisión
Al final sigue siendo trabajo de ingeniería; lo único que cambió es la herramienta. Como la diferencia entre una sierra manual y una motosierra: el resultado es el mismo, pero el proceso es distinto
El software empresarial es malo sobre todo porque se le vende a gerentes que no lo usan
En cambio, el software de consumo es más amable porque los propios usuarios lo eligen
Cuando escribes código para ti mismo, implementas solo lo necesario, así que puede ser tosco, pero funciona bien
Los agentes de programación se pueden usar como una hidrolavadora para limpiar un proyecto. No es arte, pero sí satisfactorio
Eso sí, no deberían usarse en código delicado. Pero la mayoría de las webapps tienen buenas pruebas y ya casi no hay motivo para hacerlo a mano
El resultado es un exceso de funciones innecesarias y toggles
Los gerentes quieren precisión en los datos, pero los empleados se quejan de que ingresar datos es molesto
Muchas veces no hay presupuesto de integración o el contrato es de corto plazo, así que ni siquiera se puede hacer integración con CRM
En cambio, el software empresarial se distorsiona con flujos de trabajo extraños por el desajuste de incentivos entre quien paga y quien usa
La mayoría de los ingenieros de software ya se enfocaban más en el salario y la eficiencia que en el oficio incluso antes de la IA
Por eso, el código que produce la IA también termina siendo código mediocre
Creo que la IA no va a revivir el oficio, sino que más bien va a borrar los últimos rastros
Así como las herramientas eléctricas no acabaron con la carpintería artesanal, la IA tampoco lo hará
En el futuro coexistirán “la gente de IDE” y “la gente de prompts para agentes”
Da gusto ver una mención a Forth. Lo uso seguido
El código Forth generado por LLM tiene un mal estilo que parece una traducción de C
El Forth estándar debería ser breve y claro, pero los LLM producen código largo, lleno de condicionales anidados
Últimamente estoy leyendo Turing’s Cathedral
Me hizo apreciar de nuevo el oficio ingenieril de la posguerra en Estados Unidos
Ahora parece que damos todo por sentado y hemos olvidado cómo era la ingeniería de verdad
La mayor parte del código ya era bastante malo desde el inicio
En una cultura centrada en el resultado, la calidad quedó en segundo plano, y los bugs pasaron a ser parte del costo del negocio
La IA encaja perfectamente en este entorno. Ya está prosperando dentro de una cultura de código de bajo nivel
Creo que se puede usar la IA para crear mejor software
Incluso en el código generado por IA se pueden reflejar diseño, patrones y mejores prácticas
Esto se parece a la diferencia entre la fabricación tradicional de guitarras y la fabricación moderna de guitarras basada en CNC
Si ves el video de fabricación de guitarras de Ulrich Teuffel, tecnología y arte coexisten
Claro, el oficio es caro, por eso la mayoría elige productos industriales
Se está aplicando en proyectos grandes, pero los resultados a largo plazo todavía son una incógnita
Algoritmos que antes escribía yo mismo ahora se los delego a un agente
Igual que usar CNC en vez de fresado manual, hago evolucionar mi stack tecnológico para crear piezas de mayor calidad
Si se puede hacer software malo de forma barata con IA, está bien
Lo importante es si aumenta la proporción de buen software. La IA hace más probable esa posibilidad
La IA prospera en un entorno que optimiza el software hacia un nivel de ‘suficientemente bueno’
Más que reemplazar a grandes ingenieros, ya está revelando una realidad industrial mecánica y centrada en métricas
Cuanto más común se vuelva el código producido en masa, más el criterio y la sensibilidad estética humanos serán el recurso realmente escaso