|
CSE Home | About Us | Search | Contact Info |
Syllabus
Academic-Integrity Policy
Extra-Credit Policy
Meetings: MWF 12:30-1:20, EEB 037
Class
discussion list
Class
email list archives
Instructor: Hal Perkins; perkins(at)cs; CSE 548, office hours: Mon. & Wed.
3:30-4:30.
TAs: Christopher Hoover, furby16(at)cs, office hours Thur. 2:30-3:30, CSE 218;
Dun-Yu Hsiao, dyhsiao(at)cs; office hours Tue. 3-4, CSE 220.
Dropbox for assignment submission
Homework 1, due Thursday, April 1, at 11 pm.
Homework 2, due Thursday, April 8, at 11 pm.
Homework 3, due Monday, April 19, at 11 pm.
Homework 4, due Wednesday, April 28, at 11 pm.
Homework 5, due Thursday, May 13, at 11 pm.
Homework 6, due: 0. Partner info, Saturday,
May 15 at 11 pm; Headers and skeleton code, Thursday, May 20 at 11 pm (no
late assignments for this part); Final
code, Thursday, May 27, at 11 pm.
Homework 7, due Thursday, June 3, at 11 pm.
You have up to four (4) late days to use during the quarter, no more than two (2) of which can be used on any one assignment. For assignments done with partners, late days can only be used if both partners have them available.
Here is a selection of old exams from CSE 374 and the related course, CSE 303. Different offerings of these courses covered slightly different things. You won't be tested on things we did not do this quarter.
This quarter's final: exam sample solution
Old CSE 374 final exam: sp09 (solution)
Some old CSE 303 final exams: wi09 (solution); au08 (solution); sp08 (solution); au07 (solution)
This quarter's midterm: exam sample solution
Old CSE 374 midterm: sp09 (solution)
Some old CSE 303 midterms:
wi09 (solution); au08 (solution); sp08 (solution); au07 (solution)
Tentative schedule to be updated as the quarter progresses. Slides will be posted no later than the morning before class. Sample code and other files will be posted shortly after the corresponding lecture.
1. March 29: Course Introduction, Shell Basics slides
2. March 31: Processes, Users, Shell Special Characters, Emacs slides;
A command sampler slides; shell
history from lecture
3. Apr 2: I/O Redirection, Shell Scripts;
slides, scripts, large
picture, shell history
4. Apr 5: Shell Variables, More Shell Scripts; slides, scripts,
shell history
5. Apr 7: Regular Expressions (and more), grep, Other Utilities; slides shell
history
6. Apr 9: Regular expressions and grep (concl.), sed; slides shell
history
7. Apr 12: Command-line tools wrapup, shell
history; Introduction to C
slides
8. Apr 14: C intro continued, annotated
slides
9. Apr 16: C: Control constructs, declarations,
preprocessor intro, printf slides annotated
slides
10. Apr 19: C: locals,
left vs. right expressions slides annotated
slides
11. Apr 21: C: malloc/free slides annotated
slides
12. Apr 23: Tools:
gdb (start) slides gdb
manual original reverse.c debugging
transcript
13. Apr 26: gdb and debugging (concl.) debugging
transcript fixed reverse.c; C:
Structs, linked lists, and casts slides sample
code: structs.c list.c
14. Apr 28: C: Structs (concl.) annotated
slides; Preprocessor revisited,
multifile programs slides;
quick exam review.
15. April 30: Midterm, in class
X. May 3: No class. NAE symposium downtown for some students.
16. May 5: Next assignment & tries
17. May 7: C: preprocessor wrapup annotated
slides ; Tools: Make and build dependencies slides demo
project
18. May 10: Make demo
19. May 12: Coding and commenting annotated slides from lecture
20. May 14 :Memory management and hw6 slides
from lecture [updated 5/22]
21. May 17: Version control and svn demo slides annotated
slides shell histories: natasha boris;
subversion book
22. May 19: Testing slides annotated
slides from lecture
23. May 21: Specification slides annotated
slide from lecture
24. May 24: Specification (concl.); C++: intro slides; example
classes: BankAccount string ; cplusplus.com
tutorial Google C++ Style Guide
25. May 26: C++ (cont.)
26. May 28: C++: subclasses and inheritance slides property
classes
demo
X. May 31: No class, Memorial Day holiday
27. June 2: C++ virtual functions (wrapup); Shared-memory concurrency slides
28. June 4: Concurrency (concl.); Course Summary
X. Wednesday, June 9: Final exam review, 4:30 pm, CSE 403
X. Thursday, June 10: Final exam, 8:30-10:20 am.
A Quick-And-Dirty Getting-Started Guide
The Bash Manual
Stanford CS library: Essential
C, Unix Programming Tools
Are the texts required?
Linux
Pocket Guide by Daniel J. Barrett, O'Reilly, 2004.
C:
A Reference Manual (5th Edition) by Samuel P. Harbison, Guy L. Steele.
Prentice Hall, 2002.
Programming
in C by Stephen Kochan, Sams, 2005.
And for an alternative opinion, The Unix-Haters Handbook by Garfinkle, Weise & Strassmann, IDG, 1994 (i.e., in pre-Linux times).
Computer Science & Engineering University of Washington Box 352350 Seattle, WA 98195-2350 (206) 543-1695 voice, (206) 543-2969 FAX [comments to Hal Perkins] |