Esto significa que los desarrolladores de software program se volverán más importantes para cómo el mundo construye y mantiene software program. Sí, hay muchas formas en que sus prácticas evolucionarán gracias a la asistencia de codificación de IA, pero en un mundo de código proliferante generado por la máquina, el juicio y la experiencia del desarrollador serán vitales.
Los peligros del código generado por IA ya están aquí
Los riesgos del código generado por IA no son ciencia ficción: hoy están con nosotros. Investigación realizada por Gitclear a principios de este año Indica que con los asistentes de codificación de IA (como el copiloto de GitHub) se convierte en la corriente principal, la rotación de código, que GitClear outline como “los cambios que fueron incompletos o erróneos cuando el autor escribió, cometió, cometió y los llevó al repositorio GIT de la compañía”, ha aumentado significativamente. GitClear también encontró que hubo una marcada disminución en el número de líneas de código que se han movido, una señal para el código refactorizado (esencialmente la atención y la alimentación para que sea más efectiva).
En otras palabras, desde el tiempo se introdujeron asistentes de codificación, ha habido un aumento pronunciado en las líneas de código sin un aumento proporcional en las líneas eliminadas, actualizadas o reemplazadas. Simultáneamente, ha habido una disminución en las líneas movidas, lo que indica que se ha escrito mucho código pero no refactorizado. Más código no es necesariamente algo bueno (a veces todo lo contrario); Los hallazgos de Gitclear finalmente apuntan a la complacencia y la falta de rigor sobre la calidad del código.
¿Se puede eliminar la IA del desarrollo de software program?
Sin embargo, la IA no tiene que eliminarse del desarrollo y la entrega de software program. Por el contrario, hay mucho de qué entusiasmarse. Como se señaló en el último volumen de la Radar tecnológico – Informe de ThoughtWorks sobre tecnologías y prácticas del trabajo con cientos de clientes en todo el mundo: el espacio de asistencia de codificación está lleno de oportunidades.
Específicamente, el informe notó herramientas como Cursor, Calmar y Windsurf puede habilitar agentes de ingeniería de software program. Lo que parece en la práctica es una característica related a un agente dentro de entornos de desarrolladores que los desarrolladores pueden pedir conjuntos específicos de tareas de codificación que se realizarán en forma de un mensaje de lenguaje pure. Esto permite la asociación humana/máquina.
Dicho esto, centrarse solo en la generación de código es perder la variedad de formas en que la IA puede ayudar a los desarrolladores de software program. Por ejemplo, ThoughtWorks ha estado interesado en Cómo se puede utilizar la IA generativa para comprender las bases de código heredadoy vemos muchas promesas en herramientas como Unbblocked, que es un asistente de equipo de IA que Ayuda a los equipos a hacer exactamente eso. De hecho, el código Claude de Anthrope nos ayudó a agregar Soporte para nuevos idiomas en una herramienta interna, Codeconcise. Utilizamos Codeconcise para comprender los sistemas heredados; Y aunque nuestro éxito fue mixto, creemos que hay una verdadera promesa aquí.
Prácticas de endurecimiento para aprovechar mejor la IA
Es importante recordar que gran parte del trabajo realiza los desarrolladores no es desarrollar algo nuevo desde cero. Una gran proporción de su trabajo está evolucionando y adaptando el software program existente (y a veces heredado). Las bases de código extensas y janky que han tomado de deuda técnica son, desafortunadamente, la norma. Simplemente aplicar la IA probablemente empeorará las cosas, no mejor, especialmente con enfoques como Vibe.
Es por eso que el juicio del desarrollador se volverá más crítico que nunca. En la última edición del informe de Know-how Radar, Diseño de código amigable con AI se destaca, en función de nuestra experiencia de que los asistentes de codificación de IA funcionan mejor con bases de código bien estructuradas.