?Supone ChatGPT el fin de los programadores? ¡°Los har¨¢ m¨¢s eficientes en lugar de reemplazarlos¡±
Una inteligencia artificial de DeepMind logra disparar la eficacia de lenguajes de c¨®digo, pero estos sistemas no reemplazar¨¢n a los profesionales, seg¨²n los expertos
Las nuevas herramientas de inteligencia artificial, con ChatGPT al frente, revolucionar¨¢n la creaci¨®n de texto, im¨¢genes, v¨ªdeos o m¨²sica. Su capacidad de escribir c¨®digo ha tenido menos impacto, pero es igual de incre¨ªble. Como en otras disciplinas, en los ¨²ltimos meses ha habido tambi¨¦n art¨ªculos apocal¨ªpticos escritos por expertos titulados ¡°El fin de la programaci¨®n¡± o ¡°ChatGPT reemplazar¨¢ a los programadores en diez a?os¡±. La clave, sin embargo, est¨¢ en los detalles: ?qu¨¦ es exactamente lo que es capaz de programar?
Primero, es capaz de resolver retos que merecen mucha repercusi¨®n. La revista Nature public¨® este mi¨¦rcoles un art¨ªculo de investigadores de DeepMind (Google) donde agilizan un 70% la eficacia de un algoritmo del lenguaje C++ que llevaba d¨¦cadas en uso: ¡°Demostramos c¨®mo la inteligencia artificial puede ir m¨¢s all¨¢ del estado actual del arte al descubrir rutinas hasta ahora desconocidas¡±, dice el art¨ªculo. ¡°Lo que realmente es interesante es que el sistema aprendi¨® a escribir una serie de instrucciones sin que nadie le dijera c¨®mo¡±, explica Armando Solar-Lezama, investigador del MIT (EE UU) que tuvo acceso al art¨ªculo antes de su publicaci¨®n.
¡°Le dijeron qu¨¦ instrucciones pod¨ªa usar y empez¨® a probar combinaciones. Lo ¨²nico que le dec¨ªan es si estaban bien o mal. Solo con eso el sistema pudo inferir cu¨¢les eran las instrucciones que deb¨ªa escribir y conectar para generar el programa¡±, a?ade el experto sobre AlphaDev, el programa creado por DeepMind.
Estos avances prueban que la inteligencia artificial (IA) supera retos complejos. ?Pero hasta d¨®nde puede llegar sin intervenci¨®n humana? El art¨ªculo de Nature explica que plantearon el problema como un juego para la m¨¢quina, que hab¨ªa sido entrenada espec¨ªficamente, y los humanos adem¨¢s guiaban el proceso. Es importante, pero no una revoluci¨®n absoluta. ¡°La gente est¨¢ muy emocionada¡±, sigue Solar-Lezama. ¡°Con estos modelos de IA hemos visto que de pronto pueden hacer cosas que antes se consideraban muy dif¨ªciles. Pero una pregunta que tenemos ahora es ver qu¨¦ pueden hacer bien y qu¨¦ no. Bas¨¢ndonos en eso, ?c¨®mo podemos reimaginar la programaci¨®n para hacerla m¨¢s efectiva? Ya hay herramientas que empiezan a ayudar a los programadores, pero solo como un ayudante¡±.
Es como un aprendiz listo
Esa palabra de ¡°asistente¡± o ¡°ayudante¡± se repite a menudo en conversaciones con programadores y profesores de computaci¨®n, como si la IA fuera un aprendiz espabilado. Aunque la novedad sea impactante, pocos prev¨¦n un terremoto en el oficio. Como explica Brigitte Pientka, profesora de la Universidad McGill de Montreal (Canad¨¢) y coautora de un art¨ªculo que muestra que ChatGPT sacar¨ªa un notable en un curso de introducci¨®n a la programaci¨®n: ¡°ChatGPT puede ser sorprendente y enga?osamente bueno para generar programas cortos. Pero no es muy fiable por ahora. Dir¨ªa que en el futuro ser¨¢ m¨¢s importante poder evaluar y validar programas generados autom¨¢ticamente para garantizar un nivel de seguridad y fiabilidad¡±. Los programadores, por tanto, seguir¨¢n siendo igual de necesarios, quiz¨¢ con un rol distinto, seg¨²n Pientka: ¡°Decir que ya no necesitamos inform¨¢ticos gracias a ChatGPT es como decir que gracias a las calculadoras y Excel no necesitamos matem¨¢ticos ni estad¨ªsticos¡±.
¡°Decir que ya no necesitamos inform¨¢ticos gracias a ChatGPT es como decir que gracias a las calculadoras no necesitamos matem¨¢ticos¡±Brigitte Pientka, Universidad McGill
La misma revista especializada que public¨® en enero sobre el ¡°fin de la programaci¨®n¡±, difundi¨® este fin de semana un art¨ªculo titulado ¡°La IA no ayuda a los programadores¡±, del c¨¦lebre profesor Bertrand Meyer. Como programador, escribe Meyer, le ir¨ªa bien un asistente que le mantuviera a raya y alerta cuando se desv¨ªa. Y sigue: ¡°Pero eso no es lo que obtengo [de una IA]. Obtengo el equivalente de un licenciado engre¨ªdo, inteligente y muy le¨ªdo, tambi¨¦n educado y r¨¢pido para disculparse, pero completamente, y sin remedio, descuidado y poco fiable. De poco me sirve esa supuesta ayuda¡±.
En foros de programadores como Hacker News hay docenas de debates abiertos sobre c¨®mo y cu¨¢nto ayuda ChatGPT y otras aplicaciones m¨¢s espec¨ªficas. La variedad de respuestas es enorme, pero el entusiasmo irremediable de hace unos meses ha deca¨ªdo. Solar-Lezama lo pone en un contexto de una etapa m¨¢s en la historia de la programaci¨®n: ¡°Va a cambiar la programaci¨®n como ya ha cambiado en los ¨²ltimos 20 a?os. Y en los anteriores 20. Hoy es diferente a cuando me gradu¨¦. Tambi¨¦n llegaron lenguajes de programaci¨®n nuevos que permit¨ªan automatizar cosas que la gente hac¨ªa a mano. Era f¨¢cil reusar el c¨®digo que alguien hab¨ªa escrito. Hoy puedo escribir programas extremadamente complejos en Python en 10 minutos que hace una generaci¨®n hubieran tomado meses de un equipo grande¡±, a?ade.
As society becomes more digital, it¡¯s critical to improve the code powering the world's computing.
— Google DeepMind (@DeepMind) June 7, 2023
Today in @Nature, we present AlphaDev, an AI system using reinforcement learning to discover enhanced computer science algorithms.
How does it work? ? https://t.co/2ukGaPey5w pic.twitter.com/dSedrv7eik
No ahorra tanto tiempo
La IA se ha convertido en ese asistente que permite reducir algo el tiempo dedicado al trabajo de programar. Pero no en cantidades extraordinarias: ¡°Al principio me sorprendi¨® descubrir que ChatGPT daba bien c¨®digo del software¡±, dice Daniel Lemire, profesor de la Universidad de Qu¨¦bec (Canad¨¢), que hace trabajos de programaci¨®n avanzados. ¡°Copilot [una herramienta de Microsoft] puede escribir secciones enteras de c¨®digo, como si pudiera leer mi mente. Pero a veces se equivoca. Es dif¨ªcil de medir el tiempo que ahorro quiz¨¢ un 10%. Escribir c¨®digo es una peque?a fracci¨®n de programar, que incluye dise?o, pruebas, evaluaci¨®n comparativa, debates, especificaciones¡±.
¡°Va a cambiar la programaci¨®n como ya ha cambiado en los ¨²ltimos 20 a?os¡±Armando Solar-Lezama, MIT
Por esos motivos, el trabajo de programador parece de momento una apuesta razonable para el futuro. A pesar de los avances en automatizaci¨®n de software hasta ahora, el empleo de programador crece. La ¨²nica certeza es que en el futuro habr¨¢ m¨¢s c¨®digo, en buena parte gracias a la agilidad que permite la IA, pero no por ello menos programadores. ¡°Predigo que seguiremos contratando a m¨¢s personas, al margen de los avances en IA¡±, asegura Lemire. ¡°Los trabajos ser¨¢n diferentes, incluso completamente nuevos, pero no habr¨¢ una ca¨ªda en el corto plazo debido a la inteligencia artificial. Los estudiantes que aspiran a una carrera en la industria del software deben mantener el rumbo¡±, a?ade.
La eficiencia de los programadores, no su sustituci¨®n, ser¨¢ la gran ventaja de esta revoluci¨®n, seg¨²n Stephen Piccolo, profesor de la Universidad Brigham Young (EE UU): ¡°Seguro que algunas empresas contratar¨¢n menos, al menos inicialmente, mientras se entienden las implicaciones de la tecnolog¨ªa. Pero en el futuro pr¨®ximo, esta tecnolog¨ªa har¨¢ que los programadores sean m¨¢s eficientes en lugar de reemplazarlos¡±.
Otra de las aspiraciones repetidas que podr¨ªa permitir a la IA es programar en lenguaje natural: pedir en espa?ol a ChatGPT que escriba el c¨®digo necesario para crear una aplicaci¨®n, una web o un gr¨¢fico. Aunque algo podr¨¢ hacerse, tambi¨¦n tendr¨¢ un alcance limitado por ahora. ¡°Los lenguajes naturales est¨¢n llenos de ambig¨¹edades¡±, dice Emily Morgan, profesora de Ling¨¹¨ªstica en la Universidad de California Davis y coautora de un art¨ªculo sobre c¨®mo estos sistemas encuentran errores inform¨¢ticos. ¡°Al contrario, los lenguajes de programaci¨®n tienen que ser inequ¨ªvocos. Por eso, queremos que nuestros lenguajes de programaci¨®n no sean ambiguos¡±.
Pero s¨ª podr¨¢ pedirse en espa?ol algo que ChatGPT convierta en c¨®digo. El problema luego ser¨¢ buscar o limar los problemas: ¡°Vamos hacia el uso de interfaces de lenguaje natural (como ChatGPT) para ayudar a generar gran parte de nuestro c¨®digo¡±, se?ala Morgan. Y explica: ¡°Puedes pedirle a ChatGPT cosas como ¡®genera una plantilla para un sitio web¡¯, pero seguir¨¢ generando c¨®digo o HTML. Necesitar¨¢ que el lenguaje natural se traduzca a un lenguaje de programaci¨®n inequ¨ªvoco¡±.
Puedes seguir a EL PA?S Tecnolog¨ªa en Facebook y Twitter o apuntarte aqu¨ª para recibir nuestra newsletter semanal.
Tu suscripci¨®n se est¨¢ usando en otro dispositivo
?Quieres a?adir otro usuario a tu suscripci¨®n?
Si contin¨²as leyendo en este dispositivo, no se podr¨¢ leer en el otro.
FlechaTu suscripci¨®n se est¨¢ usando en otro dispositivo y solo puedes acceder a EL PA?S desde un dispositivo a la vez.
Si quieres compartir tu cuenta, cambia tu suscripci¨®n a la modalidad Premium, as¨ª podr¨¢s a?adir otro usuario. Cada uno acceder¨¢ con su propia cuenta de email, lo que os permitir¨¢ personalizar vuestra experiencia en EL PA?S.
En el caso de no saber qui¨¦n est¨¢ usando tu cuenta, te recomendamos cambiar tu contrase?a aqu¨ª.
Si decides continuar compartiendo tu cuenta, este mensaje se mostrar¨¢ en tu dispositivo y en el de la otra persona que est¨¢ usando tu cuenta de forma indefinida, afectando a tu experiencia de lectura. Puedes consultar aqu¨ª los t¨¦rminos y condiciones de la suscripci¨®n digital.