Teaching

I regularly teach the following courses at FIT:

  • NI-RUN Runtime Systems

    • Principles of Virtual Machines for graduate students
    • Summer semester, Czech Technical University, since 2024
  • NI-APR Principles of Program Analysis

    • Introduction to static and dynamic program analysis for graduate students
    • Winter semester, Czech Technical University, since 2020
  • BI-OOP Object-oriented Programming

    • Advanced concepts of OOP at the end of undergraduate CS program
    • Winter semester, Czech Technical University, since 2018

Past

  • 2017: DS5110 - Introduction to Data Science [ref]

    • Northeastern University
    • Introduction to data processing and analysis with R
    • Lectures/Labs for 1st year data science master student
  • 2016: Design Patterns and OOP

    • Czech Technical University
    • Labs for year graduate students
  • 2015: Object Modeling / Objektové Modelování

    • Czech Technical University
    • Concepts of OO modeling, UML, Smalltalk
    • Labs for 2nd year undergraduate students
  • 2014: Domain-Specific Modeling Languages

    • Université de Lille 1
    • Introduction to the principles of DSM, DSL using Eclipse EMF, OCL, Xtext
    • Lectures in Conception Agile des Logiciels course for 2nd year master students
  • 2013: Projet de développement

    • University of Nice Sophia Antipolis - Licence 3 Informatique parcours MIAGE
    • 7 week project, supervising 4 groups of 4 students each
  • 2012: Software Engineering

    • Polytech'Nice
    • Object-oriented programming in Java, automated build tools, test-driven development, mechanisms of introspection, reflexivity and dynamic loading, design patterns, and the principle of dependency injection.
    • Labs for 1st year master students
  • 2010 -- 2012: Introduction to Programming using Python

    • Polytech'Nice
    • Basic of computational thinking in Python for hydro-engineering students
    • Lectures and labs for 2nd year master students

Students

Full records, including abstracts and texts, are in the FIT thesis database.

Doctoral

  • Filip Říha, co-supervised with Tomáš Petříček
  • Matěj Kocourek, co-supervised with Tomáš Petříček

Master

  • 2026, Dennis Pražák, Low-level JVM Bytecode Debugging Tool
  • 2026, Martin Zimen, Performance Profiling of Kotlin Standard Library
  • 2025, Michal Dufek, Native compilation for R functions
  • 2025, Matěj Kocourek, Copy & patch just-in-time compilation for R
  • 2025, Filip Říha, Understanding Feedback Pollution in the R Programming Language
  • 2025, Michal Štěpánek, Enriched contextual dispatch for Ř
  • 2024, Karolina Hrnčiříková, Profiler for the R programming language
  • 2024, Adam Plodek, Out of process byte-code copiler for the R programming language
  • 2024, Petr Adámek, Using malware detection techniques for dependency detection of R programs
  • 2023, Michael Vrána, Automated data analysis pipelines
  • 2022, Róbert Selvek, Desktop agnostic power manager for Linux
  • 2022, Václav Král, Ahead-of-time compiler for the microC langauge
  • 2020, Jan Bína, SWM - Simple Window Manager
  • 2019, Vít Medřický, Localization system PROWiLOS v1.0
  • 2019, Alexander Bublik, Grammatica - an app for practicing grammar
  • 2018, Marek Foltýn, Shere - notes and document management application

Bachelor

  • 2026, Jiří Kvapil, Improving rchk - a Tool to Identify Memory Errors in R Packages
  • 2026, Josef Malý, R bytecode compiler in C
  • 2026, Aung Pyae Phyo, QuizConnect
  • 2023, Filip Říha, Simple Object Machine implementation in functional programming language
  • 2023, Rostislav Blaha, An overview of gradual typing approaches in dynamic programming languages
  • 2021, Ondřej Kvapil, Haskell Dynamic Tracing
  • 2020, Narek Vardanjan, An actor model implementation for the OCaml programming language
  • 2020, Otakar Vinklář, Analyze Scala Code Using Graph Database
  • 2019, Jan Jindráček, Pattern matching in C11
  • 2019, Tomáš Jozífek, ArtilEcho - a strategy game for blind people
  • 2018, Petr Polívka, Conjugata - conjugation training app - backend
  • 2018, Matěj Sedlák, Conjugata - conjugation training app - frontend
  • 2017, Filippo Ghibellini, Dynamic test generation for R packages
  • 2016, Vít Medřický, Web application PWiL – System for localization of patients
  • 2016, Marek Foltýn, Interactively controlled PC games using smart phones