Schedule

September
MondayTuesdayWednesdayThursdayFriday
23 24 25
09:30-10:20 Lecture
CSE2 G10
Orientation
Slides
16:00-17:30 OH (Zhao)
CSE1 220
26
14:30-16:00 OH (Chu)
CSE2 121
27
09:30-10:20 Lecture
CSE2 G10
Introduction to Linux
Slides and Shell history.
Linux demo If you have a laptop, bring it to class.
30
09:30-10:20 Lecture
CSE2 G10
I/O Redirection and alias
Slides
Shell history, Alias demo
History shortcuts
Emacs motivation, Emacs demo
11:00-12:30 OH (Hazen)
CSE1 212
01
12:00-13:00 OH (Bagaria)
CSE2 274
13:00-15:00 OH (Luo)
CSE1 403
02
09:30-10:20 Lecture
CSE2 G10
Introduction to scripting
Slides
shiftdemo script, dcdls script, lectfour demonstration script
Redirection Demo
16:00-17:30 OH (Zhao)
CSE1 220
23:59 PRACTICE HW0 due; Shell Access Spec
03 04
09:30-10:20 Lecture
CSE2 G10
Scripting Continued
Slides
fibo script, sdel script
Review before class:
Exercises for this class session
Extras: Emacs motivation, Emacs demo
, Exercise demo
14:30-16:00 OH (Chu)
CSE1 4th Floor Breakout
October
MondayTuesdayWednesdayThursdayFriday
07
09:30-10:20 Lecture
CSE2 G10
RegEx, grep, sed
Slides
RegEx/Grep demo
RegEx Tester, RegEx Crosswords numberslist shell history
11:00-12:30 OH (Hazen)
CSE1 212
23:59 HW1 due; Bash Spec
08
12:00-13:00 OH (Bagaria)
CSE2 274
14:00-16:00 OH (Luo)
CSE1 403
09
09:30-10:20 Lecture
CSE2 G10
Version Control
Slides, Note: You can
git clone git@gitlab.cs.washington.edu:mh75/cse374-materials.git
to get all the C files, git demo
16:00-17:30 OH (Zhao)
CSE1 220
10
14:30-16:00 OH (Chu)
CSE2 121
11
09:30-10:20 Lecture
CSE2 G10
Introduction to C
Slides, hello.c, printargs.c
11:00-12:30 OH (Luo)
CSE2 376
23:59 HW2 due; Shell Script Spec
14
09:30-10:20 Lecture
CSE2 G10
C: control, declarations, preprocessor
Slides, magic.c, square1.c, control.c, control2.c
Useful gcc flags
11:00-12:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
15
12:00-13:00 OH (Bagaria)
CSE2 274
16
09:30-10:20 Lecture
CSE2 G10
C: Files and more pointers
Slides, fgets.c fopen.c
argumentdemo.c dangling.c
Challenges before Friday: mystery, mystery1, mystery2, mystery3, mystery4
16:00-17:30 OH (Zhao)
CSE1 220
17
14:30-16:00 OH (Chu)
CSE2 121
18
09:30-10:20 Lecture
CSE2 G10
C: Memory allocation & deallocation
Slides, argdemo, arraydemo.c, arraydynamic.c
11:00-12:30 OH (Luo)
CSE2 376
21
11:00-12:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
23:59 HW 3 due; Wordcount Spec
22
12:00-13:00 OH (Bagaria)
CSE2 274
23
09:30-10:20 Lecture
CSE2 G10
C: datatypes, structs, linked lists
Slides
scopedemo.c, point.c, typedef reading
16:00-17:30 OH (Zhao)
CSE1 220
24
14:30-16:00 OH (Chu)
CSE2 121
25
09:30-10:20 Lecture
CSE2 G10
C: Trees
Slides
linkedlist.c
linkedlist.c, linkedlist.h, linkedlistclient.c
11:00-12:30 OH (Luo)
CSE2 376
18:00-19:00 OH (Chu)
Zoom (link in Ed)
28
09:30-10:20 Lecture
CSE2 G10
Testing
Slides, curve.c, test.c, curve.h, db.h, Makefile_test
for.h, for.c, testfor.c
12:30-13:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
23:59 HW 4 due; Debugging HW Spec
29
12:00-13:00 OH (Bagaria)
CSE2 274
30
09:30-10:20 Lecture
CSE2 G10
More pre-processor, multiple files
Slides, debug.c, twice.c
16:00-17:30 OH (Zhao)
CSE1 220
31
14:30-16:00 OH (Chu)
CSE2 121
01
09:30-10:20 Lecture
CSE2 G10
Make and Build Dependencies
Slides, main.c, speak.c, shout.c speak.h, shout.h
Makefile1, Makefile2, Makefile3
11:00-12:30 OH (Luo)
CSE2 376
November
MondayTuesdayWednesdayThursdayFriday
04
09:30-10:20 Lecture
CSE2 G10
Variable types and storage / hexadecimal
Slides, hexdemo.c
11:00-12:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
23:59 HW 5 due; Testing T9 Spec
05
12:00-13:00 OH (Bagaria)
CSE2 274
06
09:30-10:20 Lecture
CSE2 G10
Buffer Overflows / Memory
Slides, buffover.c
16:00-17:30 OH (Zhao)
CSE1 220
07
14:30-16:00 OH (Chu)
CSE2 121
08
09:30-10:20 Lecture
CSE2 G10
Profiling / Review
Slides, particleswarm.h, particleswarm.c, mainopt.c, Makefile
11:00-12:30 OH (Luo)
CSE2 376
11
Veteran's Day
12
12:00-13:00 OH (Bagaria)
CSE2 274
23:59 HW 6 due; Implementing T9 Spec
13
09:30-10:20 Lecture
CSE2 G10
Intro to C++
Slides, Files (from cse374-materials): helloworld.cc, helloworld2.cc concat.cc, echonum.cc, manip.cc, reference.cc
16:00-17:30 OH (Zhao)
CSE1 220
14
14:30-16:00 OH (Chu)
CSE2 121
15
09:30-10:20 Lecture
CSE2 G10
C++ Classes
Slides,
Point.h, Point.cc, usePoint.cc,
People.cpp, People.h,
String.cpp, String.h
11:00-12:30 OH (Luo)
CSE2 376
18
09:30-10:20 Lecture
CSE2 G10
C++ Classes Continued
Slides, Complex.h, Complex.cc, testComplex.cc
11:00-12:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
23:59 HW 7 due; C Memory Spec
19
12:00-13:00 OH (Bagaria)
CSE2 274
20
09:30-10:20 Lecture
CSE2 G10
C++ Inheritance
Slides, Rectangle.cpp
Mystery.cpp, VirtualMystery.cpp
Additional sample code is in cse374-Materials/ccpcode/inheritance/
16:00-17:30 OH (Zhao)
CSE1 220
21
14:30-16:00 OH (Chu)
CSE2 121
22
09:30-10:20 Lecture
CSE2 G10
C++ Template, STL
Slides, Code available in cse374-Materials/cppcode/templates/
11:00-12:30 OH (Luo)
CSE2 376
25
09:30-10:20 Lecture
CSE2 G10
C++ Smart Pointers
Slides, Code available in cse374-Materials/cppcode/smartpointers/
11:00-12:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
23:59 HW 8 due; Basic C++ Vector Spec
26
12:00-13:00 OH (Bagaria)
CSE2 274
27
09:30-10:20 Lecture
CSE2 G10
Function Pointers and Concurrency
Slides, int1.c, int2.c, pthreadex.c
16:00-17:30 OH (Zhao)
CSE1 220
28
Thanksgiving
29
Native American Heritage Day
December
MondayTuesdayWednesdayThursdayFriday
02
09:30-10:20 Lecture
CSE2 G10
Concurrency and Races
Slides, banking.h, banking.cpp,
lock_example.cc, nolock_example.cc, thread_example.cc
11:00-12:30 OH (Hazen)
CSE1 212
17:00-18:00 OH (Luo)
CSE2 152
03
12:00-13:00 OH (Bagaria)
CSE2 274
04
09:30-10:20 Lecture
CSE2 G10
Review of Data Structures w/ Decision Tree example
Slides
16:00-17:30 OH (Zhao)
CSE1 220
05
14:30-16:00 OH (Chu)
CSE2 121
06
09:30-10:20 Lecture
CSE2 G10
AMA
11:00-12:30 OH (Luo)
CSE2 376
09
23:59 HW 9 due; C++ Expression Spec
10 11 12 13