UCSB Software Carpentry
Python Thursdays - Summer 2019

Both Tuesday and Thursday sections are now full.

Where:

UCSB Library, Classroom 1312 (with a few exceptions listed below). Get directions with OpenStreetMap, Google Maps, or the UCSB Map.

When:

Thursdays 9:30 - 11:00 am, from June 27 to September 12, 2019

Instructors:

Setup:

Before class, please follow the Setup Instructions to:

Surveys:

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

Lessons:

The Plotting and Programming in Python lesson is an introduction to programming in Python for people with little or no previous programming experience. It uses plotting as its motivating example, and is designed to be used in both Data Carpentry and Software Carpentry workshops. This lesson references JupyterLab, but can be taught using a regular Python interpreter as well. Please note that this lesson uses Python 3 rather than Python 2.

Etherpad:

We will use this Etherpad collaborative document for chatting, taking notes, and sharing URLs and bits of code.

Schedule:

Week Section 2 Thursdays Lesson(s) Materials
1 Thursday June 27
9:30-11:00
Library Room 1312
Running and Quitting,
Variables and Assignments

1_running-and-quitting.ipynb

2_variables-and-assignments.ipynb

06/27/19 Etherpad notes

6/27/19 Video Recording

2 Tuesday July 2
2:00-3:30 pm
Library Room 1312
Data Types and Type Conversion,
Built-in Functions and Help

3-data-types-and-type-conversion.ipynb

4-built-in-functions-and-help.ipynb

07/02/19 Etherpad notes

7/2/19 Video Recording

3 Thursday July 11
9:30-11:00
Library Room 1312
Libraries
Reading Tabular Data into DataFrames

5_libraries.ipynb

6_reading-tabular-data-into-dataframes.ipynb

07/11/19 Etherpad notes

4 Thursday July 18
9:30-11:00
Library Collaboratory
Pandas DataFrames

7_pandas-dataframes.ipynb

07/11/19 Etherpad notes

7/18/19 Video Recording

5 Thursday July 25
9:30-11:00
Library Room 1312
Plotting
Lists

9_plotting.ipynb

11_lists.ipynb

7/25/19 Video Recording

6 Thursday August 1
9:30-11:00
Library Room 1312
Review Weeks 1-5

12-review.ipynb

8/1/19 Video Recording

7 Thursday August 8
9:30-11:00
Library Collaboratory
For Loops
Looping over Data Sets

12_forloops.ipynb

13-looping-over-datasets.ipynb

8/8/19 Video Recording

8 Thursday August 15
9:30-11:00
Library Room 1312
Writing Functions
Variable Scope

14_writing-functions.ipynb

15_variable-scope-and-function.ipynb

8/15/19 Video Recording

9 Thursday August 22
9:30-11:00
Library Room 1312
Conditionals
Programming Style

17-18-conditionals-programming-style.ipynb

8/22/19 Video Recording

10 Thursday August 29
9:30-11:00
Library Room 1312
Review weeks 6 - 9

19-classes.ipynb

8/29/19 Video Recording

11 Thursday September 5
9:30-11:00
Library Room 1312
Review

20-review-intakedata.ipynb

9/5/19 Video Recording

12 Thursday September 12
9:30-11:00
Library Room 1312
Wrap-Up

21-refined-intake-data.ipynb

21-firstscript.py

Recordings:

General Information:

Software Carpentry aims to help researchers get their work done in less time and with less pain by teaching them basic research computing skills. This hands-on workshop will cover basic concepts and tools, including program design, version control, data management, and task automation. Participants will be encouraged to help one another and to apply what they have learned to their own research problems.

For more information on what we teach and why, please see our paper Best Practices for Scientific Computing

Who: The course is aimed at graduate students and other researchers. You don't need to have any previous knowledge of the tools that will be presented at the workshop.

Requirements: Participants must bring a laptop 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 on the Setup page).

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.

Accessibility: We are committed to making this workshop accessible to everybody. The workshop organizers have checked that:

Materials will be provided in advance of the workshop and large-print handouts are available if needed by notifying the organizers in advance. If we can help making learning easier for you (e.g. sign-language interpreters, lactation facilities) please get in touch (using contact details below) and we will attempt to provide them.

Contact: Please email library-collaboratory@ucsb.edu for more information. To learn about future Carpentry workshops, sign up for the mailing list here. Sign in with your UCSB email and click "Join Group.".