  Traditional pen and paper exams are inadequate for modern university
programming courses as they are misaligned with pedagogies and learning
objectives that target practical coding ability. Unfortunately, many
institutions lack the resources or space to be able to run assessments in
dedicated computer labs. This has motivated the development of
bring-your-own-device (BYOD) exam formats, allowing students to program in a
similar environment to how they learnt, but presenting instructors with
significant additional challenges in preventing plagiarism and cheating. In
this paper, we describe a BYOD exam solution based on lockdown browsers,
software which temporarily turns students' laptops into secure workstations
with limited system or internet access. We combine the use of this technology
with a learning management system and cloud-based programming tool to
facilitate conceptual and practical programming questions that can be tackled
in an interactive but controlled environment. We reflect on our experience of
implementing this solution for a major undergraduate programming course,
highlighting our principal lesson that policies and support mechanisms are as
important to consider as the technology itself.
