My teaching focusses on software based topics utilising blended learning techniques.

Current teaching (2017-18):




Some of the projects mentioned here are associated with commercial companies and covered by NDAs…

Project supervision

If you have any ideas for a project that fits within my interests, then please feel free to come and discuss it with me.

I look to take on students who are intelligent (which you are by definition of being a Birkbeck student!) and who have an interest in the project that they are about to undertake. Students should be self-motivated to a degree and be keen to explore the topic. You should not be afraid to express your ideas and follow them. However, you need to be balanced in your approach and practice scientific practices in evaluating your own work. If you have the basics, we can work together to put together a good solid project.

I like to see students take control of the project and run with their ideas and thoughts. This means that students exercise a degree of independence - however, I don’t expect this to translate to going off into a dark corner and never seeing me. My role is to provide some guidance and advice. There is clearly a conflict between these two expectations and so what we need to do is work together to strike a suitable balance between self-direction/independence and guidance/direction.

  • Guide to writing MSc dissertations (yes it is for Maths but most of the recommendations carry over) [pdf]
  • Report writing: A generic report structure
  • A writing style guide I have found useful is The Elements of Style by William Strunk, Jr., and E. B. White
  • Some useful thoughts from the University of Birmingham (pdf)
  • Information for project students (local access only)
  • Possible topics (local access only)
  • Sample projects (local access only)


  • Software engineering with particular attention to multi-paradigm programming languages
  • Environments and tools for teaching programming
  • Information retrieval with particular attention focused on content-based image indexing and retrieval
  • Location aware mobile applications
  • Enterprise level applications using JEE, Spring, .NET, etc.
  • Deployment and scaling of applications for “The cloud”
  • Software tooling

Recent Publications



Make an appointment