Course Practicalities

Course Overview


Course in Brief

This course teaches the foundations of programming through Python. You will learn to read, write, and trace small programs, organize code into named and tested functions and classes, handle errors and validate user input, work with files and structured data, use libraries to work with a range of domains, and check and explain code produced with AI coding assistants.

The course is currently only available for credit at Aalto University, but the materials are freely available for anyone to study. The course is designed to be self-contained and assumes no prior programming experience.

Workload

This is a 5 ECTS course. A workload of 5 ECTS corresponds roughly to 135 study hours. The actual time varies between learners depending on earlier background, study habits, and target depth of understanding.

High-Level Learning Objectives

After completing the course, you should be able to:

  • read small Python programs and predict what they will do,
  • write programs that handle input, perform arithmetic, branch on conditions, and repeat work,
  • organize code into named, tested, specified functions,
  • handle errors and validate user input,
  • read and write data in files,
  • model data using lists and dictionaries and class instances,
  • import modules, install packages, and use documentation to call library functions,
  • and check AI-generated code against the task requirements, test it, and explain how it works.

The more detailed learning objectives are listed separately in the chapters.

Prerequisites

The course assumes no prior programming experience. Having a computer that allows installing and running Python on your own is strongly recommended. Installation instructions for tools and environments are provided in Tools and Environments.

Practicalities Pages

This practicalities section collects the main support pages for the course: