In the 2016/17 academic session I am teaching the following modules at St Andrews:
- CS2001: Foundations of computation, with Jon Lewis. I teach the parts on algorithm design and analysis
- CS2003: The internet and the web, the internet, with Alex Voss. I teach the parts on protocols and services
Over the years I have also taught software engineering, context-aware systems, principles of programming languages, type theory, semantics, communications and internet technologies, as well as several invited tutorials.