Home
General
Staff
Contact
Partners
Alumni
Research
Areas
Projects
Papers
Books
Reports
Awards
Teaching
Lectures
Exams
B.Theses
M.Theses
PhD Theses
Go Abroad
Misc
Talks
Library
Gallery
Links
Search
Webmaster
|
 |
|
Dipl.-Ing. Dr. Markus Weninger, BSc
Address: Altenberger Straße 69, 4040 Linz, Austria
Building: Computer Science Building (SP3) Room: 210
Phone: + 43-732-2468-4361
Fax: + 43-732-2468-4345
Email: markus.weninger@jku.at
|
Ich begann meine Informatikausbildung an der Höheren Technischen Bundeslehranstalt Leonding für EDV und Organisation.
Danach absolvierte ich das Bachelorstudium Informatik und das Masterstudium Computer Science mit Schwerpunkt Software Engineering an der Johannes Kepler Universität (JKU) Linz.
Während meines Masterstudiums sammelte ich bereits erste Forschungserfahrung am Institut für Systemsoftware, wo ich mich mit dem Aufbereiten von Speicherüberwachungsdaten beschäftigte. Aus dieser Forschung ging anschließend meine Dissertation zum Thema Trace-basierte Speicheranalyse hervor.
Seit meinem Dissertationsabschluss 2021 arbeite ich als Senior Lecturer im Bereich Computer Science an der JKU und vereine dort im Unterrichten von Fächern wie Softwareentwicklung oder Compilerbau meine zwei großen Leidenschaften: Informatik und Lehre.
Neben der universitären Lehre halte ich noch zahlreiche Workshops für Kinder und Jugendliche (und gelegentlich auch andere Altersgruppen).
Neben meiner Lehrtätigkeit betreibe ich Forschung rund um die Themen Programmanalyse und Codemodifikation, Programmverständnis sowie Programmvisualisierungen; vorwiegend in den Bereichen Software and Performance Monitoring sowie Software Engineering Education.
2025 SS
2024 WS
2024 SS
2023 WS
2023 SS
2022 WS
2022 SS
2021 WS
2021 SS
2020 WS
2020 SS
2019 WS
2019 SS
2018 WS
2018 SS
2017 WS
Supervised Bachelor Theses
36 bachelor theses
In Progress
Finished
Supervised Master Theses
14 master theses
In Progress
Finished
Supervised Projects in Software Engineering
12 projects in software engineering
In Progress
Finished
Meine Liebe zur Informatik, einst selbst durch meinen Lehrer geprägt, führte mich über ein Doktorat (2017) hin zu einer Stelle als Senior
Lecturer für Computer Science (2021) - mit dem klarem Ziel, meine brennende Begeisterung an junge Menschen weiterzugeben.
So entwickelte ich unterschiedlichste Workshopformate für Schülerinnen und Schüler, von 30 Minuten bis hin zu 4 Stunden, um spielerisch ein
breites Spektrum der Informatik (Algorithmen, Softwareentwicklung und KI) zu vermitteln.
Über die Jahre führte ich so mehr als 90 dieser Workshops in Formaten wie JKU Science Holidays, Young Computer Scientists, Frauen in die Technik,
"Trust in Science and Democracy" des BMBWF, und vielen mehr durch.
Mein besonderes Anliegen: Stereotypen aufbrechen - besonders "Informatik ist nur für Jungs". Daher arbeite ich gezielt oft mit Volksschul- und
Unterstufenkindern, um früh aufzuzeigen, dass Informatik für alle spannende Möglichkeiten bietet.
Workshopangebot
Wir entwickeln unser erstes Computerspiel - Spieleentwicklung mit Scratch
Wir beginnen mit einer kurzen Einführung in die grafische Programmierumgebung Scratch (scratch.mit.edu).
Selbst ohne vorherige Programmiererfahrung entwickeln wir mit dieser im Anschluss gemeinsam unser erstes Computerspiel.
Dabei beginnen wir bei den Grundlagen und arbeiten uns gemeinsam, Schritt für Schritt, zu komplexeren Aufgaben vor.
Am Ende erhalten die Teilnehmer*innen noch Informationen und Anleitungen, wie sie auch zu Hause selbst Spiele entwickeln können.
Voraussetzungen: Keine. Dieser Workshop ist speziell für Schüler*innen ohne Programmiererfahrung geeignet. Ideal wäre es, wenn die
Teilnehmer eigene Notebooks mitbringen könnten; alternativ muss ein Computerraum reserviert werden.
Dauer: Je nach Wunsch 1-3 Stunden.
Teilnehmerzahl: bis zu ca. 20
Wie folgt eine Computerspielfigur einem Weg? Spielerisch Algorithmen kennenlernen mit Scratch
Wir starten mit einer Einführung in die Programmierumgebung Scratch (scratch.mit.edu).
Anschließend erarbeiten wir interaktiv einen Wegfindungs-Algorithmus (eine Schritt-für-Schritt-Anleitung), um Figuren in unserem Spiel
selbständig einen Weg folgen zu lassen.
Dabei lernen wir spielerisch wichtige Programmierkonzepte wie Schleifen und Verzweigungen kennen.
Abschließend erhalten die Teilnehmer*innen noch Informationen und Anleitungen, um auch zu Hause selbst Spiele entwickeln zu können.
Voraussetzungen: Keine. Dieser Workshop ist speziell für Schüler*innen ohne Programmiererfahrung geeignet. Optimal wäre es, wenn die
Teilnehmer*innen an einem Computer live mitarbeiten können (entweder auf mitgebrachten Geräten oder in einem Computerraum), dies ist aber kein
Muss.
Dauer: Je nach Wunsch 1-3 Stunden.
Teilnehmerzahl: bis zu ca. 20
Prompt Engineering: Wie bringe ich einer künstlichen Intelligenz bei, das zu tun, was ich will?
OpenAI ChatGPT, Google Gemini oder Anthropic Claude: Ständig entstehen neue "Large Language Models" (LLMs), zu deutsch "große Sprachmodelle", und
diese werden immer besser und leistungsfähiger.
Sie können Antworten zu Fragen generieren, Aufsätze verfassen, Programmieren, ja sogar Bilder und Diagramme zeichnen.
Doch was viele nicht wissen: Mit kleinen Tricks, dem sogenannten Prompt Engineering, kann die Qualität der Antworten oft stark erhöht und speziell
auf den Benutzer zugeschnitten werden.
In diesem Workshop tauchen wir in die Welt des Prompt Engineering ein und werden verschiedene Möglichkeiten kennenlernen, die Antworten von LLMs an
unsere Wünsche anzupassen.
Voraussetzungen: Keine. Optimal wäre es, wenn die Teilnehmer*innen an einem Computer live mitarbeiten können (entweder auf mitgebrachten
Geräten oder in einem Computerraum), dies ist aber kein Muss.
Dauer: Je nach Wunsch 45 Minuten - 2 Stunden.
Teilnehmerzahl: bis zu ca. 20
Sorting is Fun - Spielerisches Kennenlernen von Sortieralgorithmen
In diesem Workshop finden wir heraus, wie ein Computer Daten sortiert und ob ein Mensch dabei mithalten kann.
Dazu versuchen wir in einem eigens entwickelten Spiel, eine Liste von Zahlen in Bestzeit zu sortieren.
Die Herausforderung dabei: Wir dürfen nicht einfach drauflos sortieren, sondern müssen uns an die strengen Regeln eines vorgegebenen
Sortieralgorithmus halten -- genau wie ein Computer.
Dabei entdecken wir verschiedene Lösungsstrategien und bekommen ein Gefühl dafür, was ein (Such-)Algorithmus eigentlich ist.
So lernen wir spielerisch eines der wichtigsten Grundkonzepte der Informatik kennen.
Voraussetzungen: Keine. Ideal wäre es, wenn die Teilnehmer eigene Notebooks mitbringen könnten; alternativ muss ein Computerraum reserviert
werden.
Dauer: Je nach Wunsch 45 Minuten - 1,5 Stunden.
Teilnehmerzahl: bis zu ca. 20
JavaFX Game Programming
In diesem Workshop entwickeln die Teilnehmer*innen gemeinsam mit dem Workshopleiter ein kleines Computerspiel mittels der Programmiersprache Java und dem
Grafikframework JavaFX.
Voraussetzungen: Programmierkenntnisse z.B. in Java oder C# erforderlich. Eigene Laptops mit der neuesten Version von IntelliJ (https://www.jetbrains.com/idea/download) werden benötigt - die gratis "Community" Edition ist komplett ausreichend.
Dauer: mind. 3,5 Stunden.
Teilnehmerzahl: bis zu ca. 20
2D Game Programming in Godot
Mit Hilfe von Godot, einer modernen Game Engine, können Objekte (Wände, Spielfiguren, etc.) in einer Spielwelt platziert und positioniert werden.
Diese Objekte können dann durch kleine Skripte zum Leben zu erwecken und mit Logik versehen werden.
In diesem Workshop stellen wir Godot "hands on" vor, indem wir gemeinsam interaktiv ein kleines 2D-Spiel entwickeln und Schritt für Schritt erweitern.
Voraussetzungen: Grundlegende Programmierkenntnisse z.B. in Python, Java oder C#. Eigene Laptops werden benötigt. Vor dem Workshop muss
selbstständig die neueste Version von Godot (https://godotengine.org/) heruntergeladen und installiert werden
(gratis). Bitte eine Maus mitbringen, Game Development mit Touchpad ist schwierig!
Dauer: mind. 3,5 Stunden.
Teilnehmerzahl: bis zu ca. 20
3D Game Programming in Godot
Mit Hilfe von Godot, einer modernen Game Engine, können Objekte (Wände, Spielfiguren, etc.) in einer Spielwelt platziert und positioniert werden.
Diese Objekte können dann durch kleine Skripte zum Leben zu erwecken und mit Logik versehen werden.
In diesem Workshop stellen wir Godot "hands on" vor, indem wir gemeinsam interaktiv ein kleines 3D-Spiel entwickeln und Schritt für Schritt erweitern.
Voraussetzungen: Grundlegende Programmierkenntnisse z.B. in Python, Java oder C#. Eigene Laptops werden benötigt. Vor dem Workshop muss
selbstständig die neueste Version von Godot (https://godotengine.org/) heruntergeladen und installiert werden
(gratis). Bitte eine Maus mitbringen, Game Development mit Touchpad ist schwierig!
Dauer: mind. 3,5 Stunden.
Teilnehmerzahl: bis zu ca. 20
3D Game Programming in Unity (derzeit nicht mehr angeboten)
Kreatives Programmieren mit micro:bit - Wir erwecken einen Microcontroller zum Leben (derzeit nicht mehr angeboten)
2025
2024
2023
2022
2021
2020
2019
2018
2017
- Visual Teaching
- Software Engineering Education
- (Software) Visualization
- Data Analysis / Processing / Aggregation / Visualization
- Memory and Performance Anomaly Detection & Analysis
- Memory and Performance Monitoring & Profiling
- Program and Software Comprehension
|
-
ASVG - Accessible Scalable Vector Graphics: intention trees to make charts more
accessible and usable.
Weninger, M.; Ortner, G.; Hahn, T.; Drümmer, O.; Miesenberger, K.:
Journal of Assistive Technologies, Vol. 9 Issue: 4 (JAT'15), pp.239-246.
-
An Experiment to Measure the Performance Trade-off Between Traditional I/O and
Memory-mapped Files
Bachelor's thesis, JKU, 2016
-
-
-
-
User-defined Classification and Multi-grouping of Data in a Memory Monitoring Tool
Master's thesis, JKU, 2017
-
-
-
Analyzing the Evolution of Data Structures in Trace-Based Memory Monitoring.
[preprint]
Weninger, M.; Gander, E.; Mössenböck, H.
SSP '18 Proceedings of the 9th Symposium on Software Performance, Hildesheim,
Germany, November 8 - 9, 2018
-
Tool Support for Restricted Use Case Specification: Findings from a Controlled
Experiment.
[preprint]
Weninger, M.; Grünbacher, P.; Zhang, H.; Yue, T.; Ali, S.
APSEC '18 Proceedings of the 25th Asia-Pacific Software Engineering Conference,
Nara, Japan, December 4 - 7, 2018
-
-
-
-
Memory Leak Visualization using Evolving Software Cities.
[preprint]
Weninger, M.; Makor, L.; Mössenböck, H.
SSP '19 Proceedings of the 10th Symposium on Software Performance, Würzburg,
Germany, November 4 - 6, 2019
-
-
Memory Cities: Visualizing Heap Memory Evolution Using The Software City
Metaphor.
(Best Paper Award)
[preprint]
Weninger, M.; Makor, L.; Mössenböck, H.
VISSOFT '20 Proceedings of the Eight IEEE Working Conference on Software
Visualization, Adelaide, Australia (moved online), 28-29 September, 2020
-
Investigating High Memory Churn via Object Lifetime Analysis to Improve Software
Performance.
[preprint]
Weninger, M.; Gander, E.; Mössenböck, H.:
SSP '20 Proceedings of the 11th Symposium on Software Performance, November 12 - 13,
2020, Leipzig, Germany (moved online).
-
Heap Evolution Analysis Using Tree Visualizations.
[preprint]
Weninger, M.; Makor, L.; Mössenböck, H.
SSP '20 Proceedings of the 11th Symposium on Software Performance, November 12 - 13,
2020, Leipzig, Germany (moved
online).
-
Memory Leak Analysis using Time-Travel-based and Timeline-based Tree Evolution
Visualizations.
(Best Paper Award)
[preprint]
Weninger, M.; Makor, L.; Mössenböck, H.
STAG '20 Proceedings of the 7th Conference on Smart Tools and Applications in
Graphics, November 12 - 13, 2020, Online.
-
-
Detection and
Analysis of Memory Anomalies in Managed Languages Using Trace-Based Memory
Monitoring
Dissertation, JKU, 2021
-
Erkennung und Analyse von Speicheranomalien in Sprachen mit automatischer Speicherverwaltung unter Nutzung
von Trace-basierter Speicherüberwachung ("Trace-basierte Erkennung und Analyse von Speicheranomalien") in Ausgezeichnete
Informatikdissertationen 2021 [pdf]
Weninger, M.:
Lecture Notes in Informatics (Gesellschaft für Informatik), 2021
-
-
Tracing Performance Metrics in Kotlin Multiplatform Projects via Compile-Time Code Instrumentation.
[preprint]
Weninger, M.:
Symposium on Software Performance (SSP'24), Nov. 06-07, 2024, Linz, Austria.
-
JavaWiz: A Trace-Based Graphical Debugger for Software Development Education. [preprint]
Weninger, M.; Grünbacher, S.; Prähofer, H.:
Proceedings of the 33rd IEEE/ACM International Conference on Program Comprehension (ICPC 2025), April 27-28, 2025, Ottawa, Canada.
-
Trace-Based Bytecode Interpreter Visualization for Compiler Construction Education. [preprint]
Herber, T.; Weninger, M.:
Proceedings of the 13th IEEE Working Conference on Software Visualization (VISSOFT 2025), September 7-8, 2025, Auckland, New Zealand.
-
SaaS Observability on the Microsoft Power Platform and its Performance Impacts. [preprint]
Pröll, R.; Weninger, M.:
Proceedings of the 13th IEEE International Conference on Cloud Engineering (IC2E 2025), September 23-26, 2025, Rennes, France.
-
OpenTelemetry Instrumentation using Kotlin Multiplatform Compiler Plugins.
[preprint]
Schoenberger, F.; Weninger, M.:
Symposium on Software Performance (SSP'25), Nov. 04-05, 2025, Kiel, Germany. [accepted for publication]
-
Simplifying Kotlin Compile-Time Code Instrumentation.
[preprint]
Bader, L.; Weninger, M.:
Symposium on Software Performance (SSP'25), Nov. 04-05, 2025, Kiel, Germany. [accepted for publication]
|
-
Winner of the Coding 4 a Cause (C4C:EU) contest at the AAATE conference 2015.
News:
German
and
English
Statement:
Stated one of the judges, Mike Paciello, founder and CEO of The Paciello Group in New Hampshire, USA: "I am inspired by the Johannes Kepler
University students! To watch 3 of our brightest young people develop a mainstream application that ensures the accessibility of SVG images to users
with disabilities, is a testimony to the success of the C4C program. Their ingenuity and strong determination to solve a complex challenge, tells me
that our students are learning how to design and develop accessible information technologies! Congratulations JKU, your students and their mentor,
Olaf Drümmer."
-
Adolf-Adam-Informatikpreis 2017 - Nominiert für die beste Informatik-Masterarbeit des vergangenen Studienjahres
Thema: Durchblick bei großen Datenmengen - Sammeln ist Silber, Verstehen ist Gold
-
Best Paper Candidate
User-defined Classification and Multi-level Grouping of Objects in Memory Monitoring.
9th ACM/SPEC International Conference on Performance Engineering (ICPE'18), Berlin, Germany, April 9 - 13, 2018.
-
Best Presentation of Best Paper Candidates
User-defined Classification and Multi-level Grouping of Objects in Memory Monitoring.
9th ACM/SPEC International Conference on Performance Engineering (ICPE'18), Berlin, Germany, April 9 - 13, 2018.
-
Best Paper Award
Memory Cities: Visualizing Heap Memory Evolution Using The Software City Metaphor.
8th IEEE Working Conference on Software Visualization (VISSOFT'2020), Adelaide, Australia (moved online), 28-29 September, 2020
-
Best Paper Award
Memory Leak Analysis using Time-Travel-based and Timeline-based Tree Evolution Visualizations.
Conference on Smart Tools and Applications in Graphics, November 12 - 13, 2020, Online
-
Award of Excellence
Dissertation award by the Austrian Federal Ministry of Education, Science and Research
-
JKU Young Researchers' Award
The
Johannes Kepler University Linz Young Researchers' Award
supports outstanding academic and scientific accomplishments to honor doctoral candidates.
-
Kepler Awards for Excellence in Teaching - Category "Best Practice"
In der Kategorie "Best Practice" wurden drei Lehrkonzepte (aus 22 Einreichungen) des Studienjahres 2022/23 prämiert, welche sich besonders um eine Optimierung ihrer Lehre bemühen und als Vorbild dienen können.
Uns wurde der Preis für "UE Softwareentwicklung 1" sowie das Visualisierungstool JavaWiz verliehen, das speziell zur Unterstützung der Programmiergrundlagenlehre am SSW entwickelt wurde.
|
-
Questionnaires used in our
controlled experiment on Restricted Use Case Specification.
Weninger, M.; Grünbacher, P.; Zhang, H.; Yue, T.; Ali, S.:
The experiment is described in Tool Support for Restricted Use Case
Specification: Findings from a Controlled Experiment.
in Proceedings of the 25th Asia-Pacific Software Engineering Conference
(APSEC'18), Nara, Japan, December 4 - 7, 2018.
DOI: http://doi.org/10.5281/zenodo.1460462
-
Memory Cities: Visualizing Heap
Memory Evolution Using the Software City Metaphor - Artifact (Binaries, Data
Sets, Video, Instructions).
Weninger, M.; Makor, L.; Mössenböck, H.:
in Proceedings of the 8th IEEE Working Conference on Software Visualization
(VISSOFT'20), Adelaide, Australia, September 28 - 29, 2020 (moved
online).
DOI: https://doi.org/10.5281/zenodo.3991785
-
Tracing Performance Metrics in Kotlin Multiplatform Projects via Compile-Time Code Instrumentation (Source Code and Builds).
Weninger, M.:
in Proceedings of the 15th Symposium on Software Performance (SSP 2024), Nov. 06-07, 2024, Linz, Austria.
DOI: https://zenodo.org/records/13958416
-
Trace-Based Bytecode Interpreter Visualization for Compiler Construction Education - Artifact (Source Code, Video, Instructions, Demo Traces).
Herber, T.; Weninger, M.:
in Proceedings of the 13th IEEE Working Conference on Software Visualization (VISSOFT 2025), September 7-8, 2025, Auckland, New Zealand.
DOI: https://doi.org/10.5281/zenodo.16362219
|
2024
- Mitglied - Studienvertretung Doktorat TN JKU
|
2023
- Mitglied - Studienvertretung Doktorat TN JKU
|
2022
- Mitglied - Studienvertretung Doktorat TN JKU
|
2021
- Mitglied - Studienvertretung Informatik & AI JKU
- Mandatar - Studienvertretung Doktorat TN JKU
|
2020
- Organisation - Erstsemestrigenmentoring Informatik JKU
- Mitglied - Studienvertretung Informatik & AI JKU
- Mandatar - Studienvertretung Doktorat TN JKU
|
2019
- Organisation - Erstsemestrigenmentoring Informatik JKU
- Mitglied - Studienvertretung Informatik & AI JKU
- Mandatar - Studienvertretung Doktorat TN JKU
|
2018
- Traumberuf Technik - Berater "Computer Science"
- Organisation - Erstsemestrigenmentoring Informatik JKU
- Mitglied - Studienvertretung Informatik JKU
|
2017
- Organisation - Erstsemestrigenmentoring Informatik JKU
- Mitglied - Studienvertretung Informatik JKU
|
2016
- Mitglied - Studienvertretung Informatik JKU
|
2015
- Mitglied - Studienvertretung Informatik JKU
|
2025
2024
2023
- Rotaract Linz (Sozialbeauftragter)
- Rotaract Linz (Mitglied)
|
2022
- Rotaract Linz (Sekretär)
- Rotaract Linz (Sozialbeauftragter)
|
2021
- Rotaract Linz (Präsident)
- Rotaract Linz (Sekretär)
|
2020
- Rotaract Linz (Präsident)
|
2019
- Rotaract Linz (Mitglied)
- Rotaract Linz (Präsident)
|
2018
|