CS 60: Principles of Computer Science

Fall 2025

Instructors Prof Sophie Engle Prof Beth Trushkowsky
Administrative Class Resources Software Quiz/Exam Practice
Syllabus
Gradescope
Piazza
Canvas
CS60 Grutoring Schedule
Racket Reference Card
Racket Guide
CS60 Style Guide
From Python to Java
CS 60 Software Setup
(Guide to getting Dr Racket,
Java, and VS Code)
Quiz 1 Practice
Quiz 2 Practice
Week Tuesday Lecture HW due Weds. 9pm Thursday Lecture HW out Thursday
01 Lec 01: Intro to Racket Lec 02: Racket Recursion and Let, Java Vars and Conditionals HW 1: Racket Recursion
02 Lec 03: Java Loops, Big-O, Series HW 1 Lec 04: Loop counting, recurrence relations HW 2: Big O and Recurrences
03 Lec 05: Java Arrays and Racket Lists HW 2 Lec 06: More Java Arrays and Racket Lists HW 3: Lists and Arrays
04 Lec 07: Racket HOFs HW 3 Lec 08: Racket HOFs, lambda, Java Strings HW 4: HOFs in Racket
05 Lec 09: Intro to Java OOP HW 4 Lec 10: Quiz 1 Review HW 5: OOP in Java
06 Lec 11: Quiz 1 HW 5 Lec 12: Java Object-Oriented Programming
07 Lec 13: Java List Lec 14: Java Lists and MergeSort
08 No lecture: Fall Break Lec 15: Inheritance

Example Java classes
HW 6: Lists in Java
09 Lec 16: Interfaces HW 6 Lec 17: Intro to Binary Search Trees HW 7: Inheritance
10 Lec 18: BSTs Implementation HW 7 Lec 19: Quiz 2 Review
11 Lec 20: Quiz 2
12
13
14
15