Many homework problems in this course will require you to write computer programs to solve them. No prior programming experience is needed for this course and all materials necessary to learn the required skills will be available through the course.


We will have several computational tutorials throughout the term. As the course progresses, these materials will be posted below. Note: In some browsers (Firefox primarily), the end of each sentence is clipped off, making it difficult to read. If this is occurring, please try using another browser (Chrome, Safari, etc).

External resources

Below is a list of useful online resources for learning the Python programming language and principles of programming in general.