Schedule
Labs
Assignments
TA office hours
Topic videos
Some course notes
Extra problems
Lecture recordings
My office hours won't be held during the mid-term break (June 21 through July 1).
About the C programming language: A lot of people like K.N. King, C Programming: A Modern Approach, W.W. Norton, 1996 or 2008. The canonical reference is Kernighan & Ritchie, The C Programming Language, second edition, Prentice-Hall, 1988.
About unix system programming: K. Haviland, D. Gray, and B. Salama, Unix System Programming, second edition, Pearson Ed. / Addison-Wesley, 1998. OR: M. Kerrisk, The Linux Programming Interface, No Starch Press, 2010.
A book about C is probably more important than a book about unix. You might not necessarily want to buy the Haviland et al. or Kerrisk books (or any book) as they do not cover the entire course. There is a document about various textbooks on the course web page.
Assignment 1: | 8% | due Monday June 6 (midnight) |
Mid-term test: | 15% | Tuesday June 14, 18:10-19:00, different room (TBA) |
Assignment 2: | 10% | due Monday July 11 |
Assignment 3: | 10% | due Monday August 1 |
Assignment 4: | 5% | due Monday August 15 |
Weekly labs: | 12% | best 12 out of 13 — attendance required |
Final exam: | 40% | as scheduled during the August exam period |
To pass the course you must receive at least 35% (out of a hundred that is) on the final exam.
Lab and assignment submission instructions are included on the lab and assignment handouts.
Late assignments will only be accepted under exceptional circumstances and with a written explanation sent separately by e-mail. To submit an assignment late, submit it in the usual way and then send the lecturer an e-mail message or bring him a note.
Any disagreements with the grade assigned to an assignment or the midterm should be submitted to the lecturer, preferably by e-mail, normally within about a week of its return.
Any test messages must instead be posted to
https://bb-2022-05.teach.cs.toronto.edu/c/csc209test
Serious academic offence warning!
Your work in this course which is submitted for course credit must be your own.
Representing someone else's creative work as your own is an academic offence.
There are a number of rules which you must follow to avoid prosecution.
Assignments and lab exercises in this course are individual, so submitting anything which comes from others is an academic offence unless specifically and precisely acknowledged. It is also an offence to assist others in committing an academic offence.
For example, you may not: