Darío Martínez es un chico de 15 años de Valencia. Hace un año, no sabía programar. Hoy, es el ganador de la última Olimpiada Informática Española, un concurso promovido por la Fundación Aula Escola Europea de Barcelona que desde 1997 se celebra buscando las cabezas más prometedoras de la programación informática centrado en resolución algorítmica.
"Empecé a programar el verano pasado, tras el confinamiento. Un poco por su posible uso para hacer cosas relacionadas con matemáticas y un poco por aburrimiento, también me animaron unos amigos que ya sabían programar, y me ayudaron un poco a aprender Python", nos cuenta.
Que Darío no supiera programar hasta hace relativamente poco es un patrón común en los candidatos que se presentan a la OIE. Participan en ella cientos de estudiantes de educación secundaria, bachillerato y grado medio del país cada año que se van cribando por medio de problemas con enunciados que hacen entrar en Matrix a cualquier muggle de la programación y la algoritmia.
A la fase final llegaron 24 participantes que tuvieron que resolver cinco de estos problemas en tres horas y media. De ahí salieron los cuatro ganadores o medallistas de oro de este año, que representarán a España en la Olimpiada Internacional, este año online por causas obvias. En Xataka hemos hablado con estos cuatro primeros clasificados para que nos cuenten cómo ven desde sus ojos pre-universitarios el futuro de la programación, el desarrollo, y cómo se han formado.
Aprender a programar con recursos de internet es posible (o al menos ellos han podido)
Bernat Pagès fue el subcampeón de esta edición. De 17 años y de Girona, Bernat sí que empezó a juguetear con Scratch desde pequeño. "Mis padres estudiaron ingeniería ambos y eso me fomentó empezar desde tan joven", nos dice. Sin embargo, en lo que respecta a la programación competitiva -en la que se pone el foco en la resolución de problemas, con lenguajes específicos, y también se valoran parámetros como el uso de la memoria y el tiempo de ejecución- también comenzó hace menos de un año, recurriendo a webs que promueve la propia OIE para entrenar, como Codeforces o Jutge.org, que recomiendan en sus manuales de entrenamiento.
Un patrón similar al de Óscar Garries, de 17 años y natural de Barcelona; tercer clasificado. Garries nos cuenta que empezó a programar hace dos años y medio "porque quería hacer algo de dinero". De hecho, afirma que lo que más valora de la programación es "el poder crear lo que te apetezca siempre que tengas las ganas y el tiempo".
En su caso, recurrió a cursos de plataformas de pago de bajo coste como Coursera o Udemy... "Pero la mayoría de cosas las he aprendido al final mirando Youtube o la documentación de los lenguajes", afirma.
Joan Cintas es el cuarto clasificado y genio precoz con el que hemos hablado, de 17 años y formado en la Aula Escuela Europea -promotora de la Olimpiada- donde sí que recibió cursos de programación desde (todavía) más joven. "En segundo de la ESO empezamos a programar con C++. Inmediatamente me gustó mucho la idea de la programación y de poder resolver esos problemas complejos y empecé a trabajar más por mi cuenta, ya fuera con webs o con clases presenciales que daba mi escuela con tal de preparar los diferentes concursos de programación que encontramos en España", dice Joan, que no obstante afirma que también ha acudido a webs para aprender extra de forma autodidacta.
Adolescentes enamorados de cómo los algoritmos resuelven problemas
Un patrón común que nos hemos encontrado al charlar con ellos es que en la interconexión necesaria entre matemáticas y programación, para estos chicos la primera tiene un peso si cabe más central.
El caso más claro es el de Darío, que nos dice que lo que más le motiva de la programación es "su relación con las matemáticas y por el 'reto' que supone hacer algoritmos eficientes para solventar problemas relacionados con estas. No me interesa mucho el aprender nuevos lenguajes o saber cómo funcionan internamente, pero me gusta mucho la algoritmia y la resolución de problemas".
Esta pasión por los algoritmos también la muestra Bernat: "Personalmente, lo que me gusta más de la programación es la parte matemática que hay detrás. Es decir, el hecho de pensar un algoritmo que resuelva el problema de la forma más óptima posible".
Joan también alude a cómo la programación resuelve problemas inabarcables en poco tiempo, y remarca que, desde su punto de vista, "con un ordenador siempre podremos encontrar un método para resolverlos de forma eficiente", señala.
Déjate de Phyton o Rust: entre los olímpicos de la programación gana C++
Un condicionante que tiene la Olimpiada en España es que los lenguajes permitidos para resolver los problemas se limitan a C++, Python y Java, un trío que en la Olimpiada principal se reduce solo al primero, fomentado específicamente por la organización.
Esta inclinación hacia C++ también se marca de forma clara entre los medallistas de la Olimpiada. Todos lo marcan como su sintaxis de referencia. El lenguaje creado por Bjarne Stroustrup como evolución del mítico C sigue manteniendo una importante cuota e importancia, aunque cada vez el propio Python o alternativas más novedosas como Rust vayan ganando peso.
En la OIE se permite usar Java, Phyton y C++ únicamente
"Aprendí con Python y me gustó bastante, me parece muy buen lenguaje para empezar, pero el hecho de que sea mucho más lento y la falta de estructuras de datos como set o priority_queue me hacen preferir C++", dice Darío al respecto.
"Actualmente sé 3 lenguajes de programación: C++, Python y Java. Java es el que menos me gusta de lejos, es muy largo de escribir y no es tan bueno en temas de tiempo de computación como C++. Aunque Python me gusta mucho por su sencillez y la velocidad a la que uno puede escribir el código, C++ es el primer lenguaje que aprendí y el que utilizo en concursos, ya que es el que tengo más soltura y, aunque es largo de escribir, tiene un montón de estructuras ya hechas y listas para que las uses", cuenta por su parte Joan, el cuarto clasificado.
¿Y el futuro? Así se ven a ellos mismos y a la tecnología en unos años
Preguntar sobre el futuro a alguien que lo tiene todavía todo por delante es como lanzar un dado al aire. Lógicamente, la mayoría tienen en su mira estudiar matemáticas y programación, pero teniendo en cuenta que aún les queda tiempo para elegir carrera, sus opciones se abren.
Óscar Garries, el tercer clasificado, es el más pragmático: "Me gustaría estudiar mates o datos, pero dudo que me llegue la nota. Lo que más me motiva en cualquier caso es el campo del deep learning. Creo que todo lo relacionado con IA va a ser lo que más evolucione en el futuro, y lo que más me gustaría seria trabajar en un proyecto como el de DeepMind de Google", la división de Alphabet que explora la IA profunda y que copó titulares hace unos años después de que su programa AlphaGo derrotara a un jugador humano profesional de Go por primera vez.
Bernat Pagès, el segundo clasificado, es uno de los que apuntan directamente a las matemáticas. "Tengo muy claro que quiero estudiar matemáticas en la universidad, si las notas de corte me lo permiten. Aquí en Cataluña hay un programa llamado CFIS que te permite estudiar dos grados simultáneamente, donde podría estudiar Matemáticas e Ingeniería de Datos. Yo creo que la Big Data, o dicho de otro modo el análisis masivo de datos, va a ser un elemento clave en el desarrollo informático", dice. Entre sus aspiraciones, están dedicarse plenamente e la investigación matemática o, en su defecto, trabajar para una BigTech.
Menos claro lo tiene Joan, que confiesa que aún no ha decidido que estudiar, pero sí que le gustaría dedicarse al mundo de la tecnología. Campos como la IA o la Realidad Aumentada son algunos de los más le llaman la atención. "En el caso que me dedicase a la informática y tecnología, me gustaría trabajar en temas de desarrollo de hardware y software específico, ya que creo que es un campo muy interesante y el trabajo en equipo permite interacciones y transmisión de ideas muy importantes, y el partir de una idea hasta un producto final definido me parece muy entretenido", dice cuando le pedimos que se imagine dentro de unos años.
Darío, el ganador de este año, también tira de cabeza hacia las matemáticas y en concreto el desarrollo de algoritmos. "Dentro de unos años espero haber acabado ya mis estudios y poder trabajar en alguna Universidad investigando en algún campo de las matemáticas que me guste, probablemente algo relacionado con grafos o combinatoria, supongo que no lo tendré claro hasta haber estudiado cosas más avanzados de los diferentes campos", cuenta, aunque remarca que no lo tiene muy claro... "Porque aún me quedan dos años para elegir qué estudiar en la Universidad".
¿Y no hay ninguna chica?
El cuarteto de jóvenes avezados quizá representa también cómo en la programación aún queda terreno que ganar para conseguir una mayor presencia femenina. Pero ya está en camino.
En las Olimpiadas del año pasado una de las ganadoras fue Blanca Huergo, la primera mujer en lograr una de las cuatro medallas de oro.
Blanca está ya estudiando en Oxford Matemáticas y Ciencias de la Computación y, mientras, ha impulsado desde entonces la celebración de una Olimpiada Informática Femenina con la que fomentar la participación de las más jóvenes. En la edición de este año entre los 24 finalistas había 4 chicas, la mayor presencia de la historia del concurso.
Ver 33 comentarios