Introduction to Programming

Important

This repository does not contain slides. Slides are on nextcloud.

Sessions

ImportantTODO
  • My VM Excel version does not support XLOOKUP (TODO: update the formula in Excel_in_class_exercises.xlsx sheet Grading F17)
  • Document with instructions to configure Excel (language, separators)? PR: available in canvas? Plan how to present (slide?)
  • Detailed learning objectives (TBD: share at the end as “relevant for the exam”?)
  • TBD: save the Excel sheets for each group (to track progress)?
  • TBD: reflection/questions for the next sessions (maybe as a digital or offline paper submission option?)
TipPrinciples

TBD: currently, in-class demos are combined? and in-class exercises/homework exercises are in individual files (linked in the slides)

  • Distinguish in-class demo, in-class exercise, and homework. One file for each (with different sheets). Solutions are in a separate _solution.xlsx file. Use the solutions file only to generate screenshots for the teaching notes. Develop solutions interactively in class.
  • Links to the files/sheets should be on the slides (currently: in the teaching notes?? - should not be in both places)
  • Python code should be included in teaching notes to avoid duplication.
  • Make sure that all homework is properly discussed at the beginning of the next session.

See objectives

Orga: see slides

Session Focus Title Slides Teaching notes
1 Excel Basics, formulas, charts, and conditional structures 1–28 Notes
2 Excel Lookups and tables 29–52 Notes
3 Excel Pivot tables 53–77 Notes
4 Python/Pandas Python and pandas basics 1–22 Notes
5 Python/Pandas Data access and manipulation 23–36 Notes
Exam Mid-term exam: Excel
6 Python/Pandas Statistics, charts, and grouping 37–56 Notes
7 Python Pivoting, prediction, and data types 57–86 Notes
8 Python Sequences and conditionals 87–108 Notes
9 Python For and while loops 109–114 Notes
10 Python Loop control, functions, and dictionaries 115–133 Notes
11 Python Pandas automation and web APIs 134–159 Notes
Exam Final exams

Exam prep/questions: slide deck

Groups

Date E3 E4 E5
Mon, 2026-09-07 Session 01
09:30–11:00
11:15–12:45
Room: T6 A
Session 01
14:00–15:30
15:45–17:15
Room: T6 A
Tue, 2026-09-08 Session 02
09:30–11:00
11:15–12:45
Room: T6 A
Session 01
14:00–15:30
15:45–17:15
Room: T6 A
Wed, 2026-09-09 Session 02
14:00–15:30
15:45–17:15
Room: T6 B
Session 02
09:30–11:00
11:15–12:45
Room: T7 A
Wed, 2026-09-16 Session 03
14:00–15:30
15:45–17:15
Room: T6 A
Session 03
09:30–11:00
11:15–12:45
Room: T7 A
Wed, 2026-09-23 Session 04
09:30–11:00
11:15–12:45
Room: T6 A
Session 03
14:00–15:30
15:45–17:15
Room: T6 B
Wed, 2026-09-30 Session 04
09:30–11:00
11:15–12:45
Room: T6 A
Session 04
14:00–15:30
15:45–17:15
Room: T6 A
Thu, 2026-10-08 Session 05
14:00–15:30
15:45–17:15
Room: T6 A
Session 05
09:30–11:00
11:15–12:45
Room: T6 B
Fri, 2026-10-09 Session 05
14:00–15:30
15:45–17:15
Room: T6 A
Mon, 2026-10-26 Session 06
09:30–11:00
11:15–12:45
Room: T7 A
Tue, 2026-10-27 Session 06
09:30–11:00
11:15–12:45
Room: T6 A
Session 06
14:00–15:30
15:45–17:15
Room: T6 B
Mon, 2026-11-02 Session 07
14:00–15:30
15:45–17:15
Room: T6 A
Tue, 2026-11-03 Session 07
09:30–11:00
11:15–12:45
Room: T6 A
Session 07
14:00–15:30
15:45–17:15
Room: T6 B
Mon, 2026-11-09 Session 08
14:00–15:30
15:45–17:15
Room: T6 A
Session 08
09:30–11:00
11:15–12:45
Room: T6 A
Tue, 2026-11-10 Session 08
14:00–15:30
15:45–17:15
Room: T8 A
Mon, 2026-11-16 Session 09
14:00–15:30
15:45–17:15
Room: T6 A
Session 09
09:30–11:00
11:15–12:45
Room: T7 A
Thu, 2026-11-19 Session 09
14:00–15:30
15:45–17:15
Room: T6 A
Mon, 2026-11-23 Session 10
14:00–15:30
15:45–17:15
Room: T7 B
Tue, 2026-11-24 Session 10
14:00–15:30
15:45–17:15
Room: T6 B
Session 10
09:30–11:00
11:15–12:45
Room: T8 A
Thu, 2026-12-03 Session 11
09:30–11:00
11:15–12:45
Room: T6 A
Session 11
14:00–15:30
15:45–17:15
Room: tbc BSc tower
Fri, 2026-12-04 Session 11
09:30–11:00
11:15–12:45
Room: T6 A