El 18 y 19 de Febrero del 2010 estaré visitando la Universidad de los Andes, para presentar una conferencia y un taller intensivo sobre temas en computación científica, descritos a continuación.
Computación científica, Python y software abierto¶
Fecha: Jueves 18 de Febrero, seminario de Geotecnia, Universidad de los Andes.
Durante los últimos años se viene dando una revolución en el mundo de la computación científica, movida por varios desarrollos diferentes pero relacionados entre sí:
- La aparición de sistemas de cómputo basados en lenguajes de alto nivel, librerías para múltiples usos y capacidades gráficas.
- La avalancha de datos experimentales que está llegando a múltiples disciplinas, a una escala que hasta hace poco no tenía precedentes.
- El abaratamiento de los recursos de cómputo, almacenamiento y transmisión de datos.
- La ubicuidad de la internet, como plataforma de interacción entre científicos y facilitadora para compartir datos y programas.
- El surgimiento del fenómeno del software abierto (Open Source), que introduce un modelo de desarrollo cooperativo muy similar al de la producción científica, e introduce alternativas viables al software propietario.
En este contexto, en los últimos años el lenguaje de programación Python se ha establecido como la mejor plataforma para el desarrollo de alto nivel en computación científica.
En esta charla discutiré esta evolución, presentando ejemplos concretos de las ventajas que ofrece Python sobre otras alternativas, los usos y desarrollos que se están dando alrededor del sistema y el impacto que está teniendo en todo el mundo. En particular, discutiré las oportunidades que este desarrollo ofrece, tanto en contextos educativos como investigativos, para establecer con el conocimiento una relación de producción y colaboración que vaya más allá del mero consumo de información.
Taller: computación científica en Python¶
El viernes 19 de Febrero presentaré un taller intensivo sobre computación científica moderna usando Python, basado en los materiales del curso sobre el mismo tema que dictaré en el departamento de física de la Universidad de Antioquia. El plan del taller es el siguiente:
Mañana¶
- Breve introducción a Python y uso interactivo con IPython.
- Numpy: manejo de tableros multidimensionales.
- Matplotlib: graficación en dos y tres dimensiones.
- Scipy: breve introducción a las librerías.
Tarde¶
- Acceso a código nativo en C y Fortran con scipy y numpy
- Cython: un híbrido de Python y C
- Sage: un sistema basado en Python para computación matemática
- Discusión abierta: concluiremos con una sesión en la que podemos mirar temas de investigación de interés para la audiencia y las herramientas que existen hoy en día para abordarlos.
Para sacar provecho del curso, lo ideal es que le de una buena mirada al material que describe la versión más larga (en particular a los prerequisitos de instalación y lectura) así como el kit para principiantes. Como no tendremos tiempo de cubrir en demasiado detalle el material más introductorio, es importante que prepare los dos tutoriales que allí se indican para que pueda aprovechar el material más avanzado.