Schedule

Click here for the class meeting and precept schedule and rooms

Click here for the latest office hours schedule

Please note that errata for the lecture videos and textbook can be found here.

Week Date Topic Assignments
0 Mon, Jan 24 No precept Install COS 126 IntelliJ on your laptop:
Mac OS X
Windows
Linux
Tue, Jan 25 No precept
Wed, Jan 26 &
Thu Jan 27
Lecture: Intro to Java Part 1 Video | Slides
Reading: 1.1
Precept: Command Line
See Ed for instructions
for accessing the lecture videos.
Thu, Jan 27 Class Meeting: Welcome to COS 126! 3:00pm Zoom link
Sun, Jan 30 Hello due
1 Mon, Jan 31 &
Tue, Feb 1
Lecture: Intro to Java Part 2 Video | Slides
Reading: 1.2
Precept: Data Types
Wed, Feb 2 &
Thu, Feb 3
Lecture: Conditionals & Loops Video | Slides
Reading: 1.3
Precept: Conditionals & Loops
Thu, Feb 3 Class Meeting: Debugging and Testing 3:00pm Zoom link
Sun, Feb 6 Loops due
2 Mon, Feb 7 &
Tue Feb 8
Lecture: Arrays Video | Slides
Reading: 1.4
Precept: Arrays
Wed, Feb 9 &
Thu Feb 10
Lecture: IO Video | Slides
Reading: 1.5
Precept: StdIn and StdDraw
Thu, Feb 10 Class Meeting: N-Body Tips
Sun, Feb 13 N-Body due
3 Mon, Feb 14 &
Tue, Feb 15
Lecture: Functions Video | Slides
Reading: 2.1-2
Precept: Functions
Wed, Feb 16 &
Thu, Feb 17
Precept: Functions and Pass-by-value
Thu, Feb 17 Class Meeting: Practice Programming Exam
Sun, Feb 20 Functions due
4 Mon, Feb 21 &
Tue, Feb 22
Lecture: Recursion Video | Slides
Reading: 2.3
Precept: Recursion
Wed, Feb 23 &
Thu, Feb 24
Precept: Written Exam 1 Review
Thu, Feb 24 Class Meeting: Written Exam 1
Sun, Feb 27 Graphics due
5 Mon, Feb 28 &
Tue, Mar 1
Lecture: Computing Machine Video | Slides
Reading: 6.1-2
Precept: Number Systems
Wed, Mar 2 &
Thu Mar 3
Lecture: von Neumann Video | Slides
Reading: 6.3-4
Precept: Toy Programming
Thu, Mar 3 Class Meeting: Programming Exam 1
Mon, Mar 7 - Fri, Mar 11 Break
Sun, Mar 13 Hamming due
current leaderboard
6 Mon, Mar 14 &
Tue Mar 15
Lecture: ADTs Video | Slides
Reading: 3.1
Precept: Using Data Types
Wed, Mar 16 &
Thu Mar 17
Lecture: Creating Data Types Video | Slides
Reading: 3.2-3
Precept: Creating Data Types
Thu, Mar 17 Class Meeting: Final Project Intro & ML Classifier Tips
Sun, Mar 20 ML Classifier due
7 Mon, Mar 21 &
Tue, Mar 22
Lecture: Performance Video | Slides
Reading: 4.1
Precept: Performance
Wed, Mar 23 &
Thu, Mar 24
Lecture: Sorting/Searching Video | Slides
Reading: 4.2
Precept: Sorting & Searching, More Objects
Thu, Mar 24 Class Meeting: Guitar Hero Tips
Sun, Mar 27 Guitar Hero due
8 Mon, Mar 28 &
Tue, Mar 29
Lecture: Stacks & Queues Video | Slides
Reading: 4.3
Precept: Stacks/Queues/ Linked Lists
Wed, Mar 30 &
Thu, Mar 31
Lecture: Symbol Tables Video | Slides
Reading: 4.4
Precept: ST and BST
Thu, Mar 31 Class Meeting: Final Project Ideation Workshop with the Center for Digital Humanities & Markov Tips
Sat, Apr 2 Final Project Proposal due at 8pm
Sun, Apr 3 Markov due
9 Mon, Apr 4 &
Tue, Apr 5
Lecture: Theory of Computing Video | Slides
Reading: 5.1
Precept: REs and DFAs
Wed, Apr 6 &
Thu, Apr 7
Lecture: Turing Machines Video | Slides
Reading: 5.2-4

Precept: TMs and CircularQuote
Wed, Apr 6 - Sat Apr 9 Final Project Proposal Meetings
Thu, Apr 7
Sun, Apr 10 TSP due
current leaderboard
10 Mon, Apr 11 &
Tue, Apr 12
Lecture: Intractability Video | Slides
Reading: 5.5
Precept: P, NP, NP-Complete
Wed, Apr 13 &
Thu, Apr 14
Lecture: Comb. Circuits Video | Slides
Reading: 7.1-3
Precept: Comb. Circuits
Thu, Apr 14 Class Meeting: Programming Exam 2
Sat, Apr 16 Final Project Proposal Revisions (if needed) due
11 Mon, Apr 18 &
Tue, Apr 19
Precept: Java Jeopardy
Wed, Apr 20 &
Thu, Apr 21
No Precept
Thu, Apr 21 Class Meeting: Written Exam 2
Tue, Apr 26 Final Project Status Update due
Tue, May 3 Dean’s Date Final Project due at 5pm