Un ingeniero de software que afirma haber sido despedido de Meta en mayo publicó un extenso ensayo en el que sostiene que la dependencia excesiva de las herramientas de programación con IA deja frágiles los productos de software, especialmente las grandes aplicaciones de software como servicio que deben permanecer en línea y escalar a millones de usuarios.
El ingeniero dijo que solo puede suponer por qué perdió su empleo, pero sospecha que su renuencia a adoptar las herramientas de IA tan plenamente como algunos colegas tuvo un papel. Afirmó que no era un opositor reacio. En sus últimos meses en Meta, generó al menos el 90 por ciento de su código con IA, lo que describió como el mínimo necesario para obtener una calificación de desempeño aceptable. Sin embargo, las herramientas no multiplicaron su producción como esperaba. Dijo que ni siquiera la duplicaron.
Lo que más le preocupaba era la calidad. Afirmó que vio cómo sus colegas subían código en gran parte generado por IA y notó problemas que se acumularían con el tiempo. En un caso, según dijo, un programador sólido de su equipo intentó integrar código que usaba eventos de JavaScript para crear efectos de mouseover, en lugar del selector CSS :hover, un enfoque que calificó como totalmente inescalable.
Ahora, en otra gran empresa de tecnología, dice que se ha pasado por completo a código generado con IA porque eso es lo que exige el trabajo. Aun así, cree que muchos desarrolladores terminarán reconociendo que este enfoque no es sostenible. La IA, escribió, maneja bien los problemas que caben dentro de su ventana de contexto, pero no comprende los problemas a largo plazo que quedan fuera de ese marco reducido.
¿Por qué el código escrito con IA vuelve frágil al software grande?
Expone cuatro formas en que, según cree, la IA produce código frágil. La primera es las pruebas superficiales. Dijo que los agentes de IA suelen escribir gran cantidad de pruebas para métodos triviales de lectura y escritura, mientras que las pruebas de extremo a extremo tienden a cubrir solo los caminos que la base de código ya cubre. En su opinión, esas pruebas pasan por alto categorías enteras de usuarios y las interacciones superficiales, y los vacíos permanecen ocultos porque las métricas de cobertura de líneas siguen luciendo saludables.
Por qué dice que el código se descompone
El segundo problema es la complejidad. Escribió que la IA a menudo usa dos o tres métodos auxiliares donde bastaría con uno, y que aplica principios como DRY, o no te repitas, de forma tan rígida que la estructura adicional hace que el código sea más difícil de depurar para las personas. El tercero es la pérdida de comprensión. Cuanto más depende una empresa de la IA para escribir código, sostuvo, menos ingenieros entienden cómo funciona el sistema, lo que dificulta detectar una nueva abstracción que no encaja con las estructuras de datos y los algoritmos existentes.
El cuarto problema es la velocidad. Cada solicitud de integración llega más rápido que la anterior y recibe menos tiempo de revisión, escribió. Los desarrolladores revisan por encima, pasan por alto detalles importantes y dejan que pequeños defectos, como pruebas débiles y variables mal nombradas, se acumulen hasta que el código se vuelve enredado.
Señales de advertencia
¿Qué señales de advertencia muestran que el código de IA está perjudicando un producto de software?
Para las empresas que intentan determinar si la IA está afectando su software, enumeró cuatro síntomas. El primero es un mayor número de incidentes. Describió un patrón en el que una falla grave al final de un mes va seguida de más en el siguiente, hasta que un equipo termina lidiando con incidentes casi todos los fines de semana, tras uno o dos años de programación agéntica.
El segundo es una recuperación más lenta. Los ingenieros que ya no entienden bien la base de código deben revisar código complicado y mal probado cuando una herramienta de IA no logra encontrar la causa de un problema de un cliente, así que cada interrupción cuesta más tiempo y dinero resolverla.
El tercero son los errores que solo encuentran los clientes reales. Sostuvo que, cuando las personas dejan de leer el código con atención, pueden no notar si la IA está agregando analítica o capturando errores correctamente, de modo que las fallas pasan desapercibidas para las pruebas automatizadas y los probadores internos.
El cuarto es una peor experiencia tanto para los usuarios como para los desarrolladores. Escribió que las bases de código creadas con IA no están diseñadas pensando en los usuarios humanos ni en quienes les dan mantenimiento, y que el resultado es una espiral descendente que describió como enshittification.
¿Resistirá el código escrito con IA en los productos de software premium?
Cierra con una predicción más amplia. El software que sirve bien a las personas, escribió, necesita una perspectiva humana. Lo comparó con pedir comida a una máquina en un restaurante o comprar ropa en internet en lugar de hacerlo en persona. Los productos baratos que compiten principalmente por precio podrían aceptar un enfoque construido por máquinas, dijo, pero los mejores y más costosos seguirán adaptados a los usuarios y construidos por personas.
Este artigo foi escrito com a assistência de IA.
News Factory APP - notícias agênticas para impulsionar seu SEO e AEO.