Prof Graham Kirby

Prof Graham Kirby

Professor

Researcher profile

Phone
+44 (0)1334 46 3240
Email
graham.kirby@st-andrews.ac.uk

 

Biography

I've worked in Computer Science at St Andrews since 1991, initially as a research assistant, and then lecturing since 1999. Within the School I've been Adviser of Studies, Admissions Officer and Director of Teaching. At Faculty level I held the roles of Pro Dean Advising and then Associate Dean Students from 2016-22, and jointly the role of Acting Dean of Science for six months in 2019.

Teaching

In 2024-25 I'm teaching on CS1002 and CS5035.

For current students: here are some project proposals for Masters projects in summer 2025.

Here are some Honours projects that I’ve supervised previously:

  • user-friendly file backup (Pengan Tang, 2024)
  • costs simulation for electric vehicle migration (Mehzar Rizvi, 2024)
  • managing coursework extension requests (Joe Mitchell, 2024)
  • literate programming in Java (Amy Boyce, 2024)
  • steganographic messaging (Calum Naughton, 2024)
  • code defactoring tool (Anna Peddie, 2023)
  • marine VHF radio simulator (James Topley, 2023)
  • terrain-sensitive routing (Will Evans, 2023)
  • forward planning tool for advising (Sahl Blakey, 2023)
  • Napier88 to Java compiler (Jodie Love, 2018)
  • S-algol to Javascript compiler (William Trend, 2016)
  • exam typesetting tool (Jamie Maclean, 2016)
  • adaptable curriculum analysis (Ryan Hamilton, 2016)
  • lightweight threads and asynchronous I/O (Hamish Morrison, 2015)
  • uncertainty in linked data (Tom Dalton, 2015)
  • FUSE diagnostic tool (Matthew Dooler, 2014)
  • understanding thread interactions (Ivan King, 2014)
  • race performance analyser (Chukwudi Anyiam-Osigwe, 2013)
  • arbitrary-precision Mandelbrot viewer (Paul Cox, 2012)
  • policy-driven distributed file synchronisation (Lewis Headden, 2012)
  • XML schema generation from examples (Robert Tomsick, 2010)
  • apache configuration editor (Owen Rudge, 2009)
  • online course planning tool (Ashley Sole, 2008)

And Masters dissertations:

  • machine learning for historical record linkage (Phetrus Rodrigues & Wanzhen Zhu, 2024)
  • renewables calculator (Tian Jia & Biyang Li, 2024)
  • a programming game in Python (Chunyuan Peng, 2023)
  • steganographic messaging (Punit Jain, 2023)
  • visualisation of uncertain genealogical structures, jointly supervised with Miguel Nacenta (James Williamson, 2017)
  • an email client supporting causality analysis and disclosure control (Raghubir Singh, 2016)
  • athletics performance analytics tool (Yiming Ren, 2016)
  • a database using plain text files (Iswariya Raghu, 2016)
  • module delivery system (Sunaiyana Thakuria, 2014)
  • second-hand business-to-business e-market solutions (Antoine Casanova, 2013)
  • a web-only content management system (Georgios Chrysafidis, 2013)

Research areas

I'm involved in the ESRC-funded Digitising Scotland project, which aims to construct a linked genealogy of Scottish historical records, with Chris DibbenLee Williamson and Zhiqiang Feng at Edinburgh, and Alan Dearle and Özgür Akgün in Computer Science at St Andrews. This work also includes Eilidh Garrett and Alice Reid at Cambridge, and Peter Christen at ANU.

I previously led a work package on linkage methodology within the ESRC-funded Administrative Data Research Centre - Scotland, with Alan DearleÖzgür AkgünPeter Christen and Alasdair Gray.

I'm also interested in distributed systems and programming languages in general.

Previous PhD Students

Second Supervisor

Previous Projects

  • H2O: autonomic resource-harvesting database
  • ASA: secure location-independent autonomic storage architectures
  • RAFDA: reflective architecture for distributed applications
  • DIAS: evolving sensornet design through co-design
  • ACT: automatic configuration testing
  • Archware: architecting evolvable software
  • GLOSS: global smart spaces
  • XBase: generic storage architecture
  • orthogonal persistence, hyper-programming and linguistic reflection

Selected publications

 

See more publications