Synopsis

This is a 6-week introductory course to programming in Python. The goal of this course is to enable participants to get the best out of the features the language has to offer. After introducing language fundamentals, the class will cover object-oriented and functional programming in Python, and introduce important modules from the Python standard library. We will investigate how to use Python in different scenarios; from small scripting tasks to medium-scale projects. Students will become familiar with best practices and "pythonic" approaches to solving common programming problems. The class will focus on Python 3.

Final Project

Instead of a final exam, participants will work on a final project in Python, based on their own interests. The final project is meant provide more hands-on experience in addition to the shorter weekly homework assignments. It will also allow individual participants to look at more advanced topics that are useful to them (such as specific third party libraries). Demos will take place in the SpeechLab (7LW3 Shapiro/CEPSR).

Pre-requisites

Working knowledge of any programming language.

Grading Policy

Class Participation 10%
Homework 50%
Project Proposal 5%
Final Project 35%