Return to homepage Skip to navigation Skip to site search Skip to main content Skip to footer

Dr Adam Sampson

Role: Head of Division - Computing and Maths

Division: Division of Computing and Mathematics

School/Department: School of Arts, Media & Computer Games

Telephone Number: +44 (0)1382 308431

Email: A.Sampson@abertay.ac.uk



Biography

I'm a Senior Lecturer within the Division of Computing and Mathematics at Abertay University, teaching computer science across several of AMG's degrees. Most of my current research activity is around complex systems simulation, and software engineering for cybersecurity.

My background is in lightweight concurrency and programming language implementation. I did my PhD at the University of Kent, then worked as an RA on the EPSRC CoSMoS project, before joining Abertay's School of Arts, Media and Computer Games as a lecturer in 2010. I became Head of the new Computing and Mathematics division when it was created in 2015, and returned to lecturing in 2017 when AMG became the School of Design and Informatics.

In my spare time, I'm a trad/folk musician and open source developer.

Teaching

I teach a number of modules as part of AMG's computer-science-related programmes, including:

  • CMP101 CHAOS, along with Ian Ferguson, which introduces students to the fundamentals of computer architecture through practical exercises with little electronic devices;

  • CMP201/202 Data Structures and Algorithms along with Ruth Falconer, which does exactly what it says on the tin, with a focus on the relationship between data design, algorithms and modern high-performance computer architecture;

  • CMP303 Network Systems for Games Development, which introduces our computer games students to network architecture and software development, and the high-performance distributed systems technology used in games;

  • CMP409 Languages and Compilers, which gives our students a broader background in language design and implementation;

  • CMP501 Network Games Development, which covers network games development for MSc students.

In addition, I supervise a variety of student research projects at undergraduate and postgraduate levels. I'm particularly interested in projects that sit at the intersection(s) of language design/implementation, digital media and secure software development. If you'd like to work in this space, then please come and talk to me!
 

Research

My research background is in concurrency: designing, building and analysing software and hardware systems in which multiple activities take place at the same time. Concurrency is a vital part of modern computer science: it gives us the conceptual tools that enable us to work effectively with the parallel processing architectures that have become ubiquitous over the last decade.

One focus of my current work is the use of concurrency in scientific simulation, to model naturally-concurrent systems with very large numbers of interacting entities, and to exploit that natural concurrency in order to obtain efficient parallel execution. I work within the cancer and games groups at Abertay -- and with colleagues at other universities -- on a variety of scientific problems.
 
A particular interest is in multi-scale simulations of cancer cell growth, linking detailed low-level models of chemical signalling within the cell to larger-scale physical simulations of cell interactions. However, I'm interested in developing reusable technologies for these kinds of problems -- and the approaches that we use to study the treatment of cancer can equally well be applied to the development of electricity distribution networks.
 
My other major area of interest is in the tools that we use to build software systems -- in particular, support for safe, efficient, concurrent software development in modern programming languages. The last five years have seen a resurgence in interest in message-passing concurrency, with languages such as Go and Rust showing substantial influence from CSP and CSP-derived languages (e.g. occam, which I spent most of my formative years as a researcher working with). This period has also -- finally -- started to show a shift away from unsafe languages such as C and C++, and a move towards safety and security by construction in software engineering. Along with cybersecurity colleagues within AMG, I work on projects that aim to improve the correctness and security of complex software systems.

Publications

For a full list of my publications and presentations, please see: http://offog.org/publications/

Esteem

I'm on the committee of WoTUG, a research organisation that has promoted tools and techniques for concurrency for more than 25 years. I've been a member of the editorial board of WoTUG's CPA conference series several times, and hosted CPA 2012 at Abertay. I'm an external examiner at the University of the West of Scotland.