CS 101 - Spring 2008

The Computing Age

Announcements


Exams

  1. Midterm 1, Tue March 11, 7:30-9:30pm, MBH 219.
  2. Midterm 2, Tue April 15, 7:30-9:30pm, MBH 219.
  3. Final Exam


Labs and Assignments

  1. Lab 1, Tue 2/12, Thu 2/14: HTML. Solutions. BBMM (D will help start both)
  2. Lab 2, Tue 2/19, Thu 2/21: Java. Solutions. BBMM
  3. Lab 3, Tue 2/26, Thu 2/28: Circuits. Solutions. BBDD
  4. Lab 4, Tue 3/4, Thu 3/6: Conditionals and Iteration. Solutions. BBDD
  5. Lab 5, Tue 3/11, Thu 3/13: Debugging. Solutions. DDMM
  6. Lab 6, Tue 3/18, Thu 3/20: Architecture Simulation. Solutions. BBDD
  7. Lab 7, Tue 4/1, Thu 4/3: I/O and object-oriented programming. Solutions. BBMM
  8. Lab 8, Tue 4/8, Thu 4/10: Recursion. Solutions. BBDD
  9. Lab 9, Tue 4/15, Thu 4/17: Artificial Intelligence. DDDD
  10. Lab 10, Tue 4/22, Thu 4/24: Arrays. Solutions. BBMM
  11. Lab 11, Tue 4/29, Thu 5/1: Final projects. BBMM
  12. Lab 12, Tue 5/6, Thu 5/8: Final projects. BBMM


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 Reading
Week 1
Mon 2/11 DM Lect 1: Course Introduction CS 0
Wed 2/13 D Lect 2: Java Basics (Examples) CS 0; J 1.1-1.3
Fri  2/15 M Lect 3: More Java Basics (Examples) J 1.4, 2.1, 3.1
 
Week 2
Mon 2/18 M Lect 4: Digital Representations J 3.1; CS 1.4-5, 1.8
Wed 2/20 D Lect 5: Basic Data Types and Operations (Examples)     J 1.2-5, 2.1, 3.1
Fri  2/22 Winter Carnival
 
Week 3
Mon 2/25 D Lect 6: Digital Circuits CS 1.1, 1.5
Wed 2/27 M Lect 7: Variables and Assignment (Variables as boxes animation)    J 2.2, 4.2
Fri  2/29 D Lect 8: Conditional Execution (Examples) J 2.2, 4.2
 
Week 4
Mon 3/3 M Lect 9: Iteration (Examples) J 2.3, 4.2, 4.4, 5.1-2
Wed 3/5 D Lect 10: Nested Constructs (Examples) J 2.3, 4.2-3
Fri  3/7 D Lect 11: Numeric Representations CS 1.1, 1.4-7
 
Week 5
Mon 3/10 D Lect 12: Return values, Scanner, Debugging (Examples) J 3.2, 3.4
Wed 3/12 Bob Lect 13: History of Computers CS 0.2
Fri  3/14 D Lect 14: Programming Languages (Examples) CS 6
 
Week 6
Mon 3/17 D Lect 15: Computer Architecture CS 2
Wed 3/19 M Lect 16: Exceptions and Input/Output (Examples) J 3.4, 6.4
Fri  3/21 M Lect 17: Social Issues, Privacy CS 7.9, 9.7, 11.7
 
Spring Break
 
Week 7
Mon 3/31 M Lect 18: Object-Oriented Programming (Examples) J 3.3, 8.1
Wed 4/2 M Lect 19: More Object-Oriented Programming (Examples) J 8
Fri  4/4 D Lect 20: Recursion (Leaf) (Examples) CS 5.5; J 12.1-3
 
Week 8
Mon 4/7 M Lect 21: More Recursion (Examples) J 12.1-3 Turtle graphics
Wed 4/9 D Lect 22: Even More Recursion (Examples, Applets) CS 5.5; J 12.1-3
Fri  4/11 M Lect 23: Operating Systems CS 3, this tutorial
 
Week 9
Mon 4/14 D Lect 24: Artificial Intelligence (QuickTime Movies) CS 11
Wed 4/16 M Lect 25: The Internet and the World Wide Web       CS 4
Fri  4/18 D Lect 26: Arrays (Examples) J 7.1-2
 
Week 10
Mon 4/21 M Lect 27: Multi-dimensional Arrays (Examples) J 7.1-4
Wed 4/23 Bob Lect 28: Security CS 3.5, 4.5
Fri  4/25 D Lect 29: Graphics and GUIs (Examples) J 3G.1, 14
 
Week 11
Mon 4/28 D Lect 30: GUIs and Events (Examples) J 3G.1, 14
Wed 4/30 M Lect 31: Performance
Fri  5/2 M Lect 32: Computational Complexity (Sort Applet), (Examples) CS 5.4-5.6; J 13
 
Week 12
Mon 5/5 M Lect 33: More Complexity (Examples) CS 5.4-5.6; J 13
Wed 5/7 D Lect 34: What Computers Can and Can't Do CS 12
Fri  5/9 M Lect 35: What is Computer Science?