Development and Preliminary Testing of a Moodle-Based Virtual Programming Laboratory for Programming Practice at Universitas Terbuka
Abstract
Purpose – This study aims to describe the development and preliminary testing of a Moodle-based Virtual Programming Lab (VPL) prototype designed to support programming practice in the undergraduate Information Systems program at Universitas Terbuka, Indonesia. Design/methods/approach – The study documents the configuration, implementation, and preliminary testing of a Moodle VPL prototype for two courses: Web-Based Programming and Data Structures. The prototype integrates browser-based code editing, program execution, and submission facilities. Two types of practical activities were developed: constructing source code from problem descriptions and identifying and correcting errors in existing programs. Preliminary testing involved 12 Information Systems students in Surabaya. Findings – The prototype provided a programming practice environment integrated with Moodle. Preliminary observations indicated that students could generally operate the VPL environment, although not all programming challenges were completed. The findings document initial operability and implementation requirements rather than measurable improvements in programming performance. Research implications/limitations – The study offers practical considerations for integrating programming laboratories into distance education. However, the limited preliminary trial and the absence of operational classroom testing restrict conclusions about learning effectiveness and scalability. Further evaluation is required to examine exercise difficulty, assessment procedures, server capacity, and operational costs. Originality/value – This study contributes a context-specific implementation of Moodle VPL that combines code-construction and debugging activities within an open and distance-learning environment. It identifies instructional and operational considerations for preparing programming practice before wider implementation.