CSW3101-01 General Information (CVN version)

See also CVN W3101-01 class info: http://www.cvn.columbia.edu/courses/Fall2002/COMSW3101-1.html


Instructor: Aya Aner
TA: Aya aner
Class Hours:  Tue,Thu 10:00-11:30 am
Office Hours: not available, contact by e-mail

e-mail: aya "at" cs.columbia.edu


Programming Languages(C) (W3101-01) is a first course in C programming. However, prior programming experience is assumed.

From the course catalog description for 3101:

Introduction to a programming language. Each section is devoted to a specific language. Intended only for those who are already fluent in at least one programming language.
This is a four-week course that includes 8 classes + review class.

Texts

[IACU] Wang, Paul 1992 An Introduction to ANSI C on Unix, Wadsworth.
[TCPL] Kernigham Brian, Ritchie Dennis 1988 The C Programming Language, Prentice Hall

No book is required. However - owning some book in C is highly recommended.
Both are available at Papyrus Bookstore (Broadway at 114th Street). Reserve copies are placed at the Engineering library as well.

Another good book is: "A Book on C", Al Kelley and Ira Pohl.

Course Requirements and Grading

There will be four homework assignments and one final exam. The weights will be (15%,20%,20%,15%) for the homeworks and 30% for the final.

Homework assignments are handed out each Tueday and are due one week later at the BEGINNING of the class. There are no extensions; however, partial credit will be considered for all incomplete work. Assignments cannot be accepted after answers have been made available.

If you disagree with a grade, submit your grievance in writing to the grader responsible, documenting the merits of your case.

The final exam is usually given in the last week of class, on Friday . It is a closed-book exam.

Programming Policy

All programming may be developed in C on any machine. However, the programs must use only C libraries and not C++ or other software dependant libraries.

It is critically important that all submitted program listings and executions be thoroughly documented. Further, all documentation must be internal (included in the comments of the C source file). Good programming style will account for a substantial portion of the grade assigned to the programming assignments (see style sheet below).

Make sure you provide adequate test cases to indicate the correcteness and robustness of your approaches.

Collaboration

Discussion of material covered in class is strongly encouraged. It is acceptable to help or receive help from other students concerning features of the operating system or any of the other software programs you will be using for your projects. However, the work you submit must be your own work, no group work is permitted in this class. There is a line between discussion and cheating and this line will be enforced. Refer to the Computer Science Department handout for exact details.

Homework Submissions

CVN students should submit assignments as attachement by e-mail. Only source code and text files should be submitted, e.g., files with .c, .h or .txt extension. Do not submit the object files (.o extension) or executables!


All C programming should be done according to the provided style sheet. You are required to include a README text file with every submission that lists the filenames of all files submitted, along with a short (!) description of the purpose of each file. When the assignment includes a written assignment, it should be submitted as a separate text file.

Remember!

Assignments are due at the beginning of class, which for CVN students means that the e-mail assignment should received by that time and date.

Office Hours

I will be available via e-mail, scheduling phone conversations is possible as well.

Open Door Policy

I would like the course to run smoothly and enjoyably. Feel free to let me know what you find just, good and interesting about the course. Let me know sooner about the reverse. Send me e-mail.