WWWhat's new

¿Deberían los Ingenieros de Software Preocuparse de que la IA esté Codificando?

programar con IA

La Inteligencia Artificial (IA) está revolucionando el mundo de la programación a un ritmo vertiginoso. Hace apenas unos días, Sundar Pichai, CEO de Google, reveló que más del 25% del código nuevo en Google es generado por IA. Esta afirmación ha generado una ola de incertidumbre y debate entre desarrolladores y expertos del sector, ya que plantea preguntas sobre el futuro del rol humano en el desarrollo de software.

¿Realmente los Desarrolladores Humanos se Están Quedando Obsoletos?

Aunque la IA ya se utiliza ampliamente para tareas de autocompletar código, muchos ingenieros de Google aclaran que su función sigue siendo limitada. Un empleado anónimo comentó en la plataforma Hacker News que el sistema de autocompletado de Google, potenciado por IA, simplemente es útil para finalizar líneas de código que el desarrollador ya ha comenzado. «Es capaz de completar una función una vez que empiezo a escribirla, pero no está creando lógica compleja ni decisiones de ingeniería», compartió el ingeniero. Esto muestra que, si bien la IA puede agilizar el trabajo, aún necesita la supervisión humana para garantizar la calidad y la funcionalidad del código.

Otros ingenieros de Google también señalaron que una gran parte de la IA en el código se centra en tareas de mantenimiento: eliminar clases obsoletas, actualizar dependencias y modificar configuraciones de despliegue. En definitiva, no se trata de desarrollar nuevas funciones o agregar lógica de negocio compleja.

La Confianza en el Código Generado por IA

Algunos desarrolladores expresan preocupaciones sobre el uso de IA en el código de producción sin autores humanos específicos. «Que Google esté agregando código sin un autor humano a sus productos es algo preocupante», comentó un desarrollador. La inquietud reside en el hecho de que el código generado automáticamente podría derivar en problemas de mantenimiento y calidad a largo plazo.

Para códigos con lógica más elaborada, los desarrolladores notan que la IA aún necesita ayuda humana. Muchos mencionan que, si bien usan herramientas como GitHub Copilot para tareas básicas, a menudo deben reescribir partes del código generado para adaptarlo a las necesidades específicas de sus proyectos.

La Visión de GitHub: Un Futuro en el que los Desarrolladores y la IA Trabajan en Sinergia

Durante el evento GitHub Universe 2024, el CEO de GitHub, Thomas Dohmke, describió cómo los desarrolladores están utilizando la IA no solo para programar, sino para construir herramientas de IA que les permitan trabajar de manera más inteligente. GitHub Copilot, una de las herramientas más populares de este tipo, ha alcanzado niveles de adopción masiva, en gran parte gracias a la facilidad que ofrece para escribir y refinar código.

Según Dohmke, GitHub está avanzando hacia una era en la que la IA será nativa en cada etapa del flujo de trabajo del desarrollador. Desde autocompletar funciones hasta mantener la seguridad del código, el objetivo es facilitar la colaboración entre humanos e IA. Herramientas como Copilot Autofix, por ejemplo, no solo ayudan a escribir código más rápidamente, sino que también abordan problemas de seguridad en tiempo real, aliviando así el “deuda de seguridad” que enfrentan muchos equipos de desarrollo.

Retos y Limitaciones de la IA en la Programación

David Timothy Strauss, CTO de Pantheon, subrayó las limitaciones de la IA al revisar su propio código. A medida que confiamos más en las herramientas de IA, los problemas de redundancia y posibles errores aumentan. Como menciona Strauss, «es difícil usar una IA para verificar a otra IA». La autocomprobación de estos sistemas aún tiene un largo camino por recorrer.

Además, si bien la IA ha mejorado su capacidad para generar código y resolver problemas, aún no puede comprender y aplicar contextos comerciales complejos de la misma manera que un desarrollador experimentado. Por lo tanto, para proyectos que involucran decisiones de alto nivel o lógica comercial intrincada, la intervención humana sigue siendo esencial.

¿Una Amenaza o una Oportunidad?

La expansión de la IA en el desarrollo de software no significa necesariamente que los desarrolladores humanos estén en peligro de perder su trabajo. De hecho, la IA puede liberar a los desarrolladores de tareas repetitivas y tediosas, permitiéndoles concentrarse en trabajos de mayor valor añadido, como la planificación y el diseño de arquitecturas complejas. Según Dohmke, el rol del desarrollador está evolucionando y los programadores están a la vanguardia de esta transformación tecnológica.

Desde WWWhatsnew, creemos que esta es una oportunidad para que los ingenieros de software desarrollen habilidades adicionales y se adapten a un ecosistema de trabajo que combina inteligencia humana y artificial. La colaboración entre humanos y máquinas no solo promete acelerar el desarrollo de productos, sino también crear una nueva dinámica en el sector tecnológico.

Conclusión

Aunque la IA está avanzando en el mundo de la programación, es improbable que elimine la necesidad de ingenieros de software en un futuro cercano. Las herramientas impulsadas por IA están diseñadas para complementar, no reemplazar, el trabajo humano. Y aunque aún quedan desafíos por superar en términos de calidad y mantenimiento, la simbiosis entre desarrolladores y sistemas de IA parece ser el camino a seguir.

Salir de la versión móvil