Course materials

·      Course slides are on-line.

·      Textbooks - TBD

·      All Project assignments are listed online. Due dates will be announced online, in class or via the Course Listserver.

·      Additional work will be assigned in class or via the Course Listserver.

Student Responsibilities

·      Attendance is required

·      In the case of absence from class, find out what was missed. Ask the instructor!

·      All work is due at the specified date and time. It is each student’s responsibility to keep up with the course, either through help from the Teaching Assistant or by seeing the instructor. (See lateness)

·      Conform to the Academic Honor Code. The Watson School has an Academic Honor Code. It is your responsibility to read and understand it. The procedures for Watson School students apply to all students taking Watson Courses.
Copying ANY materials from ANY source or working to come up with a COMMON solution is unacceptable. These are considered a violation of the Honor Code. You are permitted to work together to PLAN an attack on a problem and to help each other if you are stuck on some syntax or semantic issue, but NOT to just give each other any code.

NOTE: there will be NO incompletes given for any reason. If you miss sufficient work that you cannot catch up, you will have to officially withdraw from the course and take it over.

Programming requirements

The only acceptable environment for programming is either the TJW Linux system (for the CGI & Qt projects) or Windows (depending on specific lab/project assignments). The only approved IDE for Windows is Microsoft's Visual Studio, available free for all students registered in a CS course.


The MINGW and Cygwin environments and their corresponding compilers may require include-files or library routines that are not fully compatible and are therefore unacceptable places to be doing your work.


“Code::Blocks” is not acceptable for building/running code as it is outdated and does not support all the facilities we will use.

Solaris, tablets and Apple systems are also not valid environments.

All Projects MUST be completed to pass the course. Completion means the programs must compile with no compiler messages above the Warning level and must run without severe errors (errors that force program termination, such as Segfault).

You can use any machine to CONNECT to the TJW systems, using programs such as TN3270 (Windows) or x3270 (Linux). You can use the PODS for Windows. All PODS systems have Visual Studio on them. Be sure to save your files on your H: drive or a portable drive so they will be available all the time.

Note that the Visual Studio environment AUTOMATICALLY sets a pre-processsor variable called WIN32, which you may test in your program to decide which "include" files to use. For example:
#ifndef WIN32
#include <sys/times.h>
#include <unistd.h>

Unexcused late work of any kind will receive a zero. No incompletes will be given, except in cases of validated excuse. Official documentation is required for all excuses.


·      There is no written homework for this course.


All grades in the following table are AFTER any curving.

Grade scale











Grade content

Quizzes (if any)




Midterm Exam


Final Project


Grade Requirements

SOME grades may be curved, NONE will be dropped. An average grade of 70% on the quizzes (if any), and Projects is required to pass the course. The overall course grade must be 60 or above. All Projects must be submitted and EACH must receive a grade of 50% or better. No exceptions.

See the syllabus for more information about the course content.