Bruce Draper
Office: CSB 442
Office Hours: Th:10:00-11:00AM, Fri:2:00-3:00
Fereydoon Vafaei
Office: CSB 235 Desk 10 (120 lab during the office hours)
Office Hours: Wed:4:00-5:00pm, Fri:9:00-10:00am
Tomojit Ghosh
Office: CSB 335 Desk 9 (120 lab during the office hours)
Office Hours: Mon:11:00am-1:00pm, Tue:2:00-3:00, Th:11:00-1:00, Fri:1:00-2:00
Lecture Time and Place:
10:00 - 10:50, Mon, Wed, Fri, Behavioral Sciences 131
Recitation 1 Time and Place:
1:00-1:50, Mon, CSB 225
Recitation 2 Time and Place:
3:00-3:50, Wed, CSB 225
Recitation 3 Time and Place:
3:00-3:50, Fri, CSB 225
Recitation 4 Time and Place:
1:00-1:50, Fri, CSB 225
Recitation 5 Time and Place:
8:00-8:50, Wed, CSB 225

CS253 is the final course in the programming sequence that includes CS160, CS161, CS200 and CS270. One goal of CS253 is to teach C++, since the previous courses in the curriculum are in Java (CS160/161/200) or C (CS270). The more significant goal, however, is to complete the process of training a professional programmer. When this course is complete, you should have a better understanding of (1) the strengths, weaknesses and roles of different languages; (2) how C++ and Java programs are mapped onto hardware; (3) different models of object oriented programming; (4) memory management models; (5) how to write efficient code; and (6) how to exploit templates. In addition, you should be better at using software development tools. The recitations (which are a mandatory and important part of the course) give hands-on experience with tools used for software development in Linux, including gdb, subversion, valgrind and google test.

PA5 grading test cases are up (under the assignment tab). Grades will be released on Monday.