CS 65: Introduction to Computer Science
Spring 2023
Instructor: Md Alimoor Reza
Assistant Professor of Computer Science
Department of Mathematics and Computer Science
Drake University

Class room: Collier-Scripps # 301
Meeting time (Section#1004): Tues (09:30am-10:45pm) and Thurs (09:30am-10:45pm)
Meeting time (Section#1791): Tues (11:00am-12:15pm) and Thurs (11:00am-12:15pm)
Office hours: Tues + Wed + Thurs (12:30pm-1:30pm) or by appointment


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


Date Topic Reading Items due
week 1 (Tue: 01/24)

  Introduction to Computer Science
  Lecture 1 slide
  Lab 1

 
  Lab 1 (released on 01/25)
week 1 (Thu: 01/26)

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

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

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

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

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

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

  Boolean expression
  Conditionals
  Lecture 8 slide
  Lab 3  

  Reading: Chapter 7
  Lab 2 (due by 02/16)
week 5 (Tue: 02/21)

  Random numbers
  Conditionals (continued)
  Lecture 9 slide
 
  Reading: Chapter 7

 
 
week 5 (Thu: 02/23)

  Sequence: String, List
  Content Quiz 2
  Lecture 10 slide
 
  Reading: Chapter 9

  Content Quiz 2 (due by 02/23)
  Lab 3 (due by 02/26)
week 6 (Tue: 02/28)

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

  Loop (for loop)
  Lecture 12 slide
 

  Reading: Chapter 7
  Reading: Chapter 8
 
 
week 7 (Tue: 03/07)

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

 
week 7 (Thu: 03/09)

  loop (for loop) review
  Content Quiz 3
 
  Reading: Chapter 10
  Content Quiz 3 (due by 03/09)
week 8 (Tue: 03/14)

  Spring break (no class)
 
 
week 8 (Thu: 03/16)

  Spring break (no class)
 
 
 
week 9 (Tue: 03/21)

  Assignment 2 (discussion)
  String
  Lecture 14 slide

  Reading: Chapter 8
 
week 9 (Thu: 03/23)

  String formating
  Lecture 14 slide

  Reading: Chapter 9
 
 
week 10 (Tue: 03/28)

  Classes and objects
  Lecture 15 slide

  Reading: Chapter 15
  Assignment 1 (due by 03/28)
week 10 (Thu: 03/30)

  Accessing Object Attributes and Methods
  Lecture 16 slide
  Content Quiz 4

 
  Reading: Chapter 16
  Reading: Chapter 17
  Content Quiz 4 (due by 03/30)
week 11 (Tue: 04/04)

  Errors, Exceptions and try-except blocks
  Guest Lecture by Dr Ritu Shandilya
  Lecture 17 slide

  Reading: Chapter 21
 
 
week 11 (Thu: 04/06)

  Class/Object: Scope and Visibility
  Class/Object: Inheritance
  Lecture 18 slide

  Reading: Chapter 18
week 12 (Tue: 04/11)

  Final project discussion + proposal
  List operations (add, update, and remove)
  Lecture 19 slide
  Lecture 20a slide


  Reading: Chapter 10

 
week 12 (Thu: 04/13)

  List operations (remove)
  List of lists
  Lecture 20b slide
  Content Quiz 5

  Reading: Chapter 10
  Content Quiz 5 (due by 04/13)
week 13 (Tue: 04/18)

  Assignment 3 discussion
  List of lists (continue)
  Dictionaries
  Lecture 21a slide

  Reading: Chapter 14

  Final project proposal (due by 04/18)
week 13 (Thu: 04/20)

  Dictionaries (continued)
  Tuples
  Lecture 21b slide

  Reading: Chapter 11
  Reading: Chapter 12
 
week 14 (Tue: 04/25)


  File I/O (read operation)
  Lecture 22 slide

  Reading: Chapter 14

  Assignment 3 (due by 04/25)

week 14 (Thu: 04/27)

  File I/O (write and append operations)
  Assignment 4 discussion
  Lecture 23 slide

 
  Reading: Chapter 14
 
 
week 15 (Tue: 05/02)

  Content Quiz 6
  Project presentation (Session I)

 
Content Quiz 6 (due by 05/02)
week 15 (Thu: 05/04)

  Course Evaluation
  Project presentation (Session II)

 

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