“I cannot teach anybody anything, I can only make them think” (Socrates)

[ Home ]

[ Background
[ Teaching ]

[ Research Interests


As Director of Studies, I am ultimately responsible for the nature and quality of all of the teaching in the department. I wrote the Departmental Teaching and Learning Strategy and I chair its Teaching Committee.

If there are any comments you would like to make about any aspects of teaching, please either contact me directly, in confidence, or contact the course representative for your programme. They will then forward your concerns to me.

Personal teaching

I teach and have taught mainly systems-type courses:


Z22/4C40 Distributed Systems and Security (Slides, notes)
I teach the security part of this course

D103 Systems Infrastructure (OS Slides, Compilers Slides)
I teach the operating systems part of this course

Term 2

Z23 Network and Application Programming
I teach details of the Linux kernel networking stack

Z06/4038 Mobile and Adaptive Systems (Slides)
I teach security, power awareness computing, and issues in pervasiveness for this course

D104 Algorithmics (Slides, website)
I teach the first half of this course; concentrating on practical algorithmics in Java

Projects [Project ideas can be found here]

I supervise a range of projects in the department. In 2003, these comprise:

  • A 3C02 software engineering project in conjunction with CHIME

  • Four 3C01/4C01 individual projects

  • Two MSc DCNDS project groups

  • MSc CS projects TBD

Professional activities

I am external examiner at the following institutions:

University of Sussex

University of East London
(MSc in Internet Engineering)

University of the West Indes, St Augustine Campus
(Undergraduate programme)

Contact: Dr. Stephen Hailes