General information#
- Dr. Minh Bui is your lecturer in the 1st half of the semester.
- Dr. Alberto F. Martin is your lecturer in the 2nd half of the semester.
- Lectures twice a week: Monday, 1-2PM & Tuesday, 4-5PM.
- All lectures take place in room 1.01 Barry Drive 7-11, O007 building.
- Links to PDFs of the lecture slides and associated Python codes will be available (at the latest) after each lecture.
- Livestream lectures and recordings available on echo360, see the link on Course Wattle page.
- Ignore timetabling message that the lecture slot is full; just come to the lecture hall!
Schedule#
Links to slides will be available here and on Ed Lessons on the lecturing dates. Ed Lessons will additionally contain code demonstrated in lectures.
| Week | Date/Time | Lecture | Topic and Slides | ||
|---|---|---|---|---|---|
| 1 | 22/07/24 | 1 | Intro and admin matters | ||
| 23/07/24 | 2 | Functional abstraction | |||
| 2 | 29/07/24 | 3 | Data value, types and expressions | ||
| 30/07/24 | 4 | Functions | |||
| 3 | 05/08/24 | 5 | Branching (if statement) | ||
| 06/08/24 | 6 | Iterations (loop) | |||
| 4 | 12/08/24 | 7 | Sequence data | ||
| 13/08/24 | 8 | Code quality | |||
| 5 | 19/08/24 | 9 | Strings, slicing and other operations | ||
| 20/08/24 | 10 | Testing and debugging | |||
| 6 | 26/08/24 | 11 | More about lists | ||
| 27/08/24 | 12 | Data analysis and visualisation | |||
| Teaching break | |||||
| 7 | 16/09/24 | 13 | Numpy arrays | ||
| 17/09/24 | 14 | Data analysis with Pandas | |||
| 8 | 23/09/24 | 15 | Files and I/O | ||
| 24/09/24 | 16 | Dictionaries and sets | |||
| 9 | 30/09/24 | 17 | Computational complexity | ||
| 01/10/24 | 18 | Errors and exceptions | |||
| 10 | 07/10/24 | - | No Lecture: Labour day | ||
| 08/10/24 | 19 | Dynamic programming | |||
| 11 | 14/10/24 | 20 | Modules and command-line parsing | ||
| 15/10/24 | 21 | Classes and object-based programming | |||
| 12 | 21/10/24 | 22 | Computational science and Engineering (CSE) | ||
| 22/10/24 | 23 | Exam revision | |||
Recommended reading#
Find below some recommended readings if you want to come better prepared to the lectures and/or reinforce your understanding afterwards.
| Week | Recommended readings |
|---|---|
| 1 | Downey’s book, chapters 1-2. Sundnes’s book, Sects. 2.1-2.2 and 4.1-4.3, 4.5-4.7 |
| 2 | Downey’s book, chapters 3. Sundnes’s book Sects. 2.1-2.2 and 4.1-4.3, 4.5-4.7 |
| 3 | Downey’s book, chapters 5 and 7. Sundnes’s book, Sects. 3.1, 3.2, 3.4, 4.4. docs.python.org, 4.1 to 4.5 |
| 4 | Downey’s book, chapter 8. |
| 5 | Downey’s book, chapter 8, 10, 11 and 12. Sundnes’s book, Section 3.3, 3.6, 7.1 and 7.4. docs.python.org, 3.1, 5.1.0, 5.1.1, 5.1.2, 5.3 and 5.5 |
| 6 | Downey’s book, chapter 14. docs.python.org, 6.0, 6.1, 7.2, 9.3 |
| 7 | Sundnes’s book, chapter 6. (excluding section 6.4). 10 minutes to pandas |
| 8 | Downey’s book, Sects. 11.1-11.5 and 19.5, chapter 14. Sundnes’s book Sects. 5.3-5.4, chapter 7 |
| 9 | Downey’s book, chapter 21 (“Analysis of Algorithms”, called Appendix B in the on-line edition) introduces complexity and analysis of algorithms. Downey’s book, chapter 20 (called “Appendix A” in the on-line edition), chapter 14 section “Catching Exceptions”. Sundnes’s book, Section 5.5 |
| 10 | – |
| 11 | Downey’s book, Section 14.9, Chapters 15-17. Sundnes’s book Section 5.6, chapter 8 |
| 12 | TBA |