CSE 331: Software Design & Implementation

Course Overview

The aim of this course is to train students to have the core programming skills necessary to be successful professional programmers. It teaches students a principled approach to designing & implementing software so that it will be almost certainly correct, as well as easy to understand and change.

See the course information page for full details on the course structure, policies, and staff members.

Communication

In addition to in-person discussion, students and staff will communicate through the following means:

  • Course Mailing List: Used by the instructors to email the class with important announcements. (All students are auto-subscribed, but be sure to check your @uw email for these messages.)
  • Message Board (link): The preferred way to ask questions about course content and homework assignments. We will aim to respond to all questions within one hour during normal, working hours.
  • Staff Mailing List (cse331-staff at cs): Used for private matters not suitable for the message board.
  • Anonymous Feedback (link): You can send feedback anonymously to the instructors via this tool.

Weekly Schedule

We have lectures Monday, Wednesday, and Friday, quiz sections on Thursday, and office hours spread throughout the week. The following table shows their times and locations.

Monday Tuesday Wednesday Thursday Friday
10:30–11:20 Lecture A
JHN 102
11:30–12:20 OH (Medha)
CSE 2nd floor breakout
12:30–1:20 OH (Edison)
CSE 2nd floor breakout
1:30–2:20 OH (Michelle)
CSE2 151
2:30–3:20 Lecture B
KNE 210
4:30–5:20 OH (Collin)
CSE 2nd floor breakout
9:00–10:00 OH (Riva)
CSE2 131
11:30–12:20 OH (Liza, Adam)
12:30–1:00 OH (Adam)
1:00–2:00 OH (Gargi, Adam)

CSE2 131
1:30–2:20 OH (Vinay +2)
CSE 2nd floor breakout
3:30–4:20 OH (Ali)
CSE2 121
9:00–10:00 OH (Jaela)
CSE 2nd floor breakout
10:30–11:20 Lecture A
JHN 102
12:30–1:20 OH (Adam, Katherine)
CSE2 131
2:30–3:20 Lecture B
KNE 210
3:30–4:20 OH (Kevin)
CSE 436
8:30–4:20 Quiz Sections
see the time schedule
10:00–11:00 OH (Alex)
CSE 2nd floor breakout
11:00–12:00 OH (James)
CSE 440 or Zoom
3:00–4:00 OH (Lainey)
CSE2 121
10:30–11:20 Lecture A
JHN 102
12:30–1:20 OH (George)
CSE2 121
2:30–3:20 Lecture B
KNE 210

The regular weekly schedule has the following exceptions:

  • There are no activities on holidays listed on the course calendar.

  • Occasional office hours may be cancelled for various reasons. When this happens, the staff member holding those hours will announce that on the message board.

  • There are no office hours during finals week or before Friday of the first week unless a staff member announces otherwise on the message board.

See the course calendar for further details of each day's required activities, including the due dates of homework assignments.

Section meetings

section time building room tas
AA 830 ECE 031 Gargi Panatula, Vinay Pritamani
AB 930 ECE 054 Ali Toghani, Medha Gupta
AC 1030 MGH 231 Katherine Murphy, Liza Zakharova
AD 1130 ECE 054 Jaela Field, Katherine Murphy
AE 1230 ECE 042 Ali Toghani, Riva Gore
BA 1230 SAV 155 Edison Leung, Lainey Gikyo Jeon
BE 1230 MGH 242 Jaela Field, Michelle Arquiza
BB 1330 LOW 220 Adam Fuegmann, Collin Dang
BC 1430 MGH 242 Alex Zhang, George Zhang
BD 1530 ECE 026 Adam Fuegmann