Programar será cosa de niños

Un nuevo sistema de códigos se propone facilitar el trabajo de los desarrolladores con el uso de librerías y de la inteligencia artificial

Bastantes años atrás, en los inicios de Microsoft en el mundo de los videojuegos, la compañía fundada por Bill Gates tuvo una gran idea para facilitar el desarrollo de videojuegos para su Xbox. A través de una plataforma compartida con los programadores de estudios externos, creó una librería con recursos que podían utilizar. Así, si un equipo estaba trabajando en un juego de carreras de coches, podía utilizar recursos comunes, como el comportamiento de dos vehículos ante un choque frontal, etc. Todo ello aceleraba el proceso de creación del videojuego.

Ante la ausencia de manos y de profesionales formados para programar, otra compañía, Globant, se ha propuesto revolucionar la manera de crear software. Los 12.500 trabajadores de esta firma tecnológica trabajan también para el mundo de los videojuegos con Electronic Arts, y para el banco Santander, Rockwell Automation o Google, entre otros clientes. Lo llaman Codificación aumentada y se presentó días atrás en un evento online que contó -como invitado estrella- con Steve Wozniak, cofundador de Apple.

La solución bebe de las últimas innovaciones de inteligencia artificial y se propone revolucionar el futuro de la programación tal y como la entendemos en la actualidad. “Estamos llevando el diseño de software a un nuevo nivel. Augmented Coding dará forma al futuro del trabajo ya que, a través del uso de inteligencia artificial, permite que los ingenieros de software trabajen de manera más rápida y creativa”, explicó en este evento Martín Migoya, CEO y cofundador de Globant.

Sobre el funcionamiento de estas herramientas, nos explican los portavoces de la compañía que un desarrollador puede utilizar el lenguaje natural para buscar un fragmento de código o una funcionalidad de código. Exactamente igual como si estuviera buscando en Google o en cualquier otro buscador información sobre cualquier otro asunto, sea una receta de cocina o un país. Esta plataforma ofrece a continuación diferentes opciones de recursos de códigos de programación que puede utilizar de inmediato para ese software en desarrollo.

Los desarrolladores también pueden utilizar su propio código como término de búsqueda y la herramienta le facilitará otros códigos que estén relacionados. Según un estudio llevado a cabo por Globant, el rendimiento aumentó en más de un 50% entre los desarrolladores en formación y en equipos han registrado un aumento de la productividad un 30% superior.

El sistema Augmented Coding acorta drásticamente la curva de aprendizaje para nuevos desarrolladores sin experiencia, al mismo tiempo que ayuda a personas más experimentadas que trabajan en grandes bases de código. Explican desde Globant que Augmented Coding puede ser utilizada para impulsar la incorporación de nuevas personas, capacitándolas y permitiendo que rápidamente incorporen nuevas habilidades y lenguajes de programación. A su vez, permite una comprensión clara del código heredado sin tener que pasar cientos de horas revisándolo manualmente. “Los desarrolladores podrán trabajar de forma más rápida y creativa, enfocando su atención a la programación de soluciones más elaboradas”, explicó Haldo Sponton, Head of AI Development en Globant, en el evento de presentación.

Cualquiera que haya programado o intentado programar algo es consciente de que documentar el código es una de las tareas más tediosas. Con este sistema, de codificación aumentada se quiere liberar a los ingenieros y desarrolladores de esas labores para que puedan centrarse en el uso de la creatividad para resolver problemas técnicos. Así, este avance podemos interpretarlo como un paso hacia la automatización de la programación.

La compañía creadora de este nuevo modelo se ha propuesto predicar con el ejemplo. Sus portavoces explican que ya están usando estas herramientas en proyectos concretos. Y citan como ejemplo la creación de una nueva plataforma de software para “una empresa líder en productos de consumo online”. “Los desarrolladores utilizaron la herramienta para buscar y encontrar funciones específicas”, añaden. De esta manera, un desarrollador buscó "comprobar si la oración se puede leer al revés ". La herramienta mostró entonces una funcionalidad llamada isPalindrome. Aunque no teclearon directamente la palabra palíndromo, la herramienta, por esas asociaciones de ideas del lenguaje natural, entendió que era esto lo que estaban necesitando. Lo mismo sucedió cuando el desarrollador buscó "finalizar la compra" y la herramienta mostró la funcionalidad CheckOut.