Teaching

I'm a Fellow of AdvanceHE.

Papers on Education
  1. Yatapanage, N. Introducting Formal Methods to Students who Hate Maths and Struggle with Programming, Formal Methods Teaching Workshop and Tutorial, Lecture Notes in Computer Science, Vol.13122, pp.133-145, Springer-Verlag, 2021. Download from Springer.

Courses that I have taught or am currently teaching:
  • Course Convenor, COMP4011/8011 Special Topics in Formal Methods and Programming Languages: Concurrent Software Verification, ANU, Semester 1, 2025.
  • Course Convenor, COMP1600 Foundations of Computing, ANU, Semester 2, 2025 and Semester 2, 2023. ~400 students.
  • Course Convenor, COMP1100/1130 Programming as Problem Solving, ANU, Semester 1, 2023 and Semester 1, 2024. ~400 students.
  • Lecturer, Logic for Verification, ANU Logic Summer School, ANU, 2022. See the course resources.
  • Lecturer (for 5 lectures), COMP3704 Network Security, ANU, Semester 2, 2021.
  • Course Convenor, CTEC2909 Data Structures and Algorithms, De Montfort University, Term 1 2018-2019. 240+ students.
  • Course Convenor, CTEC2910 Concurrent and Parallel Algorithms, De Montfort University, Term 2 2018-2019. 240+ students.
  • Course Convenor, CTEC2901 Data Structures and Algorithms (includes concurrency), De Montfort University, (Year-long course) 2017-2018. 200+ students.
  • Lecturer, Scientific Reasoning and Software Testing intensive week-long component of a foundation course, De Montfort University, U.K., June 2017.
  • Guest Lecturer, CSC3321 Understanding Programming Languages, Newcastle University, U.K.,
    - Sem 2, 2016
    - Sem 2, 2015.
  • Demonstrator (Teaching Assistant), Same course as above,
    - Sem 2, 2017
    - Sem 2, 2016
    - Sem 2, 2015
    - Sem 2, 2014.
  • Guest Lecturer, 2509ICT Software Engineering, Griffith University, Australia, Sem 1, 2008.
  • Instructor, Building Complex Systems (short course for industry participants), Software Quality Institute, Griffith University, Australia, July 10-11th, 2007.