Programming in Python


Norlin E206



Title:  “Programming in Python”

Location:  Norlin E206


Dates:  Thursdays from 2:30-3:30 pm


Part 1:  September 21-October 12, 2017

Part 2:  October 19-November 9, 2017


Instructor:  Nick Featherstone, Research Computing


Sponsored by:  Center for Research Data and Digital Scholarship (CRDDS) and Research Computing


This pair of short courses will provide an overview of Python fundamentals, split into two sessions, each meeting one hour for four weeks.  It is targeted at participants with prior experience programming in another language, but who wish to get up and running with Python.  Topics covered will include variables & objects, functions, conditionals, and loops. We will also discuss how to build custom Python modules and provide an overview of popular 3rd-party packages such as Numpy.  This course will combine lectures with interactive exercises.  It is available free of charge.  Participants must have the following knowledge to be able to participate:  be familiar with fundamental aspects of programming (loop structure, variables, basic data structures), and a laptop.

NOTE:  This course will not cover “how to program” – we that expect you have prior experience in another programming language, and that you want to transition to using Python.

Please visit to register.  Registration closes September 13 or once full.  Due to anticipated demand, we ask that if you register for a short course you make a commitment to attend all sessions in the course.

Due to the brevity of these sessions, we will not be able to address issues related to a faulty Python installation in-class.  Attendees are expected to arrive with a functional installation of Python 3.x and the following packages installed on their laptop:  Numpy, Matplotlib, h5py, netCDF4, and Pandas.   Installation instructions will be emailed in advance of the course.  Those requiring assistance during the installation process should either attend the September 14 prep session or make a separate appointment with Nick Featherstone (

Tentative agenda:

September 14:  Prep session (optional)

Short Course Part 1 (Programming Basics):
September 21:  Overview, variables, memory
September 28:  Conditionals, functions
October 5:  Loops, lists
October 12:  Objects, modules

Short Course Part 2 (Python Packages):
October 19:  Numpy
October 26: Data Management (HDF5; NetCDF; Pandas)
November 2:  Matplotlib
November 9: Creating Custom Packages, F2py and Cython