Spanish English French German Italian Portuguese
Marketing Social
InicioTecnologíaDesarrolloLa IA no es una panacea para el desarrollo de software

La IA no es una panacea para el desarrollo de software

Cuánto más productivos son los desarrolladores que se apoyan en herramientas de código de IA? Recientemente, ha habido mucha especulación de que la IA hace que los desarrolladores sean 2, 3 o incluso 5 veces más productivos. Un informe predice multiplicar por diez la productividad de los desarrolladores para 2030.

La ironía, sin embargo, es que la comunidad de ingenieros, en su mayor parte, no ha podido ponerse de acuerdo sobre una forma universal de medir la productividad de la ingeniería. Algunos incluso han rechazado la idea por completo, argumentando que la mayoría de las métricas son defectuosas o imperfectas. La mayoría de las afirmaciones sobre la mejora de la productividad de la IA en la actualidad son cualitativas, basadas en encuestas y anécdotas, y no en datos cuantitativos.

¿Cómo podemos emitir juicios sobre la IA sin acordar primero cómo medir la productividad? Si aprendimos algo del experimento del trabajo remoto, es que nos tambaleamos sin datos para informar sobre nuestras decisiones, cambiando entre estrategias de oficina, remotas e híbridas basadas en dogmas e ideologías en lugar de datos y mediciones.

Estamos en camino de repetirlo con la IA. Para avanzar, primero debemos comprender y cuantificar su impacto.

El riesgo de quedarse atrás

La exageración actual en torno a la IA puede darnos a algunos una razón para hacer una pausa, debido al impacto desconocido en la calidad, el riesgo potencial de plagio y otros factores. Las empresas más cautelosas han entrado en un patrón de espera, esperando ver cómo se desarrolla este nuevo escenario.

Sin embargo, para las empresas habilitadas por la tecnología, el riesgo de quedarse atrás es existencial. La IA es un doble acelerador, que afecta tanto al qué y al cómo las empresas construyen. Las empresas que invierten en IA hoy en día tienen el potencial de duplicar la inversión al lanzar al mercado no solo nuevos productos impulsados ​​por IA, sino también productos al mercado de manera más rápida y económica.

La mayoría de las empresas se han centrado en la qué pero la IA podría ser el motor del cómo, creando el equipo de ingeniería con una producción 10x o incluso 100x. Las empresas que descubran cómo cruzar rápidamente el abismo, al optimizar las herramientas de IA de la manera más eficiente e impactante, y alcanzar la meseta de productividad más rápido se beneficiarán de una ventaja inicial en los años venideros. El riesgo de no hacer nada es demasiado alto.

Entender las compensaciones

Para alguien con un martillo, todo parece un clavo. Así también pasa con la IA.

De acuerdo a un informe reciente de GitHub, el principal beneficio de las herramientas de codificación de IA citadas por los desarrolladores fue mejorar sus habilidades en el lenguaje de codificación. Otro beneficio clave es la automatización de tareas, como escribir código repetitivo. Un experimento reciente de la empresa CodeCov mostró que ChatGPT funciona bien al escribir pruebas simples para funciones triviales y códigos relativamente sencillos.

Pero como cualquier tecnología, la IA tiene sus ventajas y desventajas. Por ejemplo, la IA generativa y los LLM no son capaces de realizar tareas altamente complejas o creativas, como migrar una base de código de una arquitectura a otra o incorporar lógica comercial en una nueva característica. Incluso podrían abrir agujeros de seguridad imprevistos o preguntas legales si los desarrolladores aceptan sugerencias generadas por IA sin controles de plagio, restricciones de licencia o derivaciones generados por la IA (las llamadas alucinaciones).

Pero la IA no necesita ser una panacea para cambiar la forma en que se escribe y se pone en producción el software. Incluso con estas limitaciones, cuando se usa de unas pocas formas precisas para ayudar con las tareas correctas, puede abrir nuevas puertas que hacen que esas tareas sean 10 veces más fáciles, rápidas o económicas.

Cuantificando el impacto

La mayoría de los desarrolladores ya están utilizando herramientas impulsadas por IA. Según GitHub, el 92 % de los usuarios en una encuesta han usado herramientas de codificación de IA en el trabajo o en su tiempo libre. Eso hace que sea fundamental que las empresas establezcan líneas de base lo antes posible para ayudar a comparar la productividad antes y después de implementar nuevas herramientas de IA.

Incluso las métricas de proxy simples pueden proporcionar información cuantitativa sobre el impacto de las nuevas herramientas. Por ejemplo, en una investigación en una comunidad de más de 400.000 desarrolladores, aparece que los que usan GitHub Copilot están insertando 1,3 veces más caracteres y 1,22 veces más líneas de código en la misma cantidad de tiempo que los desarrolladores que no usan el asistente de codificación de IA. . Si bien cambiar más líneas de código no equivale necesariamente a mejorar la productividad, la tasa cada vez mayor a la que los desarrolladores que usan GitHub Copilot pueden escribir código, ya sean pruebas unitarias, funciones u otro código repetitivo, proporciona evidencia de que están ahorrando tiempo y esfuerzo en tareas repetitivas.

Del mismo modo, medir cuántas funciones puede ofrecer un equipo antes y después de invertir en herramientas de IA puede ayudar a cuantificar el impacto. Las mejoras en la cantidad de funciones entregadas por ingeniero (junto con un menor costo por función entregada) constituyen un argumento comercial más sólido para continuar invirtiendo en herramientas de IA.

Rendimientos positivos de las inversiones en IA: Invertir en herramientas de IA puede desbloquear el desarrollo de nuevas funciones. Créditos de imagen: Software.com

La comparación de las funciones entregadas para eliminar o refactorizar también puede ayudar a comprender el impacto que la IA tiene en la calidad. Las empresas que experimentan problemas de calidad como resultado de la implementación de nuevas herramientas de codificación de IA dedicarán más tiempo a la rotación de códigos por supresión de códigos ineficientes y refactorización y menos tiempo al desarrollo de nuevas funciones.

Si bien es necesaria cierta cantidad de actualización y refactorización, una cantidad cada vez mayor puede indicar que el ROI de esas herramientas es menos convincente e impacta de forma sensible en la calidad.

Impacto de la IA en la calidad: el aumento de la rotación y la refactorización es una señal de problemas de calidad de la IA. Créditos de imagen: Software.com

Realizando las inversiones correctas

Para poder responder si la IA mejora la productividad de los desarrolladores, primero se debe mejorar la visibilidad de su impacto: dónde, cuándo y cómo en el proceso de desarrollo es probable que la IA tenga el mayor retorno de la inversión. Con tanta publicidad y entusiasmo en torno a la IA generativa, es más importante que nunca descubrir los datos correctos para llegar a la verdad.

A medida que las empresas invierten en herramientas de desarrollo de IA, pueden empoderar a sus equipos aplicando la observación al desarrollo de software. La observabilidad no solo ayuda a aprender más rápido sobre los límites y las oportunidades con la IA, sino que también abre la puerta a conversaciones sobre otros factores que afectan la productividad, como el trabajo remoto, DevOps y las plataformas internas de desarrollo.

Puede haber pocas dudas de que la IA tiene un papel en la mejora de la productividad, pero se requiere examinar los hechos para comprender cómo, y luego tomar decisiones informadas.

RELACIONADOS

SUSCRÍBETE A TRPLANE.COM

Publica en TRPlane.com

Si tienes alguna historia interesante sobre transformación, IT, digital, etc con cabida en TRPlane.com por favor envíanosla y la compartiremos con toda la Comunidad

MÁS PUBLICACIONES

Activar Notificaciones OK No gracias