Lecture: Monday, Wednesday, Friday 10:30-11:20 CMU120
Section AA: Thursday 8:30-9:20 EEB003
Section AB: Thursday 9:30-10:20 EEB003
Section AC: Thursday 10:30-11:20 EEB105
All office hours will be held in the undergraduate labs in the basement of the Allen Center, room 006, except Dan's hours, which will be held in his office, room 574 of the Allen Center.
Dan Grossman, Allen Center 574, Wednesdays 9:00-10:00AM
Brandon Dalesandro, Fridays 11:30AM-12:30PM
Brian Griffith, Mondays 2:30-3:30PM
Riley Klingler, Thursdays 3:00-4:00PM
Alex Mariakakis, Tuesdays 1:00-2:00PM
Uldarico Muico, Wednesdays 2:00-3:00PM
Karthik Palaniappan, Thursdays 11:00AM-Noon
Course Email List (mandatory): You should receive email sent to the course mailing list regularly, roughly at least once a day. Any important announcements will be sent to this list.
Email sent to email@example.com (not @u...) will reach the instructor and all the TAs. For questions multiple staff members can answer, please use this email so that you get a quicker reply and the whole staff is aware of points of confusion.
All staff: firstname.lastname@example.org (not @u...)
Instructor: Dan Grossman, email@example.com (not @u...)
TA: Brandon Dalesandro, firstname.lastname@example.org (not @u...)
TA: Brian Griffith, email@example.com (not @u...)
TA: Riley Klingler, firstname.lastname@example.org (not @u...)
TA: Alex Mariakakis, email@example.com (not @u...)
TA: Uldarico Muico, firstname.lastname@example.org (not @u...)
TA: Karthik Palaniappan, email@example.com (not @u...)
Course Discussion Board (optional but encouraged)
Anonymous Feedback (goes only to the instructor)
We will use a Catalyst dropbox only for early assignments in the course. After that, turn in will be via version-control.
Late-Day Request Form (required to use late days starting with Homework 2)
Beginning-of-course questionnaire: on-line survey worth 0 points, "due" Thursday Janunary 9
For each reading, there is a short quiz due as indicated below. Quizzes are on Catalyst and are available only to students registered in the course. Abbreviations:
PP = The Pragmatic Programmer
EJ = Effective Java, 2nd Edition
Covers material through Lecture 10, Reading Quizzes Batch 3, and Section 4. Old exams may cover different materials and are no guarantee of style/format/difficulty etc. of our exam. See email sent to the class for more information.
While material in all lectures (1 through 20), sections, readings, and homeworks is “fair game,” the questions will very heavily emphasize the material that was not covered on the midterm. There will not be time on the exam to test all topics. Old exams may cover different materials and are no guarantee of style/format/difficulty etc. of our exam. In particular, we did not cover usability, UI prototyping, or static nullness checking, so exam questions about them are not relevant.
CSE331 handouts about tools:
CSE331 handouts about concepts:
External links of potential use:
Acknowledgments: This course offering relies heavily on previous versions of the course, particularly the infrastructure and content developed by Michael D. Ernst and adapted by other instructors, particularly Hal Perkins and David Notkin, as well as many excellent previous course-staff members.