CS 65: Introduction to Computer Science (Fall 23)
Instructor: Md Alimoor Reza
Assistant Professor of Computer Science
Department of Mathematics and Computer Science
Drake University

Class room: Harvey Ingham # 0019
Meeting time: Tues (2:00 pm - 3:15pm) and Thurs (2:00 pm - 3:15pm)
Office hours: Tues + Wed + Thurs (03:30pm-5:00pm) or by appointment


Schedule
A tentative schedule below (subject to change as we progress).


Date Topic Reading Items due
week 1 (Tue: 08/29)

  Introduction to Computer Science
  Lecture 1 slide
  Lab 1 (released)

 
  Lab 1 (released on 08/29)
week 1 (Thu: 08/31)

  Variables, expression, and statements
  Lecture 2 slide
 
  Reading: Chapter 1
  Reading: Chapter 2
 
week 2 (Tue: 09/05)

  Functions (part 1)
  Lecture 3 slide
 
  Reading: Chapter 3
 
week 2 (Thu: 09/07)

  Functions (part 2)
  Lecture 4 slide
 
  Reading: Chapter 3
  Lab 1 (due by 09/07)
week 3 (Tue: 09/12)

  Import a module
  Variable scope resolution (local vs global)
  Content quiz 1 review
  Lab 2 (released)
  Lecture 5 slide
 
 
  Lab 2 (released on 09/12)
week 3 (Thu: 09/14)

  Graphical interface (part 1)
  Content Quiz 1
  Lecture 6 slide
 
  Reading: Graphics
  Content Quiz 1
week 4 (Tue: 09/19)

  Graphical interface (part 2)
  Lecture 7 slide
 
 
  Reading: Graphics
 
week 4 (Thu: 09/21)

  Boolean expression
  Conditionals
  Lecture 8 slide
  Lab 3 (released)  

  Reading: Chapter 5
  Lab 2 (due by 09/21)
week 5 (Tue: 09/26)

  Random numbers
  Conditionals (continued)
  Sequence: String
  Lecture 9 slide
 
  Reading: Chapter 5
  Reading: Chapter 8

 
 
week 5 (Thu: 09/28)

  Sequence: List
  Content Quiz 2
  Lecture 10 slide
 
  Reading: Chapter 10

  Content Quiz 2 (due by 09/28)
  Lab 3 (due by 09/29)
week 6 (Tue: 10/03)

  Loop (while loop)
  Loop (for loop)
  Lecture 11 slide
 
  Reading: Chapter 7
 
 
week 6 (Thu: 10/05)

  Loop (for loop)
  Lecture 12 slide
 

  Reading: Chapter 7
  Reading: Chapter 8
 
 
week 7 (Tue: 10/10)

  Loop (value for loop vs index for loop)
  Loop (nested for loop)
  Nested Loop Visualization
  Lecture 13 slide
  Assignment 1 (released)

 
week 7 (Thu: 10/12)

  loop (for loop) review
 
  Reading: Chapter 10
 
week 8 (Tue: 10/17)

  Fall break (no class)
 
 
week 8 (Tue: 10/19)

  Assignment 2 (discussion)
  String
  Lecture 15 slide

  Reading: Chapter 8
 
week 9 (Thu: 10/24)

  String formating
  Content Quiz 3
  Assignment 2 (released)
  Lecture 16 slide

  Reading: Chapter 9
 
  Content Quiz 3 (due by 10/24)
week 9 (Tue: 10/26)

  String formating (continued)
  List operations (add and update)
  Lecture 17a slide
  Lecture 17b slide


  Reading: Chapter 10

 
week 10 (Tue: 10/31)

  List operations (add and update)
  List operations (remove)
  Lecture 17b slide
  Lecture 18a slide

  Reading: Chapter 10

week 10 (Thu: 11/02)

  List of lists
  Lecture 18b slide
  Content Quiz 4

  Reading: Chapter 10
 
  Assignment 2 (due by 11/02)
week 11 (Thu: 11/07)

  Final project discussion + proposal
  List of lists (continued)
  Dictionary
  Lecture slide 19a
  Lecture slide 19b
  Lecture slide 20

  Reading: Chapter 11

 
week 11 (Tue: 11/09)

  Dictionary (add, update, and remove operations)
  Iterating through a dictionary
  Lecture 21 slide

  Reading: Chapter 11

 

week 12 (Thu: 11/14)

  Assignment 3 (released)
  Assignment 3 (discussion)

 
  Reading:
 
  Final project proposal (due by 11/14)
week 12 (Tue: 11/16)

  Dictionary (wrap up)
  Tuples
  Lecture 22 slide
  Content Quiz 5

  Reading: Chapter 11
  Reading: Chapter 12
 
  Content Quiz 5 (due by 11/16)
week 13 (Thu: 11/21)

  File I/O (read, write and append operations)
  Lecture 23 slide

 
  Reading: Chapter 14
 
week 13 (Thu: 11/23)

  Thanksgiving break (no class)
 
 
    Assignment 3 (due by 11/23)

week 14 (Tue: 11/28)

  Classes and objects
  Lecture 24 slide

  Reading: Chapter 15
  Reading: Chapter 16
  Reading: Chapter 17
 
 
week 14 (Thu: 11/30)

  Accessing Object Attributes and Methods
  Lecture 25 slide

  Reading: Chapter 18
week 15 (Tue: 12/05)

  Course Evaluation
  Class/Object: Scope and Visibility
  Class/Object: Inheritance
  Lecture 26 slide
  Content Quiz 6
  Reading: Chapter 21
Content Quiz 6 (due by 12/05)
week 15 (Thu: 12/07)

  Errors, Exceptions and try-except blocks
  Project presentation (Session I)

 

 
Week 16 (Tue: 12/12)
 
 
  Final project code + slides
 
 
 
  Assignment 4 (due by 12/12)
  Final Project (due by 12/12)