CSC108H (St George, Summer 2018): Introduction to Computer Programming


[Mark Kazakevich]
Mark Kazakevich
L0101 (Afternoon Section)
LM 159
Office hours
[Lisa Zhang]
Lisa Zhang
L5101 (Evening Section)
WB 116
Office hours

Welcome to the course webpage for the Summer 2018 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.

You will find most information about the course on this page, or linked to from this page. This website is required reading for the course. Course Announcements will be sent using Portal, and we expect that you will regularly check both Portal and your UofT email.

There are two lecture sections of this course with two different instructors: Lisa and Mark. You are welcome to attend office hours with any of us. Both sections 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.

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


The course textbook is Practical Programming: An Introduction to Computer Science Using Python 3. The third edition was just released at the end of December, so the UofT bookstore only has copies of the second edition.

If you prefer an eBook (about $27 USD; available in PDF, ePub, and mobi) or wish to we recommend Practical Programming (third edition): An Introduction to Computer Science Using Python 3. You can also order the paper version there.

If you prefer a paper copy, the 2nd edition (at the UofT bookstore) is fine for this course — we used it last semester.

The books is also available on Amazon and other resellers.

The textbook is optional. We will point out which sections of the book are applicable each week on the Lectures page.

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, 8, and 12. Don't leave these to the last minute: they are substantially more work than the weekly lab exercises, and we expect that it might take you several days to finish them.

Getting help

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

We will use an online discussion forum for general class discussion. Follow the link in the navigation bar.

For general inquiries regarding the undergraduate computer science program, please contact the Computer Science Undergraduate Office.