||Dr. Woit |
Dept. of Computer Science, Ryerson University
Tel: 416-979-5000, x7063
Email: see Course Email Policy below
Office Hours: Thu 1210pm-0100pm
|| CPS 109, CPS 209 |
The course introduces the UNIX operating system, and the C and C++ languages. UNIX topics include: I/O, redirection, processes, and
shell scripts. C and C++ are introduced with an emphasis on differences from previously studied languages. C topics include pointers,
structures, memory allocation, and paradigm differences. C++ topics may include class formalisms, static and dynamic instantiation,
inheritance, constructors and destructors, polymorphism with virtual functions, operator overloading, and time permitting, friends.
| No Text. Class notes provided on CS Moons:
|Reference (not required):
references of your choice for vim, ANSI C/C++/Bash, such as:
Vim Reference Card
C Reference Card
C++ Reference Card
3 hrs. lecture, 1 hr. lab.
The student will be proficient in:
The student will be able to solve the problems from from class, notes, labs, homework, and other similar
problems, and those that build upon the former.
- using Linux via bash shell in a text-based environment,
- writing advanced bash shell programs,
- writing/compiling/running C programs on Linux using the gcc compiler,
- differences between C and C++ and writing/compiling/running C++ programs,
- testing and debugging all of the former on Linux,
- using the vim (vi) editor on Linux.
|Term Work ||Weight ||Date |
|Assignment 1 ||15% ||Mon Oct 18 at 11:59pm |
|Midterm practice (online) ||0% || Sec 1-5 Mon Oct 25 in class.
Sec 6-10 Tue Oct 26 in class.
|Midterm (online) ||30% || Thur Oct 28 in class.
|Assignment 2 ||15% ||Sun Nov 28 at 11:59pm (new date) |
|Final Exam (online) ||40% ||Dec 16 at noon |
|Labs* ||0% || |
- During your lab time, you will work on the provided lab questions.
- The TAs are available during the scheduled lab time to answer questions.
- The TAs will also help you study and check your work upon request - time permitting.
- Lab solutions are provided; however, there are typically numerous correct solutions,
and your TA can check yours if it differs from the given solution - time permitting.
- Labs are not graded.
- Normally, email/see your own lab TA if you have any questions regarding labs, marking, etc.
- To escalate the issue, email/see the Lead TA, who has final
authority on all lab and marking issues.
- The Lead TA is: Jorge Lopez firstname.lastname@example.org
Students are required to use the bash Linux shell, and the gcc/g++ compilers on
Computer Science moons for all course work.
- Official evaluation marks are recorded on D2L only.
- Questions/concerns about your marks must be referred to the Lead TA:
- Jorge Lopez email@example.com
Any error in grading must
be brought to the attention of the grader for that evaluation (e.g., TA or instructor)
within 24 hours of evaluation being returned (papers handed back for written evaluations,
electronic posting of grade for electronic evaluations.) Students must report grading errors
using the re-evaluation form provided by the instructor, when required to do so.
- Course material covered on tests and final are cumulative.
e.g., final covers material from midterm
- Late submissions of any course work are not accepted.
Normally receive a mark of zero. See the following for remission:
|Course Email Policy
- Emails MUST contain "cps393" or "CPS393" somewhere in the
subject. Emails without one of these phrases in the subject
will not be read or answered.
- It is best to see professor in class or office hours, as emails are not
guaranteed to be answered, as follows:
- Emails will be answered during office hours, time permitting, in order of
arrival (from/to proper accounts as defined below).
- Emails professor considers no longer (or not) relevant will not be answered.
- email must be to: dwoit at
ryerson dot ca
- email must be from: your scs account or Ryerson.ca account.
Email sent to/from any other accounts will not be answered.
(e.g., your gmail account).
- email subject: MUST contain
"cps393" or "CPS393"
somewhere in the subject. Emails without this will not be read or answered.
- Email questions the professor deems appropriate to the whole class will be answered on the
Announcements (not via email response).
Students are required to adhere to all relevant university policies found in their online course
shell in D2L and/or on the following URL:
|Resources Available at Ryerson
Computer Science Help Desk (for in-class courses).
Student Learning Support
offers group-based and individual help with writing, math, study skills
and transition support.
|Virtual Classes and Evaluations
Students are not required to use webcams during virtual classes.
Virtual classes may be recorded (but not necessarily).
If a class is recorded, students will be informed at the start
of class. If a student does not want their voice and/or likeness
captured, they should turn off their camera and/or microphone.