School of Computing

Fred Barnes

Senior Lecturer / Lab Archivist / UG Director of Studies (QA)

Photo of FRM Barnes, if available
  • Room S113
    School of Computing
    University of Kent,
    CT2 7NF


My publications are available from the University of Kent's Academic Repository.

Research Interests

I belong to the following research groups:

All things parallel. More specifically my research interests centre around the CSP model of parallel processing, encapsulated by the occam-pi multiprocessing language. This is a message-passing based model of concurrency, but I am also interested in the others (e.g. shared variable, including lock-free and wait-free algorithms, join calculus based abstractions, etc.). I'm also interested in parallel computing across clusters and on GPUs. Other interests include programming language design and implementation, operating systems and embedded systems. In other activities I'm responsible for organising and running the School of Computing's Open Day activities and their schools' outreach activities.

Outside of work (though being an academic makes the work/life distinction blurry sometimes!) I enjoy bell-ringing (campanology), rock-climbing, kung-fu and beer.


I teach on (or am otherwise involved with) the following modules:

  • CO527 Operating Systems and Architecture (15 level-I credits, spring term, module catalogue, internal moodle).
    This module teaches some of the low-level issues surrounding computer architecture (how the CPU/etc. work) and operating systems (structure, memory-management, scheduling, multiprocessors, filing-systems, etc.). For the 2013/2014 academic year, we're introducing some AVR assembly programming on the Arduino Uno.
  • CO545 Functional and Concurrent Programming (15 level-I credits, spring term, module catalogue, internal moodle).
    This module teaches some fundamental things in functional an concurrent programming (as every good CS'er should know about such stuff!). We're using Erlang as the language taught, as it's functional enough to cover that aspect, and has a decent implementation of process-based concurrency.
  • CO890 Concurrency and Parallelism (15 level-M credits, spring term, module catalogue).
    This module covers a wide range of topics surrounding concurrent and parallel programming, including methodologies, programming techniques/tactics and the hardware support provided.
  • CO600,CO620 final-year group and research projects (30 level H credits, both terms).
    This year I'm supervising just one CO600 group project.
  • CO646 Computing in the Classroom (15 level-H credits, spring term, module catalogue).
    I'm not teaching or convening this module but I am involved in the selection and examination of students. Essentially this is the module where students go into local schools to teach (in varied capacities) computing and related subjects; everything from ICT and year 7/8 up to computer-science or computing A-levels in years 12/13.
  • CO510 Software Engineering (30 level-I credits, both terms, module catalogue).
    This is the software engineering module for our undergraduate students; I "facilitate" (supervise) two of the group-project groups, comprising most of my stage-2 tutees. This year's project is some sort of HR management system.


Here are some of the projects I'm currently involved with:

(currently broken whilst our website undergoes some updates)

Here are some teaching-related things, that also count as research interests:


Other links

  • I was curious to know how much spam vs. mail I get, so I graphed it (and a good excuse to play around with rrdtool): How much spam..?

  • If you're a student looking for an internship with me, please see this page.

For Office365 Outlook Web App (OWA) Users

Some people can't read the digitally signed emails I sent out with OWA (it just refuses to view the message and whinces about S/MIME). Try:

  • Double-clicking the message to open it in a new window (if that works).
  • This workaround (from U-Texas) that turns off "conversations" (presumably they [Microsoft] really mean message threading here).
  • Get a GMail account and forward your University email to it.

The support-ish forum thread our local IS team pointed me at ( does nothing to suggest a fix is on the way nor why it's broken in the first place (specifically for just showing the regular plain-text part of a digitally signed message, other than some repeated redundant explanation about how good the other anti-stuff features are — relevant? sigh). The more formal response from the Microsoft Office folk just suggests to go and use another email client. Sigh. Unfortunately if you're at Kent, you get given Office365's OWA by default and changing to something less broken isn't always straight-forward.

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 28/04/2017