CSC108H (StG, Fall 2014): Introduction to Computer Programming

Under construction!


[Jen Campbell]
Jen Campbell
L0201, L5101
BA 4238
[Tom Fairgrieve]
Tom Fairgrieve
L0202, L0301
BA 4230
[Paul Gries]
Paul Gries
BA 4234

Welcome to the course webpage for the Fall 2014 term of CSC108H, an Introduction to Computer Programming, on the St. George campus. This course teaches the basics of programming in Python, which is an industrial-strength programming language used at companies like Google and Industrial Light and Magic.

There are five lecture sections of this course with three different instructors, Paul, Tom, and Jen. You are welcome to attend office hours with any of us. Jen is the course coordinator, which means that she deals with all administrative matters: missed work, problems with your grades, problems with assignment partners, the course website, and TA issues. If you're not sure who to contact, though, feel free to ask any of us!

On-campus vs. online

Four sections (L0201, L0201, L0301, and L5101) are on-campus and are delivered through 3 lecture hours a week. For weeks 2 through 12, you will also watch video lectures to prepare for the on-campus lectures.

One section (L0101) is online and has additional online exercises and in lieu of the on-campus lectures.

Outside of class, all on-campus and online students will do weekly exercises, 3 assignments, a midterm test, and a final exam.


The textbook, Practical Programming (2nd edition): An Introduction to Computer Science Using Python 3, matches very closely with the course material. Some notes:

A typical week: Prepare, Rehearse, Perform

Each week, you'll use the an online tool called the Programming Course Resource System (PCRS) to view course materials and complete exercises. The weekly tasks are divided into three phases:

The three assignments are due in weeks 4, 9, and 12. Don't leave these to the last minute: they are substantially more work than the weekly lab exercises, and we expect that you will work on them for several hours each week.

Getting help

In addition to this website, please see the Syllabus, which is required reading.

We'll use Coursera for electronic discussion. Follow the link in the navigation bar.

For office hours, please see Office hours.