Python para Ciencias de la Tierra

Prefacio

Damian
5 min readFeb 15, 2022

--

Índice del curso

Si estás leyendo esto es porque seguramente eres alguien involucrado profesionalmente en alguna área de las Ciencias de la Tierra, o eres estudiante y muy pronto lo estarás. Y además tienes el interés de ser más competitivo con nuevas habilidades técnicas (lo que en inglés le llaman Hard Skills) al adentrarte en la programación. Sin embargo es probable que no hayas tenido antecedentes directos con la programación más allá de haber escuchado o leído sobre algún lenguaje de programación. Por ello, en este curso se considera que todos los profesionales de Ciencias de la Tierra necesitan aprender a programar, pero no todos saben por dónde comenzar.

La programación no siempre es explotada con la importancia debida en una formación universitaria, pensando principalmente en carreras ajenas a la computación, telecomunicaciones, redes, etcétera. Pero en los últimos años ha aparecido una nueva forma de utilizar Python, el lenguaje con mayor crecimiento en la última década. Python tiene un potencial uso en la industria de las Ciencias de la Tierra, que ha sido poco expuesto en formatos en español que permitan al interesado aprender paulatinamente. Bajo esta idea es que surge este curso.

En el curso se verá desde la instalación del software recomendado que utilizarás durante tu formación en el mismo, de forma que no es necesario siquiera que hayas instalado algo aún en tu computadora. Se te darán las herramientas y los temas conforme avances a un ritmo constante en la construcción de programas más completos y complejos. Se construyó con un enfoque balanceado entre la teoría y la práctica. Según se presenten nuevas utilidades, se presentará la teoría requerida para seguir avanzando, por lo que no te preocupes si tienes alguna duda por lo visto en sesiones iniciales, ya que seguramente se resolverá en sesiones posteriores donde contarás con más habilidades. De cualquier forma la sección de comentarios siempre estará disponible al final de cada sesión para que tus dudas sean atendidas.

La cantidad de ejemplos, demostraciones y ejercicios con aplicación en las Ciencias de la Tierra es adecuada para adquirir la práctica e independencia que requieres para dar solución a diversas cuestiones. De igual forma, el nivel de dificultad de los ejercicios será gradual. Y los ejemplos siempre tienen el detalle debido de explicación. Conforme las sesiones avancen, se omitirán explicaciones y demostraciones ya vistas.

Las primeras sesiones estarán llenas de detalles, con el fin de garantizar una curva de aprendizaje adecuada. También se considera que el curso no está formando desarrolladores, sino personas encargadas de crear modelos en las Ciencias de la Tierra; por lo que será muy poco vista la programación orientada a la experiencia de usuario.

Al terminar de publicarse este curso está diseñado para poder tomarse durante un mes intensivo de tu tiempo. Se estima que cada sesión te tome alrededor de 60 minutos completarlo, entre la lectura y la realización de las actividades; más el tiempo que dediques por cuenta propia a los ejercicios que se dejan al final, y el repaso que des aparte.

Al finalizar, tendrás bases firmes de Python para poderlo implementar en diversas áreas de las Ciencias de la Tierra, además de poder adentrarte en temas más complicados que tengan relación con la programación tanto dentro como fuera de las áreas de las Ciencias de la Tierra.

Es importante señalar que en este curso se da por entendido que tienes conocimientos intermedios de temas sobre Geología y Geofísica, como son Geología Estructural, Estratigrafía, Prospección Geofísica, entre otros; además de tener buenas nociones básicas de Matemáticas. El curso se encarga primordialmente de darte la habilidad de programar. Sin embargo se procura tener enlaces de ayuda y fuentes bibliográficas para recordar conceptos, o profundizar en nuevos temas.

Consideraciones sobre la notación utilizada en el texto del curso

Las referencias de las tablas y figuras (tabla1.1, figura 1.1, etcétera) en el texto estarán en itálica y negrita. Sólo tendrá este formato la primera referencia que haya dentro del texto a la tabla o imagen. Algunas imágenes no están referenciadas en el texto, debido a su inmediata presencia frente a lo que se está explicando o describiendo.

En negrita estarán las palabras o pequeñas frases que se refieran a conceptos cuyo significado se explique por primera vez. También lo estarán las frases que sean importantes para el contexto.

En itálica estarán las palabras o frases que se refieran a comandos, sentencias, variables, y aspectos relacionados con el código de programación, y no estén en una caja gris como se describe más adelante. También lo estarán las palabras o pequeñas frases que a pesar de su importancia, no se explican en ese mismo párrafo.

En itálica y subrayado estará el texto que posea un enlace hacia otra página.

Las líneas de código que constituyen a los ejemplos como a las explicaciones estarán indicadas en recuadros grises similares al siguiente.

print('Esto es un código de ejemplo')

El texto se puede copiar y pegar en una celda de tu cuaderno (ya sabrás a qué me refiero). Algunos códigos, sobre todo los que muestro con resultado, están en imagen, pero sólo para fines ilustrativos, ya que, repito, el código que te permitirá obtener y entender esos resultados estarán en cuadros grises como el superior. De no haber cuadro, se espera que ya lo puedas hacer, mostrando en el texto el resultado que se espera ver.

Cuando el resultado de un código no pueda expresarse en una o dos palabras, se utilizará >> en un renglón aparte para escribir la impresión esperada. Ejemplo:

>>Éste es el resultado ejemplo de una línea ejecutada.

Se utiliza el punto en lugar de la coma para indicar números con parte decimal. Como ejemplo, 3.256 se lee ‘tres punto doscientos cincuenta y seis’. La coma, cuando se utilice, será para separar los millares: 3,284,000.

El curso está escrito en Python 3.9. Versiones previas de Python 3 coinciden en la mayoría de los ejercicios hechos aquí, cuando no, los cambios son pocos. Versiones superiores deben trabajarse sin ningún problema.

La mayoría de las sesiones cuentan con una sección de ejercicios al final. Algunos de ellos cuentan con la respuesta ahí mismo; la cual podrá ser algún valor numérico, texto o una o varias imágenes mostrando cómo debe verse el resultado. Su dificultad es variable, y se clasifican en tres niveles según la cantidad de asteriscos que tengan:

  • Ejercicio fácil *
  • Ejercicio de dificultad media **
  • Ejercicio difícil ***

La dificultad se mide respecto a lo esperado que ya sepas. En otras palabras, los ejercicios difíciles de las primeras sesiones serán equivalentes a los fáciles en las sesiones avanzadas.

Puedes descargar el código hecho en cada una de las sesiones y los ejercicios resueltos suscribiéndote a mi patreon: https://www.patreon.com/ciencias_tierra.

--

--

Damian

Anything I want and is related to data. Learning to become a Data Professional.