El mejor programa
Los campeones latinoamericanos en la ICPC, la principal competencia global de programación, cuentan su experiencia en el mundial de Rusia, pandemia de por medio. El futuro de los chicos en los próximos certámenes, su formación académica y la puja del mercado laboral.
Lautaro, Carlos e Ivo trabajan en equipo. Se conocieron cuando cursaban la secundaria, en olimpíadas y campus de entrenamiento, y ahora les llegó la consagración. Son los campeones de Latinoamérica. Los tres estudiantes de la Facultad de Ciencias Exactas y Naturales de la UBA quedaron en el primer lugar de la región en lo que llaman el «mundial de programación» –en rigor, la ICPC, International Collegiate Programming Contest, la principal competencia global de programadores universitarios–, disputado en Moscú durante la primera semana de octubre. Y van por más.
El equipo, que en Rusia representó a la Universidad de Buenos Aires, quedó en el puesto 22 entre 117 participantes de todo el mundo y logró la mejor performance entre los latinoamericanos, posición que la UBA no obtenía desde 2015.
Carlos Soto tiene 20 años y es de Corrientes. Ivo Pajor, de 21, es chaqueño, de Resistencia. Ambos estudian Ciencias de la Computación en Exactas UBA. Lautaro Lasorsa, de La Matanza, tiene 21 y este año se pasó de Ciencias Matemáticas a Ciencias de Datos. En Moscú los acompañó su entrenador, Agustín Gutiérrez, dos veces campeón latinoamericano en la ICPC y ex docente de la Facultad.
“La competencia consiste en resolver una serie de 15 problemas –explica Agustín–, que son un montón, más que otros años, y que se presentan todos juntos, sin discernir cuáles son los que suponen mayor dificultad. Por eso, la estrategia inicial es descubrir los más sencillos, porque todos entregan la misma puntuación. En cinco horas, el equipo que más problemas resuelve, gana. Lo central es el trabajo en equipo, cómo se reparten los problemas y cómo se coordina esa dinámica en tres computadoras distintas, además de la creatividad y las habilidades propias de cada programador. Ser primeros en la región es como ganar la Libertadores”, bromea.
Ocho problemas resolvieron los alumnos de Exactas UBA para coronarse en el primer puesto regional, en una competencia muy compleja en la que dos acertijos, los más intrincados, no pudieron ser resueltos por ningún equipo. Del certamen participaron otros dos grupos argentinos: uno de la Facultad de Matemática, Astronomía, Física y Computación de la Universidad Nacional de Córdoba y otro la Universidad Nacional del Sur, de Bahía Blanca. El título de campeón regional se otorga desde el año 2000 y, desde entonces, los equipos argentinos lo ganaron 13 veces (diez de ellas, la UBA), con un décimo puesto en la tabla general -el más alto-, en 2002.
En las competencias de programación, las respuestas a los problemas no son un número, sino un programa. “Hay una consigna. Por ejemplo: cómo optimizar cierto proceso para fabricar algo usando una cantidad mínima de material. La tarea es crear un programa que resuelva todas las situaciones posibles que presenta ese problema”, aclara el entrenador.
Ahora bien, ¿cuánto de las nociones y técnicas aprendidas en las currículas de Computación, Matemática o Datos se aplica en estas competencias de programación? “Bastante. Cada problema es como un ejercicio de programación de los que se pueden tomar en exámenes de la facultad. Esto se estudia en las materias de algoritmos, básicamente, en teoría de grafos –puntualiza Gutiérrez–. Calcular caminos mínimos, por citar el ejemplo más sencillo, es un problema habitual en estas competencias. Después, claro, esto termina funcionando como un deporte, y hay mucho entrenamiento, mucha práctica de resolución de problemas. La carrera de Datos se lleva muy bien con este tipo de competencias, porque te enfoca en la resolución mediante técnicas reales de problemas reales, que son los que busca resolver la industria”.
Para Lautaro, que este año dio el salto a la nueva Licenciatura de Datos, “Algoritmos y Estructuras de Datos I, II y III son la clave, aunque también sirve lo que se ve en Álgebra e incluso en Álgebra Lineal Computacional, porque es habitual que haya algún problema de teoría de números o de geometría computacional. Por supuesto, en la carrera el enfoque es más teórico, y en las competencias exploramos un enfoque más práctico. El resto es entrenamiento”.
Llegar a Moscú no fue sencillo, pandemia mediante. Los chicos habían clasificado en 2019, y la competencia, prevista inicialmente para junio de 2020, se postergó una y otra vez. Un sponsor privado aportó el dinero para los pasajes, y el equipo recibió a tiempo las dos dosis de la vacuna anti COVID, requisito de la organización. En todo caso, además del triunfo a nivel regional y un paseo por la Plaza Roja, la pandemia les dio a los campeones una buena noticia: si bien sólo se puede competir en dos ediciones de la ICPC, ésta no se computará por la crisis sanitaria.
“Así que nos quedarían dos mundiales más por delante. Y la posibilidad de competir está atada a que continuemos con nuestros estudios universitarios”, dice Lautaro. Él y sus compañeros tienen presente la fuerte salida laboral que ofrecen las carreras que cursan y saben que las empresas de software y otras apuntan sus radares a captar a los jóvenes talentos que surgen de estas competencias. Eso no los desvela. “Estamos muy interesados –remarca– en concluir la carrera. En Datos, y con las correlatividades, yo podría obtener el título intermedio en el primer cuatrimestre de 2022, y después me quedarían dos años más”.
“La fuerte demanda de programadores es una realidad global –agrega Gutiérrez–, y eso en la facultad se ve. Hay chicos que empiezan a trabajar muy temprano y quizás no se focalizan tanto en la carrera. El perfil de los alumnos de las competencias de programación es muy variado: hay quienes se van a la industria, pero varios ex competidores exitosos hoy son profesores de la Facultad, y están estos chicos que, afortunadamente, están bastante enfocados en lo académico”.