Universität Wien

136080 UE Advanced Python Programming: Data Structures and Algorithms as Models of Professional Assumptions (2025S)

Continuous assessment of course work

Registration/Deregistration

Note: The time of your registration within the registration period has no effect on the allocation of places (no first come, first served).

Details

max. 25 participants
Language: English

Lecturers

Classes (iCal) - next class is marked with N

  • Tuesday 08.04. 09:45 - 13:00 Seminarraum 4 2H558 UZA II Rotunde
  • Tuesday 29.04. 09:45 - 13:00 Seminarraum 4 2H558 UZA II Rotunde
  • Tuesday 13.05. 09:45 - 13:00 Seminarraum 4 2H558 UZA II Rotunde
  • Tuesday 27.05. 09:45 - 13:00 Seminarraum 4 2H558 UZA II Rotunde
  • Tuesday 24.06. 09:45 - 13:00 Seminarraum 4 2H558 UZA II Rotunde

Information

Aims, contents and method of the course

Methods will be mostly hands on. Based on code-snippets, real live and synthetic data, problem descriptions, hand-outs and other provided material students will step by step alone, in pairs and groups solve problems to acquire deeper understanding of approaches, concepts and practices.

Smaller tasks will be done as home work.

Assessment and permitted materials

It is essential, that students have a working python environment in Visual Studio Code and git installed on their computers at the start of the course.

LLM-based Helpers and tools like CoPilot are highly encouraged, but not needed for the course.

Minimum requirements and assessment criteria

The evaluation of the course will be based on the engagement during the course time (70%) and a small project done by each student (30%).

Examination topics

There is no exam for the course. In addition to regular reading assigments, the grade will mostly be based on a research project showcasing the skills taught in class.

Reading list

Complete list will be handed out at the start of the seminar.

Bhargava, A. Y. (2024). Grokking algorithms (Second edition). Manning Publications Co.
Fowler, M. (2019). Refactoring: Improving the design of existing code (Second edition). Addison-Wesley.
Freeman, E., Robson, E., Sierra, K., & Bates, B. (2021). Head first design patterns: Building extensible & maintainable object-oriented software (2nd edition). O’Reilly®.
Kofler, M., Öggl, B., & Springer, S. (2025). Coding mit KI: Das Praxisbuch für die Softwareentwicklung (1. Auflage). Rheinwerk Verlag.
Kopec, D. (2019). Classic Computer Science Problems in Python. Manning Publications Co. LLC.
Lahres, B., Raýman, G., & Strich, S. (2021). Objektorientierte Programmierung: Das umfassende Handbuch (5., aktualisierte Auflage). Rheinwerk Verlag.
Molak, A., & Jaokar, A. (2023). Causal Inference and Discovery in Python: Unlock the secrets of modern causal machine learning with DoWhy, EconML, PyTorch and more. Packt Publishing.
Moretti, F., & Moretti, F. (2007). Graphs, maps, trees: Abstract models for literary history (Paperback edition). Verso.
Percival, H. J. W. (2017). Test-driven development with Python: Obey the testing goat: using Django, Selenium, and JavaScript (Second edition). O’Reilly.
Slatkin, B. (2025). Effective Python: 125 specific ways to write better Python (Third edition). Addison-Wesley.
Steinkamp, V. (2024). Mathematische Algorithmen mit Python: Aufgaben vom Sieb des Eratosthenes bis zur RSA-Verschlüsselung (2., aktualisierte und erweiterte Auflage). Rheinwerk.


Association in the course directory

DH-S II
Cluster I: Sprache und Literatur

Last modified: Fr 14.03.2025 13:26