St Andrews HCI Research Group

Visual Programming Languages

Daniel Rough, Aaron Quigley


The Experience Sampling Method (ESM) captures participants’ thoughts and feelings in their everyday environments. Mobile and wearable technologies afford us opportunities to reach people using ESM in varying contexts. However, a lack of programming knowledge often hinders researchers in creating ESM applications. In practice, they rely on specialised commercial tools for app creation. As part of my PhD research, we have developed “Jeeves”, a visual language to facilitate ESM application creation for end-users such as psychologists and clinicians.
A preliminary usability study with 20 participants has demonstrated that both non-programmers and programmers are able to successfully utilise Jeeves to create sensible app specifications.

Primary motivations of this project are to allow researchers to rapidly prototype and deploy their own ESM applications without assistance from professional programmers, or reliance on expensive commercial tools. Providing the researchers with a simple interface to harness the power of built-in smartphone sensors allows created applications to become ‘context-aware’, which have the potential to minimise participant attrition by avoiding sampling at inconvenient times or locations.

Current work is focused on development of the client-side Android application Casper (Context Aware Smartphone Platform for ESM Research), which runs on a participant’s smartphone, executing the specifications created by researchers through Jeeves.


Rough, D., Quigley, A., ‘An end-user interface for behaviour change intervention development’, AVI ’14 Proceedings of the 2014 International Working Conference on Advanced Visual Interfaces, 2014,

Rough, D., Quigley, A., ‘Jeeves – A Visual Programming Environment forMobile Experience Sampling’, “Visual Languages and Human-Centric Computing” (VL/HCC 2015), 2015,


Visual Programming environment

Visual Programming environment