Python for Climate and Meteorology

American Meteorological Society


March 2, 4, 9 & 11, 2020

2:00 pm - 6:00 pm

Instructors: Damien Irving, Kathy Pegion, Sarah Murphy, Scott Collis, Kevin Tyle, Ryan May, Drew Cameron

Helpers: Nicole Corbin

General Information

Python has become the programming language of choice in atmosphere and ocean science (AOS). By consulting online tutorials and help pages, most researchers in this community are able to pick up the basic syntax and programming constructs. This self-taught knowledge is sufficient to get work done, but it often involves spending hours to do things that should take minutes, reinventing a lot of wheels, and a nagging uncertainty at the end of it all regarding the reliability and reproducibility of the results. To help address these issues, this workshop will cover a suite of programming best practices that aren’t so easy to glean from a quick Google search, before taking a deep dive on some of the most popular PyAOS libraries.

Who: The course is aimed at graduate students and other researchers. Participants must already be using Python for their data analysis. They don't need to be highly proficient, but a familiarity with Python syntax and basic constructs such as loops, lists and conditionals (i.e. if statements) is required.

Where: This training will take place online. The instructors will provide you with the information you will need to connect to this meeting.

When: March 2, 4, 9 & 11, 2020. Add to your Google Calendar.

Registration: Tickets can be purchased at the AMS website.

Requirements: Participants must have access to a computer with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below).

Accessibility: We are dedicated to providing a positive and accessible learning environment for all. Please notify the instructors in advance of the workshop if you require any accommodations or if there is anything we can do to make this workshop more accessible to you.

Contact: Please email for more information.

Roles: To learn more about the roles at the workshop (who will be doing what), refer to our Workshop FAQ.

Code of Conduct

Everyone who participates in Carpentries activities is required to conform to the Code of Conduct. This document also outlines how to report an incident if needed.


Please be sure to complete these surveys before and after the workshop.

Pre-workshop Survey

Post-workshop Survey


The first two days of the workshop will cover the basics of using Python for climate and meteorology, delivered by Data Carpentry instructors who work in the atmosphere and ocean sciences. The final two days of the workshop will be a deep dive on some of the most popular PyAOS libraries, delivered by the leading contributors to those open source packages. We recommend that people attend the first two days to get a grounding in the basics, and then any/all of the sessions on the final two days that are relevant to their research.

Tue 2 Mar: Data Carpentry (PyAOS)

2:00 - 3:15 Package Management, Data Visualisation
3:15 - 3:30 Break
3:30 - 4:45 Functions
4:45 - 5:00 Break
5:00 - 6:00 Command Line Programs

Thu 4 Mar: Data Carpentry (PyAOS)

2:00 - 3:15 Version Control
3:15 - 3:30 Break
3:30 - 4:45 Vectorization, Defensive Programming
4:45 - 5:00 Break
5:00 - 6:00 Data Provenance, Large Data

The complete Data Carpentry lesson notes can be found at

Tue 9 Mar: Meteorology with Python

2:00 - 3:15 MetPy
3:15 - 3:30 Break
3:30 - 4:45 MetPy
4:45 - 5:00 Break
5:00 - 6:00 MetPy

Thu 11 Mar: Remote sensing and Cloud Computing with Python

2:00 - 3:15 Python ARM Radar Toolkit (Py-ART)
3:15 - 3:30 Break
3:30 - 4:45 Python ARM Radar Toolkit (Py-ART)
4:45 - 5:00 Break
5:00 - 6:00 Pangeo and Cloud-hosted Data

For lesson notes see the MetPy notebook, Py-ART training repository, and Kevin Tyle's Pangeo repository.

Software and Data

Software installation instructions and links to download the workshop data files can be found at

In order to avoid delays at the beginning of the workshop, we also ask that everyone follows the optional python package installation instructions at that page.

Please complete the data download and software installation prior to arriving at the workshop.


During the week prior to the workshop, participants will receive an email with instructions on how to connect to the GoToTraining online platform that we'll be using.

Set up your workspace

Like other Carpentries workshops, you will be learning by "coding along" with the Instructors. To do this, you will need to have both the window for the tool you will be learning about (a terminal, Jupyter notebook, etc..) and the window for the video conference client open. In order to see both at once, we recommend using one of the following set up options:

This blog post includes detailed information on how to set up your screen to follow along during the workshop.