This is a week-by-week breakdown of the course activities. There is another website with the course timetable, which shows where and when the lectures and tutorials are.
Structure
Each week you will have two lectures, given together in a double session. For this, you will have a student workbook, often fairly empty as you will be completing it during the lecture, and we will have slides available. You are strongly advised to engage in all lectures. This is best done live in the lecture theatre, but you can also go over the lecture recordings afterwards if you miss them.
There will also be a self-study notebook for every lecture. These are not designed to replace lectures but instead to complement learning and give you another way of going through the materials at your own pace - consider them the 'text book' for this course. We will also point you to the best online materials that complement what we are teaching you.
See Tutorials for a breakdown of how the tutorials work and Assessment for an overview of the class tests and assignments.
Part 1
| Week 1 | 21-25 September 2026 |
|---|
| Lectures | 0. Introduction to Introduction to Programming | 1. Algorithmic thinking |
| Tutorial | - |
| Assessment | - |
| Week 2 | 28 September - 2 October 2026 |
|---|
| Lectures | 2. Strings and numbers | 3. Conditions and logic |
| Tutorial | Tools of the Trade 1 |
| Assessment | No Assessment |
| Week 3 | 5-9 October 2026 |
|---|
| Lectures | 4. Repetition 1: Loops | 5. Collections 1: Lists, sets, and dictionaries |
| Tutorial | EDIZA |
| Assessment | Assignment 1 released on Monday |
| Week 4 | 12-16 October 2026 |
|---|
| Lectures | 6. Functions | 7. Objects 1: Classes and instances |
| Tutorial | Assignment 1 |
| Assessment | First assignment assessment point |
| Week 5 | 19-23 October 2026 |
|---|
| Lectures | 8. Introduction to GenAI | 9. Code quality 1: Testing and documentation |
| Tutorial | Object permanence |
| Assessment | First class test assessment point |
Part 2
| Week 6 | 26-30 October 2026 |
|---|
| Lectures | 10. I/O 1: Reading and writing files | 11. Modules |
| Tutorial | Tools of the Trade 2 |
| Assessment | Assignment 2 released on Monday |
| Week 7 | 2-6 November 2026 |
|---|
| Lectures | 12. Collections 2: Tuples and list operations | 13. Exception handling |
| Tutorial | Assignment 2 |
| Assessment | Second assignment assessment point |
| Week 8 | 9-13 November 2026 |
|---|
| Lectures | 14. Code quality 2: Refactoring | 15. A look at other programming languages |
| Tutorial | Build Your Own Tutorial |
| Assessment | Second class test assessment point |
Part 3
| Week 9 | 16-20 November 2026 |
|---|
| Lectures | 16. Objects 2: Inheritance | 17. Collections 3: Searching and sorting |
| Tutorial | The Worst Language Model |
| Assessment | Assignment 3 released |
| Week 10 | 23-27 November 2026 |
|---|
| Lectures | 18. Repetition 2: Recursion | 19. I/O 2: Cleaning data and asynchronicity |
| Tutorial | Assignment 3 |
| Assessment | Third assignment assessment point |
Catch-up and revision
| Week 11 | 30 November - 4 December 2026 |
|---|
| Lectures | - | - |
| Tutorial | Drop-in tutorial support |
| Assessment | Third class test assessment point |
| Week 12 | 7-11 December 2026 |
|---|
| Lectures | - | - |
| Tutorial | - |
| Assessment | Final assignment and class test assessment point |