Programmierpraktikum für Data Scientists

The course introduces students to procedural and object-oriented programming in Python. The goal is to enable students to independently solve complex application problems using software development. For this purpose, the course conveys essential concepts, algorithms, and data structures to make students familiar with the basic constructs of Python and introduces important external libraries.

Programming is a craft that—like any other craft—requires some theoretical knowledge as foundation, but is learned above all through practice and application. Therefore, the exam for this course consists of an extensive programming project during the semester instead of a theoretical final examination.

Course Content

  • History, philosophy, and technical basics of the Python programming language
  • Data types and control structures
  • Elementary algorithms and data structures
  • Modules and functions
  • Object orientation in Python
  • Advanced language constructs
  • Logging, unit tests, error handling
  • Database interaction
  • Web programming
  • Parallelization
  • Application-oriented Libraries


  • None


  • Applied research project (includes teaser, intermediate, and final presentation)


Day Time Periodicity Duration Room Type
tbd tbd weekly 2022-10-24 – 2023-02-10 tbd lecture