9:30 - 11:00, Tuesday / Thursday,
- Labs: You must be registered for one lab section:
- Dempster Pavilion (where the lectures are held) is on Engineering Road
across from ICICS/CS X-wing (where the labs are held).
- There are no lectures or labs February 20 - 24 (midterm break).
- There are no labs on April 2-5 (last week).
- There are no scheduled tutorials for this course.
Third year standing or higher.
- Most information will be disseminated through this web site or
in class. Students are expected to check this web site regularly for
- The Vista component of the course web site includes a discussion
board to which students can post. This is the best forum for asking
questions. The instructor and TA will monitor the discussion board
regularly, and will respond more quickly to questions posted there
than questions asked by email. Students are expected to monitor the
discussion board regularly as well.
- Questions regarding lab work can be directed to the TA during
the labs or via email. Questions regarding lab grading should be
directed to the TA first.
- Questions regarding lab work, exams or course administration --
particularly those of a confidential nature -- can be directed to
the instructor by email or during office hours.
Before each lecture I
will ask you to read the pages from the notes and the textbook that are
relevant to the topics we will discuss in the lecture. In the lecture, I
will assume that you know the basic concepts from the assigned reading
and I will focus more on examples and your questions. I will use clicker
questions to gauge your understanding of the concepts you read and
discuss those that are not clear to you. Occasionally I will ask you to
work with a partner on some exercises (or small problems) and submit
your solution for marking. Make sure that you always read the
assigned sections from the notes and the textbook before you come to the
I will regularly post
the lecture notes on the course web site. You may download the PDF
slides and have them in the class to add your own annotations and any
explanations and different examples I may present during the lecture.
There are eight or nine labs, and one one lab exam for the course.
All of the labs have before-lab and in-lab sections. Some labs may also
have some after-lab
assignments. Other than the lab work, there are no
homework assignments in the course.
A lab is usually due at 6:00pm on the Wednesday that follows the day
the lab started. We will NOT accept late submissions except in
For more information on the labs see the
labs home page on this
If you miss your lab section due to illness:
- Try to attend a different lab section during the same week.
- If you are unable to attend any lab section during a
particular week, submit your solution through handin if you
finish before the deadline and bring your work to your
next lab section to demonstrate to the TA. If you cannot submit
the assignment on time, email it to your TA and provide the TA with
- If you are unable to complete a lab before the next lab starts,
you should talk to your instructor.
There will be a lab exam, a midterm, and a final
examination for this course:
- The lab exam will be taken
in the lab during the scheduled lab times in March. We will
announce the lab exam date after the midterm exam.
- The midterm (60 minutes)
will be on Thursday, February 16 during the lecture.
- The final examination will
be scheduled by the university in April.
If you miss an exam:
- If you miss the lab exam, you will be given an opportunity
to repeat it outside of lab time. You must pass the lab exam to
pass the course.
- If you miss the midterm exam, the weighting for the midterm
will be shifted to the final exam. There are no deferred midterm
exams in CPSC 301.
- If you miss the final exam, you must follow the procedure of
your Faculty to request a deferred exam (for Science you hay
check this side for
Note that you may be refused permission to sit a deferred exam if
you have not demonstrated sufficient prior work in the course (see
the Grading section below).
Final grades will be calculated as follows:
for the clicker questions
for the in-class group exercises
- 2% for participation in the
class discussions and in surveys
- 25% for the labs
- 5% for the lab exam
- 20% for a midterm exam, and
- 40% for the final exam.
To pass the course, a student has to obtain a 50%
overall mark and, in addition, they must
- pass the lab examination
- pass the final examination.
The final grade for students who fail the lab or
the final exam will be set to the minimum of the grade calculated by the
above formula and 45%.
The main textbook for the Python component of the course is:
- Practical Programming: An Introduction to Computer Science Using
Python, Jennifer Campbell, Paul Grise, Jason Montojo, Greg Wilson
You can buy the paper or the online version or both at
readings will be identified in this version.
Another textbook which can be used for this course is:
which is available online free from
Green Tea Press as
format or as a
This book covers most of the topics we'll discuss in this course, but it
presents the concepts in a slightly different order than the main
text does. I'll try to also list the sections from this book that
correspond to the class readings.
We will be using the
i>clicker system in CPSC 301. They can be purchased at the
UBC bookstore. For more
information, see UBC's
site. Remember to register your clicker for CPSC 301
through Vista so that you can get participation credit.
General information about this course is available from this public
course website. Students registered in the course must also access the
Vista component of the course web site, which includes the following
- Online discussion groups. Students are responsible for regularly
reading the main course discussion group and the discussion group
associated to their lab section.
- Grades. Students may view their progress in the course.
- Register your clicker. This task must be done once in order to
ensure that you get participation credit for using your clicker.
- Secure handouts. We may not be able to post some material on the
public site, in which case it will be posted through Vista.