“Hay que combinar lenguajes de programación y aprovechar lo mejor de cada uno”

“Hay que combinar lenguajes de programación y aprovechar lo mejor de cada uno”

Con tan solo 24 años, Siro Moreno es ingeniero aeroespacial e instructor de Python, lenguaje que ha combinado con otros como Fortran para desarrollar sus primeros proyectos. Hablamos con este joven ponente del evento PyData en España.

BBVAOpen4U
|
05 Mayo. 2016

¿Cómo puede Python ayudar al trabajo de un ingeniero aeroespacial?

¡Existen innumerables maneras! Por ejemplo, permite automatizar muchas tareas tanto en la fase de diseño como en el análisis de los datos de ensayos. Existen muchas herramientas con interfaces muy cómodas con Python. Es absurdo desperdiciar un ingeniero poniéndole a hacer tareas repetitivas, cuando sabiendo programar es posible automatizar prácticamente cualquier cosa. Mediante Python se puede trabajar incluso con las odiadas tablas de Excel de manera automática.

¿Y cómo puede ayudar a un científico de datos?

Python tiene una gran popularidad en la ciencia en general porque hay muchos científicos que se ven obligados a programar aunque ellos no sean ni quieran ser programadores. Sin embargo, existen una gran cantidad de paquetes científicos que les ayudan a cualquier cosa que necesiten, desde los típicos Numpy y Matplotlib, que casi todo el mundo usa, a paquetes más específicos, como Poliastro, un excelente módulo de mecánica orbital. Los científicos de datos, en concreto, tienen una gran cantidad de paquetes especializados a su disposición.

Además, el formato de Jupyter Notebook creo que va a ser una gran revolución en el mundo de la publicación científica, debido a que permite leer un artículo científico a la vez que se interactúa con los datos y se reproduce el procedimiento mismo que los autores originales realizaron. Creo que el proceso de revisión por pares va mejorar radicalmente mediante esta herramienta.

¿Por qué Python se basa en la legibilidad y la transparencia?

Probablemente, porque eran los principios que tenía en mente su creador, Guido van Rossum, y que más adelante Tim Peters redactó de manera explícita en lo que se conoce como “el Zen de Python”. Esto atrajo a programadores con este tipo de objetivos y formó la comunidad de Python original.

¿Qué diferencias existen entre Fortran y Python?

Son dos herramientas diferentes, como un martillo y un destornillador. Fortran es un lenguaje más difícil de leer y más largo de escribir, pero es extremadamente veloz. En Python se programa muchísimo más rápido y es mucho más claro de leer, pero es necesario usar de manera adecuada bibliotecas aceleradoras para acercarse a velocidades parecidas, y no siempre es posible.

Lo mejor es combinar ambos lenguajes, aprovechando lo mejor de cada uno. Por ejemplo, realizando en Fortran los algoritmos más pesados matemáticamente, y manejando el flujo del programa desde Python.

¿Cómo te ha ayudado Python en tu Proyecto Final de Estudios?

Mi Proyecto de Final de Carrera consistió en el diseño de una aeronave no tripulada, específicamente adaptada para volar en Marte como ayuda a los proyectos de exploración robótica. He usado Python prácticamente para todo. Por ejemplo, existe un conocido programa llamado Xfoil, escrito en Fortran, que permite calcular las características aerodinámicas de un perfil de ala. Usando un algoritmo genético que escribí en Python, usé este programa para calcular de manera automática un perfil óptimo para mis condiciones de vuelo.

También usé Python para generar un modelo matemático de la atmósfera marciana, implementar un modelo matemático fiable de hélice, calcular distribuciones de esfuerzos, calcular datos derivados como el volumen y el peso a partir de la geometría, o calcular las actuaciones integrales del avión completo, como la autonomía y el rango dependiendo de la velocidad de vuelo.

¿Por qué consideras importante que un evento como PyData se celebre en España?

En mi opinión, en España tenemos una gran falta de autoestima como potencia tecnológica. Este tipo de eventos permite que gran cantidad de personas, con el factor común de Python se relacionen y conozcan. Los más profesionales se dan a conocer y se dan cuenta de que no están solos, y para los más novatos, es una gran fuente de inspiración y aprendizaje. También permite a los patrocinadores buscar jóvenes talentos, de lo que también se benefician ellos al encontrar trabajos atractivos.

Por eso creo que es muy beneficioso tener este tipo de conferencias, no solo de Python sino de cualquier cosa técnica. Creo que nos podría ayudar a evitar la desastrosa fuga de cerebros que sufrimos dándoles metas y objetivos dentro del país.

Síguenos en @BBVAAPIMarket