In 2016-17 I am teaching:

Click here for information about studying for an undergraduate degree with us.

Previous courses

Computer Security

I taught this course since introducing it, from 1999-2015. It is now in the capable hands of my colleagues Myrto Arapinis and Kami Vaniea.

Advances in Programming Languages

I taught Advances in Programming Languages jointly with Ian Stark from 2009-2011.

Types and Programming Languages

I taught Types and Programming Languages in 2004-6, closely following the material in Benjamin Pierce's book of the same title. If I were to teach this course again, I would be tempted to challenge the students by using Coq, following the development of a formalised course in Software Foundations by Pierce and his collaborators.
2014: This year, Phil Wadler is teaching a new course Types And Semantics for Programming Languages which does this, using the proof assistant Coq.

Human-Computer Interaction

I taught Human Computer Interaction jointly with Barbara Webb in 2007. Here are some slides that I put together for my parts of the course:

I claim no originality in content apart from the assembly and combination of material. Most of the material is adapted from standard HCI texts such as that by Alan Dix et al. If I was teaching this course now I would probably use the book Press On by Harold Thimbleby.

Other courses

I've been involved in teaching a range of other courses in Informatics.

Most notable was the main first year Computer Science 1 course which I taught from 2000-2004, and which I was responsible for organising. We had a class size of (at times) over 300 students, a team of 5 lecturers, two teaching assistants and a dozen tutors. The course introduced basic concepts of Computer Science, including automata, data structures and algorithms, alongside programming in Java.

my Vcard
David R. Aspinall, email
Contact GPG key (Instant HOWTO)