Python for Atmosphere and Ocean Science

ICSHMO 2022

Online

Tuesday 8 February, 2022

10:00 am - 5:00 pm (NZDT)

Instructors: Damien Irving, Claire Trenham, Holger Wolff

Helpers: Zeb Nicholls, Chloe Mackallah, Paige Martin

General Information

Python is rapidly emerging as the programming language of choice for data analysis in the weather, climate and ocean sciences. By consulting online tutorials and help pages, most researchers in this community are able to pick up the basic syntax and programming constructs (e.g. loops, lists and conditionals). 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 Data Carpentry workshop will cover a suite of programming best practices that aren’t so easy to glean from a quick Google search.

For more information on what we teach and why, please see our paper "Good Enough Practices for Scientific Computing".

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 strong 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: Tuesday 8 February, 2022. Add to your Google Calendar.

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 irving.damien@gmail.com 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.


Surveys

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

Pre-workshop Survey

Post-workshop Survey


Schedule

10:00-12:00 Package Management, Data Processing and Visualisation, Functions, Command Line Programs
12:00-12:45 First break
12:45-02:45 Version Control, Vectorisation, Defensive Programming
02:45-03:30 Second break
03:30-05:00 Data Provenance, Large Data

The complete lesson notes can be found at https://carpentries-lab.github.io/python-aos-lesson/.


Software and Data

Software installation instructions and links to download the workshop data files can be found at https://carpentries-lab.github.io/python-aos-lesson/setup.html.

Please complete the data download and install the required software (Bash Shell, Git and Anaconda) prior to arriving at the workshop.


Videoconferencing

If you haven't used Zoom before, go to the official website to download and install the Zoom client for your computer.

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, RStudio, your web browser, etc..) and the window for the Zoom 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.