Hace dos semanas, la mayor plataforma de desarrolladores de software del mundo, GitHub –180 millones de creadores de código que se incrementan a un ritmo de uno por segundo– se reunió en San Francisco, lugar de esta entrevista con Alexander Androncik, director de desarrollo de software de AMD, una de las grandes empresas de chips que compite en la nueva era de la inteligencia artificial.
Si tuviera que explicar a alguien que no sabe nada sobre desarrollo porqué este momento es tan importante, ¿qué le diría?
Este es quizás uno de los puntos de inflexión en el paradigma de los cambios en el desarrollo de software, y ha habido varios, desde el ensamblaje hasta los compiladores, desde las imágenes de bajo nivel hasta las de alto nivel, desde lo funcional hasta lo orientado a objetos, y ahora con la nube, donde ahora se puede implementar a gran escala lo que antes era imposible, pero creo que este punto de inflexión es probablemente aún mayor que eso.
Alexander Androncik, director de software de AMD
¿Por qué?
Porque la forma fundamental en la que se desarrolla el software podría cambiar. Por eso es tan emocionante, y es algo que debemos tener en cuenta: prestar atención y estar al día como desarrolladores, como ingenieros. Incluso se puede ver una cierta democratización, en la que personas que no sabían programar de repente pueden crear software. Quizás sea algo bueno y malo al mismo tiempo. Pero creo que eso seguirá evolucionando. Algunas de las cosas más fáciles serán mucho más fáciles de hacer, pero creo que habrá más demanda de verdadera experiencia.
¿Qué significa ser programador hoy, si la IA escribe código más rápido que un humano?
La IA debe considerarse una herramienta para mejorar la productividad y la aceleración, en lugar de un sustituto de los programadores. Si lo único que escribes es código repetitivo, probablemente la IA ya sea mejor que tú. Pero si eres un ingeniero que entiende cómo se crea un producto, cómo debe funcionar, cómo debe utilizarlo el usuario, a qué mercado se dirige y cuál es la arquitectura general de la solución que estás creando, entonces tienes mucho valor, ¿verdad? Y puedes utilizar la IA como una herramienta para trabajar más rápido. Ahí es donde AMD está enfocando el tema. Queremos utilizar la IA para avanzar más rápido, acelerar nuestra hoja de ruta y entregar el producto más rápido. Hay mucho dinero en juego.
Si lo único que escribes es código repetitivo, probablemente la IA ya sea mejor que tú”
Además de ir más rápido, ¿la clave es que permite ir más lejos?
Lo único de lo que creo que debemos protegernos es de que la IA te dé velocidad, lo cual es genial, pero si eso se consigue a costa de la calidad, no sirve de nada. Puede que ahora consigas una mayor productividad, pero un año más tarde, como el código de IA es imposible de mantener, vas a pagar el precio. Calidad y productividad son las dos variables que hay que equilibrar. Si hay un equilibrio total, entonces probablemente la IA no sea la aplicación adecuada para ese ámbito.
¿La IA está haciendo que los ingenieros de software sean cada vez más importantes en las empresas de hardware?
Sin duda, los hace más prominentes. No creo que queden empresas de hardware puro. Un chip no es solo un chip, es firmware , son controladores, son aplicaciones, es una solución que se construye a su alrededor. Desde esa perspectiva, el software es ahora más importante, sin duda, pero tenemos que considerar que la IA ayuda a todo el ciclo de desarrollo del producto, no solo al software. Así que hay mucho más desarrollo de software dentro del desarrollo de hardware de lo que se podría pensar, ¿verdad?
¿Se necesitarán nuevos tipos de profesionales debido a la inteligencia artificial?
Sí, se necesitan nuevas habilidades. Hay dos formas de verlo. Una es que la IA no sustituye a los humanos, sino que los humanos que utilizan la IA sustituirán a otros humanos. Como desarrollador, creo que tenemos que adaptar nuestra forma de trabajar. La IA es otro paso en ese viaje.
Quizá haya algo de estrés en el sistema, ya que hay que aprender y todo cambia muy rápido”
Pero, ¿les da tiempo a adaptarse?
Está ocurriendo rápidamente. Por eso creo que quizá haya algo de estrés en el sistema, ya que hay que aprender y todo cambia muy rápido. Como desarrollador, tienes que aprender y adaptarte, de lo contrario quedas obsoleto.
¿Se percibe cierta inquietud?
Estas son cosas emocionantes, pero ahora hay preocupaciones. Tienes más que antes de que comenzara la carrera de la IA, y creo que quizá sea también por la velocidad. El ritmo es mucho más rápido que cualquier cosa que haya visto antes. Es más rápido que internet. En última instancia, las personas que prosperan son las que aceptan el cambio.
¿Cómo imagina que será el desarrollo de software, por ejemplo, en los próximos diez años?
Nadie tiene realmente una bola de cristal. Algunas de las razones por las que existen los lenguajes de programación, creo que cuando nacieron los compiladores, es realmente para que tuviéramos una forma determinista de decirle al ordenador lo que queríamos que hiciera. Creo que esa capa probablemente cambie un poco. Quizás ya no tengas que escribir todo ese código complicado,porque parte de eso se automatizará a través de la IA.
Todavía tenemos bastante miedo a que la IA se equivoque.
Quizás lo más importante sea no pedirle a la IA que genere el código incorrecto. Ya veremos el nivel de avance que tiene. Creo que los agentes van a desempeñar un papel muy importante en los próximos años. Incluso con las capacidades actuales de la IA, no creo que hayamos agotado el nivel de utilidad que puede aportar este enfoque.
Con el tiempo ganado porque la IA hace las tareas rutinarias que antes hacían humanos, ¿qué se puede hacer para mejorar?
Su capacidad crecerá sin duda mucho más y muchos pasos de nuestro flujo de trabajo se automatizarán, por lo que podremos avanzar más rápido. Para AMD, la idea es que solo queremos crear más productos y acelerar nuestra hoja de ruta. Creo que ahí es donde vemos la ventaja de utilizar esa tecnología.
Si la IA elabora parte del software, ¿quién lo firma?
Esa es una buena pregunta. Creo que el ser humano tiene que ser responsable. No es como si la IA actuara como una entidad propia. La IA es una herramienta que tú, como ingeniero, utilizas para crear software. Por lo tanto, tú, como ingeniero, tienes que ser el responsable. Debes tener las herramientas para comprobar el resultado que ha proporcionado y asegurarte de que es de calidad. No hay duda de que con la IA se es más productivo, pero también debemos tomar medidas para asegurarnos de que se obtiene una buena calidad.
¿Qué ocurre si alguien deja que la IA le haga todo el trabajo?
Si escribes algo y lo envías, y dos semanas después descubres que existe en ese software una gran vulnerabilidad de seguridad que nadie detectó porque la IA lo escribió, probablemente no sea la situación que deseas, debido a las implicaciones que tiene. AMD se va a asegurar de que se obtenga tanto aceleración como calidad.

