Desarrollador Cubano de Python: Leodanis Pozo Ramos

Continuamos con nuestra serie de entrevistas dedicadas a dar a conocer a los desarrolladores cubanos que emplean Python como lenguaje de programación, esta vez conversamos con Leodanis Pozo Ramos, desarrollador autodidacta con varios años de experiencia en la programación con Python y en el mundo del Software Libre y el Open Source.

P. ¿Cuál es tu formación académica y/o profesional?

R. Soy graduado de Ingeniería Industrial con Especialización en Organización de Empresas, así dice textualmente el título expedido por la Universidad Técnica de la Habana “José Antonio Hecheverría” en 2005. Tengo un Máster en Ingeniería Industrial y Gestión de la Calidad de la Universidad “Oscar Lucero Moya” de la Ciudad de Holguín donde vivo actualmente. Soy totalmente autodidacta en lo referente a mi formación como programador o desarrollador.

P. ¿Cómo y cuándo llegaste al mundo del Sofware Libre y del Open Source?

R. A pesar de que desde que comencé la universidad siempre me interesé por la informática y por la programación, nunca tuve la oportunidad, en aquel entonces, de acceder a Software Libre u Open Source de ningún tipo, sabía que por ahí por algún lugar existía un Sistema Operativo que se llamaba Linux o algo así, pero nada más. A finales del 2007 comencé a indagar sobre el tema y descubrí a Knoppix, una distribución que se podía ejecutarse desde un CD sin modificar nada en el disco duro de mi PC (algo común en el mundo GNU/Linux, pero totalmente nuevo para mi), era la primera vez que veía frente a mi un escritorio libre. Pasó algún tiempo y entre finales del 2009 y mediados del 2010, por suerte para mi, puede descargar e instalar en el ordenador personal que usaba en mi lugar de trabajo, la versión LTS de Ubuntu, la 10.04 que muchos por ahí recordarán como una excelente distro. Desde ese momento fui pasando de versión en versión, siempre instaladas en Dual Boot con Windows en su versión de moda. Luego llegó Zorin OS, lo mejor que había probado hasta ese momento, debo decirlo, y finalmente Linux Mint, que es mi distro por defecto desde el 2014 cuando me enamoré perdidamente de Cinnamon al chocar de frente contra Unity (muchos sabrán de lo que estoy hablando). Fue entonces cuando decidí eliminar a Windows de mi ordenador y usar solo Linux. GNU/Linux me abrió un universo de conocimientos y de posibilidades que nunca antes había experimentado en sistemas Windows, fue sin dudas un punto de inflexión en mi vida personal y profesional. A partir de ahí, comencé a integrarme a la Comunidad Cubana de Software Libre, al Grupo de Usuarios de Tecnologías Libres (GUTL), a los FLISoL y mucho más.

P. ¿Cuándo y cómo decidiste comenzar a programar con Python? ¿Por qué Python?

R. Eso lo recuerdo bastante bien, fue en el verano del 2014. Como ya he dicho, no tengo formación en Ciencias de la Computación, al menos no formal, pero siempre me atrajo la programación y las computadoras. A mediados de 2013, casi sin proponérmelo, había comenzados a escribir scripts para automatizar tareas de SysAdmin usando el lenguaje Bash, escribí muchísimo código en este lenguaje, por ahí tengo casi una centena de scripts guardados en mi disco duro. Esto me sirvió de mucho, aprendí muchísimas cosas sobre la “misteriosa” consola de Linux, cosas que hoy utilizo a diario. Gracias a Bash descubrí que la programación era lo que más me gustaba hacer, me resultaba fascinante enfrentarme a un problema de programación y luego de algunas horas (a veces días) lograr que todo funcionara es algo sin comparación, una satisfacción enorme, una sensación de realización, de logro, de poder, no sé, es difícil de explicar, los programadores sabrán de lo que estoy hablando. En ese momento me dije: tengo que aprender a programar, pero a programar en serio. Fue entonces que me senté a pensar en el lenguaje que me serviría de herramienta para lograr mi objetivo: aprender a programar. Comencé con C++, pero me resultaba bien complejo de aprender y debía dedicarle mucho tiempo; luego vino Java, que no me gustó para nada, la verdad. Java me parece un lenguaje demasiado rígido y eso no me agrada. Algunos colegas de la comunidad acá en Holguín me recomendaron que le diera una probada a Python y comencé leyéndome un libro estupendo: “Aprenda a Pensar Como un Programador con Pythonde Allen Downey et al. Eso fue en agosto del 2014, desde ese momento no ha pasado un día en que no haya leído al menos una página de algún libro, artículo, blog post, etc. sobre Python. Debo decir que también he escrito y leído bastante código en todo este tiempo.

P. ¿Qué herramientas no pueden faltar en tu entorno de desarrollo (editores, IDEs, librerías, otros…)?

R. Para comenzar creo que SublimeText, un editor espectacular, con él hago lo rápido, lo que no lleva mucho protocolo. Para Proyectos más “serios” uso PyCharm, creo que no existe nada mejor para programar con Python, y mira que he probado cosas, Eclipse-PyDev, Anaconda-Spyder, Eric, IDEL…, pero nada como PyCharm. Últimamente le he dado un voto de confianza a Visual Studio Code y me parece un editor genial, definitivamente queda dentro de mis herramientas preferidas. También están por ahí IPython, Git, Qt Designer, Pylint, Virtualenv, Pip, entre otros.

En cuanto a librerías, creo que lo que más uso es PyQt5, SQLAlchemy, Django, Pytest, Kivy y por supuesto, la librería estándar de Python, donde está casi todo lo que en muchas ocasiones necesitamos, bueno o malo, pero está.

P. ¿En qué proyectos de desarrollo con Python has participado y/o participas y qué ideas tienes para el futuro (propios, colaboras…)?

R. En la actualidad me ocupo del desarrollo y mantenimiento del convertidor de videos VideoMorph, junto a un equipo de colegas. Liberamos recientemente la versión 1.2 en el marco del CubaConf 2017. VideoMorph es un transcodificador de videos, escrito en Python 3 y que emplea la librería Ffmpeg (o Avconv en su defecto o ambas) como “Back end” para las tareas de conversión y PyQt5 para la interfaz gráfica de usuarios.

Por otro lado, soy fundador del equipo que hace posible la existencia de este Blog, al cual he aportado, modestamente, algo de lo que he aprendido en estos años.

Colaboro además, con algunos proyectos en GitHub.com y en mis ratos libres aporto mi granito de arena a la comunidad Python en StackOverflow.

En el futuro cercano debo continuar con el desarrollo y mantenimiento de VideoMorph, aunque tengo algunos proyectos nuevos y no tan nuevos en el tintero. Ya veremos.

P. ¿Cuáles serían tus consejos para los desarrolladores cubanos y foráneos que se inician en Python?

R. Es una pregunta bien seria…, creo que lo primero sería que traten de no ir por ahí escribiendo código a lo loco, hoy con un lenguaje, mañana con otro, hay que escoger un lenguaje y dedicarse a él, para llegar a dominarlo a la perfección. Por supuesto, el mejor lenguaje para eso es Python (risas). En segundo lugar, comiencen con Python 3.x, si luego se ven obligados a usar Python 2.x, solo tendrán que aprender las diferencias, pero ya van con ventaja. En tercer lugar, escojan sus herramientas y domínenlas, para que puedan llegar a ser productivos y eficientes. Recuerden que el artesano crea mejores obras cuando su herramienta se ha adaptado perfectamente a su mano.

Logout

Ok, y hasta aquí la entrevista, agradecemos nuevamente a nuestro colega Leodanis por su tiempo y como siempre, esperamos que estos últimos consejos sean de utilidad a muchos que se inician en la programación y en específico en el empleo de Python. Si este artículo te resultó interesante, compártelo para que otros también puedan acceder a él. Déjanos tus comentarios y podremos mejorar nuestros contenidos.

Gracias de antemano,

lpozo