Things I teach:
Undergraduate:
- COMP0003 - Theory of Computation (Term 2): Co-taught with James Brotherston since Spring 2018. This class is an intro theory class for 1st year BSc students consisting of two parts: Logic and Automata. I teach the latter. Topics include: regular expressions, DFAs and NFAs, context-free grammars, pushdown automata, and Turing machines.
- COMP0014 - Intelligent Systems (Term 2): Since Spring 2020. This is the first, introductory module in the Intelligent Systems IEP minor. The module is a fairly theoretical overview of the field of artificial intelligence, with some practical lab sessions intended to (1) give non-CS students on the minor practice programming, (2) provide practical applications of concepts from lecture, and (3) introduce mathematical content needed for the next module in the minor (Machine Learning). I am in charge of designing and running these lab practical sessions.
- ENGF0034 - Scenarios (Term 2): Since Spring 2019. Was previously part of ENGF0002 - Design and Professional Skills. 1st year students apply their learning from the past year on two group projects.
Masters:
- COMP0178 - Database Fundamentals (Term 1): Since Fall 2019. Was previously COMP0022 - Database and Information Systems. This is a core module for the MSc Computer Science programme, and a core or optional module on several other technology-related masters programmes. It is an overview of the essential concepts related to computer databases. No programming background is assumed for this module.
- COMP0132 - MSc Robotics and Computation Dissertation (summer project): Since Fall 2020. MScRaC students are matched with academic and industry supervisors to work on robotics-related projects over the summer.