Navigation
Teaching
Current (2012/2013):
- Software Reliability
- Programming II - Object Oriented Programming
- 2011/2012: Programming II - Object Oriented Programming
- École de Recherche on Semantics and Tools for Low-Level Concurrent Programming, ENS Lyon, January 2013. Lectured on formal verification techniques for GPU kernels.
- SICSA International Summer School on Advances in Programming Languages, Heriot-Watt University, Edinburgh, August 2009. Gave lecture entitled Multicore Compilation: an Industrial Approach, and designed practical session based on Codeplay's Offload C++.
- Software Verification (Hilary Term 2011). Gave two lectures on Predicate Abstraction and Counterexample Guided Abstraction Refinements.
- Software Verification (Hilary Term 2010). Designed and oversaw practicals on Bounded Model Checking and Counter Example Guided Abstraction Refinement.
- Compilers (Hilary Term 2010). Gave guest lectures on Type Checking and Runtime Environments. Also took classes and helped with practicals.
- Object-Oriented Programming (Michaelmas Term 2009). Gave guest lectures on Object Identity and Memory Management. Took students from Merton College and Corpus-Christi College for tutorial sessions.
- Advances in Programming Languages course at University of Edinburgh (2008 and 2009). Gave guest lectures: The Cell Processor: a Compiler Challenge (2008) and Method Duplication: Automating Code Migration to Multicore (2009).
- Compilers course at University of Glasgow (2008 and 2009). Gave same guest lectures as for the Edinburgh course above.
- Data Structures and Algorithms (Autumn 2006). Gave guest lectures on Abstract Data Types and Binary Trees.
- CS1P Introductory Programming (2002-2006). Tutored groups of 1st year undergraduates.
- CS1Q Introduction to HCI, Databases and Systems (2002-2006), Tutored groups of 1st year undergraduates.