From June 20th to June 24th 2016, Unidata Staff members Ryan May and Sean Arms led a Python Training workshop in Madison, Wisconsin. Within this four-day stretch, two Python training classes were held, each one two full days; the workshop content was based on Unidata's 3-day Annual Python Training Workshop, but tailored to the specific needs of the Space Science and Engineering Center (SSEC) and the Atmospheric and Oceanic Science (AOS) department at the University of Wisconsin, Madison. This was the fourth Python workshop Unidata staff have led, but the first held outside of the Unidata Program Center (UPC), located at UCAR's Foothills Lab in Boulder, Colorado.
Ryan and Sean conducted the lessons, going through workshop material created by UPC staff and available on Github and giving a whirlwind tour of using Python in meteorology and the atmospheric sciences. While most of the attendees — largely faculty members and graduate students — had some coding experience, almost none of them were well versed in using the various Python packages specifically designed for the geosciences.
The workshop began with an overview of Git (a version control system used in software development), Github (a Git hosting repository service), and Jupyter Notebooks (a web-based application that contains live code). After these tools had been properly outlined, the workshop switched its focus to specific Python programs, such as Metpy, Siphon, and Numpy; as well as Conda, the environment used to install and configure the python packages. Ryan noted that there seemed to be the biggest learning gap in teaching users who are new to Python what a specialty packages such as Metpy can do. Python developers at Unidata are hoping to bridge this gap via another UPC project still in development, the Unidata Online Python Training.
Participants used Jupyter notebooks to get a hands-on experience of Python, allowing everyone in the workshop to run the same code but select datasets of their own choosing. Another advantage of using Jupyter notebooks is that the participants can continue to use them after the workshop. Ryan enjoyed working with the training groups, stating, “It's always fun to get out there and teach python to a group of enthusiastic students. And they absolutely were.” Overall, participants had very positive feedback, and Ryan says, “I look forward to doing more python regional workshops in the future.”