Course description
Welcome to Python Programming! We hope to inspire you to learn and improve your programming skills.
We will assume that you have no prior knowledge about programming, but have basic Mathematical knowledge (you understand terms like functions, vectors, matrices, variables).
This webpage will be the main portal for the course. Most things you need will be available here. The exceptions are:
- Announcements and questions/answers/discussions: on EdStem
- Other materials like slides and recordings from our live sessions: available on Scientia
More details about arrangements for the course (e.g. lecture topics, courseworks) will be given during the first lecture on Tuesday 11am in Huxley 145.
📌 Josiah's note
Welcome to all MSc AI, MRes AI&ML, and AI4Health CDT students! My team is looking forward to meeting you this autumn!
Please study these before you come...
As a MINIMUM, please go through at least Core Lessons 1 to 7 of the guided learning materials (below) before you officially start your degree on 29th September 2025.
You are also strongly encouraged to complete all 10 Core Lessons before you start your degree. Your workload will be heavy otherwise, especially if you are an MSc AI student. A former MSc AI student regretted not doing this, and has asked me to advise you to complete all 10 core lessons before you start!
As a guide, your first programming coursework assignment will cover the content in Core Lessons 1 to 7, and you will need to submit this by the end of the second week of the first term. This will be followed by a second coursework (up to Core Lesson 9) due at the end of week 4, and a third coursework (up to Core Lesson 10) due at the end of week 6.
MSc AI and and MRes AI&ML students will need to complete all three courseworks.
AI4Health CDT students only need to complete and pass either the second or the third coursework.
If you are taking Introduction to Machine Learning...
If you are also taking the department's Introduction to Machine Learning module (compulsory for MSc AI), you will need NumPy for the coursework assignments for that module from the start of Week 3. Therefore, you are also advised to complete the lessons listed below as soon as possible after completing the 10 core lessons:
- Beyond the Standard Library
- Introduction to Numpy and Matplotlib
Feel free to send me an email at josiah (dot) wang -[at]- imperial.ac.uk if you detect any mistakes or have any feedback!
Course materials
You will use our self-paced, guided study materials, designed to help you learn programming by doing!
The link can also be accessed via the button on the top right of the webpage.
Schedule
Lectures and lab sessions will be conducted in person.
Week 1 schedule (29th Sept-3rd Oct 2025)
The schedule for the first week is as follows:| Tue 11am-12pm |
Tue 2-4pm |
Wed 10am-12pm |
Thu 10am-12pm |
Thu 2-4pm |
Fri 9-11am |
Fri 3-4pm |
Fri 4-6pm |
|---|---|---|---|---|---|---|---|
| Lecture 145 |
Lab 202/206 |
Lab 202/206 |
Lab 202/206 |
Lab 202/206 |
Lab 202/206 |
Lecture 145 |
Lab 202/206 |
For MSc AI students only, there are also two orientation lab sessions:
- Monday (29th Sept), 4-5pm, Huxley 219;
- Tuesday (30th Sept), 12-1pm, Huxley 219.
Week 2 schedule (6th-10th Oct 2025)
Note the unusual venue for the Monday 11am lecture in the Chemistry building, opposite Sherfield building across Queen's Lawn/Dangoor Plaza [Google Maps | Official University Map].CHEM C660 is on level 6. Click on level 6 on this interactive map for the floor plan.
| Mon 11am-12pm |
Mon 12-1pm |
Wed 9-10am |
Thu 9-10am |
Thu 4-6pm |
|---|---|---|---|---|
| Lecture CHEM C660 |
Lab 202/206 |
Lab 202/206 |
Lab 202/206 |
Lab 202 |
Week 3-6 schedule (13th Oct 2025 onwards)
We are fully back in good old Huxley building from Week 3 onwards.| Mon 11am-12pm |
Mon 12-1pm |
Wed 9-10am |
Thu 9-10am |
Thu 4-6pm |
|---|---|---|---|---|
| Lecture 342 |
Lab 202/206 |
Lab 202/206 |
Lab 202/206 |
Lab 202 |
Week 7-8 schedule (w/c 10th and 17th Nov 2025)
Our course slows down in the final two weeks for you to focus on your other modules. You have already worked hard in the first few weeks anyway! We will have guest lectures on Monday 11am. After you have submitted coursework 3, any remaining labs will mainly be 'bonus' support labs to help you with Python in your other modules.| Mon 11am-12pm |
Mon 12-1pm |
Thu 9-10am |
Thu 4-6pm |
|---|---|---|---|
| Lecture 342 |
Lab 202/206 |
Lab 202/206 |
Lab 202 |
Week 9 schedule (w/c 24th Nov 2025)
This week is mainly an information session for your programming test in January. A mock test is also expected to happen on Thursday.| Mon 11am-12pm |
Thu 4-5:30pm |
|---|---|
| Lec (Exam info) 342 |
Mock test 202/206 |











