Note this schedule is reflective of teaching from 2023, and will likely feature substantial changes in 2024.
Weeks/Dates | Lecture 1 | Lecture 2 | Lecture 3 | Workshops | Assessment Due |
---|---|---|---|---|---|
Week 0: Presemester | Welcome and subject overview | ||||
Week 1: Jul 22 - Jul 26 | Introduction to Computing, Scratch | Programming Basics | Computability (Advanced), and Programming basics | ||
Week 2: Jul 29 - Aug 2 | Variables and strings | Strings as sequences and conditionals | Conditionals and functions | ||
Week 3: Aug 5 - Aug 9 | Scope | Iteration | Consolidation lecture |
|
|
Week 4: Aug 12 - Aug 16 | Lists and dictionaries | Sets, mutability, advanced functions | Consolidation lecture |
|
|
Week 5: Aug 19 - Aug 23 | Code readability and debugging | No Lecture! Yay? | ChatGPT, Language Models, Stochastic Parrots, and The Infinite Monkey Theorem (Advanced) |
|
|
Week 6: Aug 26 - Aug 30 | Libraries and Testing | Mid-Semester Test preparation | Advanced Lecture (Object-Oriented Paradigm) |
|
|
Week 7: Sep 2 - Sep 6 | Comprehensions | File I/O; Serialization | Mid Semester Test! |
|
|
Week 8: Sep 9 - Sep 13 | Functions as arguments; Exception handling | Project 2 overview | How Python manages objects in memory |
|
|
Week 9: Sep 16 - Sep 20 | CSV files; iterators | Recursion | Practice on Iterators; Objects in Memory (Advanced) |
|
|
Sep 23 - Sep 27 | Mid Semester Break! | ||||
Week 10: Sep 30 - Oct 4 | Algorithms | Algorithms Continued... | Advanced lecture |
|
|
Week 11: Oct 7 - Oct 11 | HTML, CSS, JavaScript | Cont... | Advanced Lecture |
|
|
Week 12: Oct 14 - Oct 18 | Flask, Ethics | Exam revision and Subject wrap-up |
|