Teaching
My open source educational resources
Current teaching
-
(Kent) COMP5002 - Functional Programming (convener, Year 2) - 2016-present
-
(Kent) COMP4016 - Computer Systems (convener, Year 1) - 2026-present
Previous
-
CO661 - Theory and Practice of Concurrency (Year 3) - 2018-2022
-
CO583 - Introduction to programming via the web (Year in Computing) - 2016-2021
-
CO580 - Year in Computing projects (convener, Year in Computing) - 2017-2020
-
CO519 - Theory of Computing (Year 2) - 2017-2021
-
CO323 - Databases and the web (Year 1) - 2017
-
Type Systems for Programming (Year 2, Cambridge) - 2014
-
Research topics: Mathematically structured programming (Year 3, Cambridge) - 2014
-
Small-group teaching:
Hoare Logic & Model Checking (2016),
Optimising Compilers (2008-09, 2013-14),
Semantics of Programming Languages (2009-14),
Logic and Proof (2013-14),
Concepts in Programming Languages (2010-11),
Comparative Architectures (2009)