Syllabus
This year’s course structure
Part I
Introduction to Programming with Python
In the first part, an introduction to the basic concepts of programming in Python is provided. Students will learn the Python syntax, data types, as well as how to implement loops, functions, and object classes in Python. We will introduce core Python libraries, too, including NumPy and Pandas. Once these concepts are understood, we will learn how they can be used to solve problems.
Lectures
Welcome and Introduction (I)
Basics of Python syntax, variables, data types
Control Structures for Your Code (II)
String methods, comparisons, conditional statements, loops
Building Reusable Functions (III)
Functions, arguments, return values, scope, classes
Handling Data in more than one Dimension (IV)
Tuples, lists, sets, dictionaries, and basic I/O
Handling Errors and Strings (V)
Exceptions, try-except blocks, debugging
Part II
Data Science with Python
In the second part, we will cover basic data science tools in Python referring to data manipulation, descriptive and explorative analysis as well as visualization. At the end, an outlook will be provided on the next steps in Python.
Lectures
Using Modules and Packages (VI)
Standard libraries, random numbers and how to use them
NumPy for Scientific Computing (VII)
Fast array operations with NumPy
Pandas and AI (VIII)
Pandas for data manipulation and AI
Plotting Data (IX)
Matplotlib with AI based on hands-on examples
Part III
Programming Projects
In the third part, students take on a final project in Python where they apply their new knowledge in pairs on a topic of their choice. Each pair will present their results and get feedback at the end of the semester.
Lectures
Tooling, Git and Your Project (X)
Bring your own machine with the Session IX pre-work done (uv, Zed, GitHub CLI, and a free GitHub account), learn git and GitHub, form pairs, and choose your project
Project Work I (XI)
Progress your pair project under assistance
Project Work II (XII)
Finalize your pair project with your partner
Presentations and Discussion (XIII)
Present your pair’s work and the learnings you have made