CS 101 - Spring 2009

The Computing Age

Announcements


Exams

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


Labs and Assignments

  1. Lab 1, Thu 2/12: HTML Solutions. TT BB 
  2. Lab 2, Thu 2/19: Java. Solutions. BBB
  3. Lab 3, Thu 2/26: Circuits. Solutions. TTT
  4. Lab 4, Thu 3/5: Conditionals and Iteration. Solutions. BBB
  5. Lab 5, Thu 3/12: Debugging. Solutions. TTT
  6. Lab 6, Thu 3/19: Architecture Simulation. Solutions. BBB
  7. Lab 7, Thu 4/2: I/O and object-oriented programming. Solutions. TTT
  8. Lab 8, Thu 4/9: Recursion. Solutions. BBB
  9. Lab 9, Thu 4/16: Artificial Intelligence. TTT
  10. Lab 10, Thu 4/23: Arrays. Solutions. BBB
  11. Lab 11, Thu 4/30: Final projects. TTT
  12. Lab 12, Thu 5/7: Final projects. BBB


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