CS 101 - Fall 2008

The Computing Age

Announcements


Exams

  1. Midterm 1, Tue Oct 7, 7:30-9:30pm
  2. Midterm 2, Tue Nov 4, 7:30-9:30pm
  3. Final exam: Thu Dec 11, 9am-12 (A); and Tue Dec 9, 9am-12 (B)


Labs and Assignments

  1. Lab 1, Tue 9/9, Thu 9/11: HTML. Solutions. MMD
  2. Lab 2, Tue 9/16, Thu 9/18: Java. Solutions. MDD
  3. Lab 3, Tue 9/23, Thu 9/25: Circuits. Solutions. MDM
  4. Lab 4, Tue 9/30, Thu 10/2: Conditionals and Iteration. Solutions. MDD
  5. Lab 5, Tue 10/7, Thu 10/9: Architecture Simulation. Solutions. MMD was Lab 6
  6. AI Lab (YZ), Thu 10/16: Artificial Intelligence. D was Lab 9
  7. Lab 6, Tue 10/21, Thu 10/23: Debugging. Solutions. MDD was Lab 5
  8. Lab 7, Tue 10/28, Thu 10/30: I/O and object-oriented programming. Solutions. MDM
  9. Lab 8, Tue 11/4, Thu 11/6: Recursion. Solutions. MDD
  10. Lab 9, Tue 11/11, Thu 11/13: Arrays. MMD was Lab 10
  11. Lab 10, Tue 11/18, Thu 11/20: Final projects. MDD


Syllabus

Readings refer to the Computer Science text by Brookshear [CS] and the Java text by Reges & Stepp [J]. Please check back for updates and links to lecture notes, examples, and readings.

Date     Lectures S08   Reading
Week 1
Mon 9/8 DM Lect 1: Course Introduction L1 CS 0
Wed 9/10 D Lect 2: Java Basics (Examples) L2 CS 0; J 1.1-1.3
Fri  9/12 M Lect 3: More Java Basics (Examples) L3 J 1.4, 2.1, 3.1
 
Week 2
Mon 9/15 M Lect 4: Digital Representations: Integers and Images (Examples) L4a J 3.1; CS 1.4-5, 1.8
Wed 9/17 M Lect 5: Sound; Digital Electronics L4b J 3.1; CS 1.4-5, 1.8
Fri  9/19 D Lect 6: Basic Data Types and Operations (Examples) L5 J 1.2-5, 2.1, 3.1
 
Week 3
Mon 9/22 D Lect 7: Digital Circuits L6 CS 1.1, 1.5
Wed 9/24 M Lect 8: Variables and Assignment (Examples, animation - 8 MB) L7 J 2.2, 4.2
Fri  9/26 D Lect 9: Conditional Execution (Examples) L8 J 2.2, 4.2
 
Week 4
Mon 9/29 M Lect 10: Iteration (Examples) L9 J 2.3, 4.2, 4.4, 5.1-2
Wed 10/1 M Lect 11: Nested Constructs (Examples) L10 J 2.3, 4.2-3
Fri  10/3 D Lect 12: Numeric Representations L11 CS 1.1, 1.4-7
 
Week 5
Mon 10/6 D Lect 13: Computer Architecture L15 CS 2
Wed 10/8 M Lect 14: History of Computers L13 CS 0.2
Fri  10/10 D Lect 15: Programming Languages (Examples) L14 CS 6
 
Week 6
Mon 10/13 Fall break
Wed 10/15 D Lect 16: Artificial Intelligence (QuickTime Movies) L24 CS 11
Fri  10/17 M Lect 17: Social Issues, Privacy L17 CS 7.9, 9.7, 11.7
 
Week 7
Mon 10/20 D Lect 18: Return values, Scanner, Debugging (Examples) L12 J 3.2, 3.4
Wed 10/22 M Lect 19: Exceptions and Input/Output (Examples) L16 J 3.4, 6.4
Fri  10/24 D Lect 20: Object-Oriented Programming (Examples) L18 J 3.3, 8.1
 
Week 8
Mon 10/27 M Lect 21: More Object-Oriented Programming (Examples) L19 J 8
Wed 10/29 M Lect 22: Operating Systems L23 CS 3; this tutorial
Fri  10/31 D Lect 23: Recursion (Leaf) (Examples) L20 CS 5.5; J 12.1-3
 
Week 9
Mon 11/3 M Lect 24: More Recursion (Examples) L21 J 12.1-3, Turtle graphics
Wed 11/5 D Lect 25: The Internet and the World Wide Web L25 CS 4
Fri  11/7 D Lect 26: Even More Recursion (Examples, Applets) L22 CS 5.5; J 12.1-3
 
Week 10
Mon 11/10 M Lect 27: Arrays (Examples) L26 J 7.1-2
Wed 11/12 D Lect 28: Multi-dimensional Arrays (Examples) L27 J 7.1-4
Fri  11/14 D Lect 29: Graphics and GUIs (Examples) L29 J 3G.1, 14
 
Week 11
Mon 11/17 D Lect 30: GUIs and Events (Examples) L30 J 3G.1, 14
Wed 11/19 M Lect 31: Security L28 CS 3.5, 4.5
Fri  11/21 M Lect 32: Performance L31
 
Week 12
Mon 11/24 D Lect 33: Computational Complexity L32 CS 5.4-5.6; J 13
Wed 11/26 Thanksgiving break
Fri  11/28 Thanksgiving break
 
Week 13
Mon 12/1 M Lect 34: More Complexity L33 CS 5.4-5.6; J 13
Wed 12/3 D Lect 35: What Computers Can and Can't Do L34 CS 12
Fri  12/5 M Lect 36: What is Computer Science? L35