CSCI 1320 (Principles of Computer Science I):
Lecture Topics and Assignments

The table below shows what we will be discussing in each class meeting, readings, dates of exams and quizzes, and due dates for homeworks. Dates of exams are fixed; other items are subject to change. Readings are from the textbook unless otherwise indicated. Homework is due at 11:59pm on the date shown, unless otherwise indicated.

 
Date Topics Reading Due dates
August 22 (W) About the course (Notes) 1  
August 27 (M) Basics of the Linux command line and vi (Notes) 2.1, 2.2; video lectures  
August 29 (W) More about command line and vi; introduction to Scala (Notes) 2.3  
September 3 (M) Holiday    
September 5 (W) No class    
September 10 (M) Scala basics (Notes) 3.1, 3.2, 3.3, 3.4; video lectures Homework 1: HTML, PDF  
September 12 (W) Scala basics, continued (Notes) 3.5, 3.6, 3.7, 3.8, 3.9  
September 17 (M) Conditionals (Notes) 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7; video lectures  
September 19 (W) Functions (Notes) 5.1, 5.2, 5.3, 5.4; video lectures Quiz 1; Homework 2: HTML, PDF
September 24 (M) No class    
September 26 (W) No class    
October 1 (M) Functions, continued; introduction to recursion for repetition (Notes) 5.5, 5.6, 5.7, 5.8 Homework 3: HTML, PDF
October 3 (W) Recursion for repetition, continued (Notes) 6.1, 6.2, 6.3, 6.4; video lectures Quiz 2
October 8 (M) No class 6.5, 6.6, 6.7, 6.8 Homework 4: HTML, PDF  
October 10 (W) Midterm (Review in HTML, PDF)    
October 15 (M) Collection types (Notes) 7.1, 7.2, 7.3; video lectures  
October 17 (W) Collections and collection methods (Notes) 7.4  
October 22 (M) Argument passing and a few more collection methods (Notes) 7.5, 7.6, 7.7, 7.8, 7.9, 7.10, 7.11, 7.12  
October 24 (W) No class    
October 29 (M) Loops (Notes) 8.1, 8.2, 8.3; video lectures Quiz 3; Homework 5: HTML, PDF  
October 31 (W) Loops, continued (Notes) 8.4, 8.5, 8.6  
November 5 (M) Files in Scala (Notes) 9; video lectures Quiz 4  
November 7 (W) A little about objects and classes; case classes (Notes) 10; video lectures Homework 6: HTML, PDF
November 12 (M) No class    
November 14 (W) Case classes, continued; a little about errors (Notes)   Quiz 5; Homework 7: HTML, PDF  
November 19 (M) No class    
November 21 (W) Holiday    
November 26 (M) A little about sorting, searching, and (more) recursion (Notes) (skim) 13, 15; video lectures  
November 28 (W) A little about GUIs and graphics (Notes) (skim) 11, 12, 14; video lectures(11), video lectures(12), video lectures(14) Quiz 6
December 3 (M) Course wrap-up and evaluations (Notes)    
December 7 (F), 8:30am Final (Review in HTML, PDF)    
December 11 (T), 5pm     Extra-credit assignment: HTML, PDF