3157 Advanced Programming

From BenningtonWiki
Jump to: navigation, search

Fall 2007, Department of Computer Science, Columbia University

Angelos D. Keromytis
Associate Professor

Reid attended this class as part of his study away program at Columbia University in his junior fall term. Officially, he was a Visiting Undergraduate through the School of Continuing Education. The information is posted here in part so that Reid can share his experience with others who may be curious about studying away at another American institution.


Intermediate Programming Knowledge (COMS W1004, COMS W1007) or equivalent. // These courses are taught in Java.

Course Objectives

This course is a third course for majors in computer science (after COMS W1004 and COMS W1007).

The primary objective will be to learn the tools and tricks of working with programming projects and programming languages.

A secondary objective is to offer a practical, hands-on introduction to programming techniques and tools for professional software construction, including learning how to write code to given specifications as well as document the results.

Provides introductory overview of C and C++ in a UNIX environment (along with all the necessary tools to create and debug programs), for students with Java background. UNIX programming utilities are also covered. Lab required.

We will develop sound programming and design skills, problem solving and modeling of real world problems from science, engineering, and other areas of interest using anything that works.

Method of Instruction and Evaluation

There are three major components to a grade in this course: labs, homeworks, and the final.

   * 10 Labs: 120 points total
   * 3 homeworks: 60 points total
   * Midterm: 30 points
   * Final: 60 points

In other words, all the components are extremely important, but the hands on labs and homework's are especially significant. Class participation is also strongly urged. While there is no numerical grade attached to it, as neither participation nor attendance is strictly required, it's in your interest to make an acquaintance with me, especially if you're on the "borderline" between grades at the end of the semester. We may also give some bonus point opportunities on homeworks; these are added up after the curve at the end of the semester.




Reid's work

For Reid's personal work, you can check them out at Joe's SVN server. Note the README.