CMPT 370 Spring 2009 Syllabus


Dr. Sean Ho
(604) 513-2121 x3209
Class location:
TR 16:00 - 17:15 Neu34


This course is designed to provide already experienced students with some of the advanced tools that they need to take their places as competent professional programmers. In this offering of CMPT 370, the topics we will be exploring include graphical user interfaces, parallel programming, and 3D graphics.


By the end of the course students should be able to
  • understand the concepts of event-driven programming for GUIs and demonstrate this understanding by programming in FLTK,
  • understand the concepts of parallel programming and demonstrate this understanding by programming in OpenMP, and
  • understand the concepts of 3D computer graphics and demonstrate this understanding by programming in OpenGL.


The first-year CMPT sequence (145/141/143 and 160+165/167), plus either CMPT 231 or CMPT 285, or second-year transfer status from another school with the instructor's permission.

Required Text

There is no required text. All our readings will be online. Recommended references:
  • "Parallel Programming in C with MPI and OpenMP", Quinn, McGraw-Hill, 2004.
  • "Computer Graphics: Principles and Practice", Foley, van Dam et al., Addison Wesley.
  • "Interactive Computer Graphics: A Top-Down Approach with OpenGL", 4th edition, Edward Angel, Addison Wesley.
  • "OpenGL Programming Guide", 5th Edition, Shreiner et al., Addison Wesley. (the "redbook")


This semester we will cover three major topics; the approximate number of weeks spent on each topic is shown in parentheses:
  • Graphical User Interfaces and Event Programming (2)
  • Parallel Programming (2)
  • Computer Graphics (6)


Letter grade assignment follows the TWU percentage to grade equivalents except that >=85% and <95% is an A; 95% and above is an A+.
Labs (5-6) 40% About every other week
Midterm 1 15% Thu 12 Feb (tentative)
Midterm 2 15% Thu 19 Mar (tentative)
Final Exam 30% Mon 20 Apr 2-4pm


  1. All labs must be completed -- if you do not turn in something for each lab, you will automatically fail the course.
  2. The good news is the late policy is fairly lenient: penalty of 5% per calendar day, up to a week late. More than a week late is 50% penalty. More than two weeks late and it will not be accepted unless there are extenuating circumstances. We will use the timestamp on myCourses. It is your responsibility to make sure all parts of your lab are uploaded to the right place in myCourses by the deadline.
  3. During in-class quizzes/exams, all of the following are not permitted and should be left in your closed/zipped bag and put on the floor:
    • Textbooks, notes, cell phones (turn off), laptops, PDAs, electronic dictionaries, calculators.
    Scratch paper will be provided. Your desk should be clear except for your pencil/pen.
  4. In case of inclement weather, call (604) 513-2147 or see for official campus conditions.
  5. As Christian scholars pursuing higher education, we value academic integrity as a core value of the entire TWU community. Students are invited into this scholarly culture and required to abide by the principles of sound academic scholarship at TWU. This includes, but is not limited to, avoiding all forms of plagiarism and cheating in scholarly work. TWU has a strict policy on plagiarism (see academic calendar 2008-09, pp. 37-38). Learning what constitutes plagiarism and avoiding it is the student's responsibility. An excellent resource describing plagiarism and how to avoid it has been prepared by TWU Librarian William Badke and is freely available for download (PPT file) or used as flash (14 minute) (8 minute) tutorials of varying length.