Revista Cartográfica 109 | 2024 | Reseña
ISSN (impresa) 0080-2085 | ISSN (en línea) 2663-3981
DOI: https://doi.org/10.35424/rcarto.i109.5857
Este es un artículo de acceso abierto bajo la licencia CC BY-NC-SA 4.0
Introducción a Python para geociencias. Universidad Nacional de Colombia, Sede Bogotá, Facultad de Ciencias, 224 pp. ISBN: 978-958-505-484-4 (digital). https://repositorio.unal.edu.co/handle/unal/85961
Villie Morocho1
Para describir de forma adecuada un lenguaje de programación, vale partir de un antecedente que seguramente muchos de los lectores actuales no tengan presente, pero allá en los últimos años de secundaria, en la década de los ochenta empezábamos a aprender BASIC (Beginner’s All-purpose Symbolic Instruction Code) un lenguaje creado en los años sesentas, por John G. Kemeny y Thomas E. Kurtz en el Dartmouth College. El propósito principal de su diseño era la sencillez y facilidad de aprender para quienes empezábamos a entender la lógica de programación. Sin embargo, en poco tiempo, y al llegar a la universidad en los noventas, empezaron a utilizar otros lenguajes más poderosos, pero a la vez más complejos de aprender, Fortran, COBOL, PASCAL y luego C o C++. Por otra parte, ABC nacía también en los ochentas, desarrollado en el Centrum Wiskunde & Informatica (CWI) en los Países Bajos por Leo Geurts, Lambert Meertens y Steven Pemberton. Creado para ser un lenguaje educativo y de prototipado, más avanzado que BASIC, y destinado a reemplazarlo. Enfocado en ser muy fácil de aprender y usar, pero más estructurado y potente.
Entonces, a finales de los años ochentas se venía gestando un nuevo lenguaje, Guido van Rossum, un programador neerlandés, trabajaba en el Centro de Matemática y Computación de los Países Bajos (CWI) (Venners, 2003). Van Rossum había trabajado en el lenguaje de programación ABC y quería crear un lenguaje más avanzado y flexible. Además, su creador estaba convencido que la extensibilidad era algo muy importante en Python, por lo que debería funcionar en UNIX, Windows y Macintosh. Así nace Python como un lenguaje de programación de alto nivel, interpretado y de propósito general que se destaca por su simplicidad y legibilidad. Según algunos datos históricos, en febrero de 1991 fue lanzado Python 0.9.0 versión ya incluía características como manejo de excepciones, funciones y los módulos, que son partes fundamentales del lenguaje. En 1994 la versión 1.0 introducía herramientas importantes como funciones de orden superior. La popularidad de Python comenzó a crecer en la comunidad de desarrolladores. En el 2000 se creó la Python Software Foundation (PSF), una organización sin fines de lucro dedicada a promover, proteger y avanzar en Python. Este mismo año se lanzó Python 2.0, que introdujo características como la gestión automática de la memoria, limpiando objetos que ya no eran accesibles, incluso aquellos involucrados en ciclos de referencia. Las versiones 3.0 en el año 2008, introducía mejoras significativas en la legibilidad y coherencia, pero perdía compatibilidad con versiones anteriores. A partir del 2010 la popularidad del lenguaje es clara y mucho debe a su amplia gama de aplicaciones, que va desde desarrollo Web hasta ciencia de datos y aprendizaje automático. Desde enero de 2020, Python 3 se estableció como el estándar al finalizar el soporte para las versiones anteriores.
Una de las ventajas mencionadas sobre aprender programación en Python para la generación de gráficas de alta calidad en geociencias es la disponibilidad de paquetes especializados como Matplotlib, Cartopy y PyGMT. Estos paquetes permiten crear visualizaciones detalladas y precisas, adaptadas específicamente a las necesidades de las ciencias de la Tierra. Además, se destaca la importancia de incluir toda la información necesaria en las figuras para garantizar su comprensión, lo cual es fundamental en campos como las geociencias donde la representación visual de los datos es crucial. Por lo tanto, aprender a utilizar Python para la generación de gráficas en geociencias proporciona
a los usuarios herramientas poderosas y especializadas que les permiten crear representaciones visuales de alta calidad, claras y precisas para comunicar efectivamente los resultados de sus investigaciones.
En el libro Introducción a Python para geociencias (Prieto Gómez, 2024) se presenta un manual práctico para entender fácilmente el uso de las funciones básicas y formas de programación. Además, en los capítulos finales, se presentan funciones específicas orientadas a las geociencias, proporcionando así una ventaja adicional para los profesionales del área.
Capítulo 1. Software e instalación : Explora el software necesario para trabajar con Python, incluyendo detalles sobre la instalación del software requerido.
Capítulo 2. Primeros pasos en Python: Introduce los conceptos básicos de Python, proporcionando una base sólida para la programación en este campo. Incluye explícitamente las funciones del módulo math.
Capítulo 3. Interacción con Python: aborda la interacción con Python utilizando algo más de complejidad con las sentencias clásicas de For, While loops y condiciones if.
Capítulo 4. Funciones del usuario: El objetivo principal es introducir al lector en la fragmentación del código a través de funciones y módulos a la programación con Python. Los problemas propuestos proporcionan ideas para resolver problemas que se pueden aplicar a geociencias.
Capítulo 5. Arreglos: vectores y matrices: En el análisis de información para geocientíficos, a menudo se va a encontrar con información que deberá ser representada de manera multidimensional. Este capítulo demuestra la forma de manejar estos datos y así aporta a la gestión de este tipo de información.
Capítulo 6. Lectura y generación de archivos: Se centra en la manipulación de archivos de datos en Python, abordando técnicas para leer y guardar archivos de texto. Ejemplos prácticos podrían incluir la lectura de datos para geociencias desde archivos y la generación de nuevos archivos con resultados de análisis.
Capítulo 7. Gráficas de datos: En este capítulo, se aborda la generación de gráficas de datos utilizando Python para geociencias. Se menciona la importancia de incluir toda la información necesaria en las figuras para que sean comprensibles. Se recomienda el uso de paquetes como Matplotlib para crear visualizaciones de alta calidad.
Capítulo 8. Mapas con Cartopy y PyGMT: Aquí se explora la creación de mapas utilizando los paquetes Cartopy y PyGMT en Python. Se plantean problemas específicos, como la representación de estaciones meteorológicas en un mapa global y la visualización de datos espaciales, como los terremotos en Japón desde 2018. Se enfatiza la importancia de elegir el paquete que mejor se adapte a las necesidades del usuario.
Capítulo 9. Números complejos: Este capítulo introduce el concepto de números complejos y su aplicación en geociencias. Aunque no se detalla en profundidad, se destaca como un tema relevante para ampliar el conocimiento matemático en este campo.
Cada capítulo presenta herramientas específicas y objetivos concretos para abordar problemas relacionados con la generación de gráficas y mapas en geociencias utilizando Python y si bien los primeros capítulos podrían verse como muy generales, y no específicos para geociencias, sin embargo, los últimos hacen notorio este direccionamiento para poder aprovechar al máximo las ventajas de Python en esta nueva área.
Bibliografía
Venners, B. (13 de enero de 2003). The Making of Python. A Conversation with Guido van Rossum, Part I. artima. Recuperado de https://www.artima.com/articles/the-making-of-python
1 Departamento de Ciencias de la Computación, Universidad de Cuenca, Ecuador, correo electrónico: villie.morocho@ucuenca.edu.ec ORCID: https://orcid.org/0000-0002-8196-2644