
2019). An online IDE embedded in an APAS can
support students in independently identifying issues
and correcting errors in beginner programming. Na-
tive IDEs also support students with those features,
but often student access to these native IDEs can-
not be guaranteed due to the students’ different back-
grounds, resources, and technical equipment. There-
fore, a feature-rich online IDE that can be accessed
within a browser is a good way to ensure that every
student has the same conditions and equal opportuni-
ties. The need for SE tools integrated into learning
platforms, such as an online IDE for APAS, has also
been identified in previous studies and underlines the
need for development (Meißner et al., 2024).
To address these challenges, we found that an
online IDE should at least incorporate several key
features like syntax highlighting, auto-completion,
and syntax error highlighting. Additionally, students
should be able to compile and run code directly in the
APAS without submitting their code, therefore trig-
gering the execution of the test cases and leading to a
significant overhead.
While one might argue that this excessive tooling
could inhibit the memorization of basic syntax, we
believe this concern does not apply to programming
education. Programming syntax is highly language-
specific and does not necessarily translate to an un-
derstanding of the broader concepts essential for pro-
gramming. For instance, focusing on learning the
syntax of a single language by rote could lead to diffi-
culties when transitioning to other languages. Instead,
our position is that tools like syntax highlighting and
code completion enable students to focus on solving
problems and developing algorithms, which are fun-
damental skills in programming. These tools help stu-
dents identify errors and improve their code quality,
ultimately strengthening their conceptual understand-
ing rather than detracting from it.
The primary goal of this work is to further investi-
gate and address the mentioned challenges by explor-
ing the following research questions:
• RQ1: What are the primary challenges and neces-
sary architectural considerations for developing a
feature-rich online IDE for APASs?
• RQ2: What are students’ perceptions of the usabil-
ity and usefulness of the new online IDE?
We conducted a comprehensive study involving
several key steps to address these research questions.
First, we gathered and defined key requirements for
an online IDE in an educational context. Based on
these requirements, we designed and implemented
a prototypical open-source solution to be integrated
with an APAS. Finally, we evaluated the implementa-
tion by conducting user studies to assess its effective-
ness and gather student feedback.
Our evaluation shows that the implemented online
IDE effectively addresses the identified challenges
and is positively received by students, enhancing their
learning experience. Through this study, we aim to
contribute to the field of programming education by
providing insights into developing and integrating an
effective online IDE within an APAS and presenting
how the students perceive and utilize the tool.
The remainder of this paper is structured as fol-
lows: Section 2 provides an overview of related work.
Section 3 elaborates on the requirements an online
IDE should fulfill. Section 4 then presents details
about the prototypical implementation of the online
IDE, which we evaluate in Section 5. In Section 6,
we present the evaluation results and a respective dis-
cussion. Section 7 outlines potential threats to valid-
ity, and we conclude in Section 8, reflecting on the
broader implications of this work.
2 RELATED WORK
Web-based IDEs are gaining popularity with both
open-source and commercially hosted options becom-
ing more widely available. For instance, (Wu et al.,
2011) introduced CEclipse, an online IDE designed
for cloud-based programming. With CEclipse, the au-
thors have focused on implementing an online IDE
with functions similar to Eclipse’s. However, since
2011, Eclipse has been developed further with new
helpful functions, rendering CEclipse obsolete. In ad-
dition, the authors have mainly focused on program
analysis issues to ensure security and analyze pro-
gram behavior to improve programmer efficiency. In
contrast, the approach presented in this paper focuses
on a high-performance online IDE designed explicitly
for APASs.
More recently, (Trachsler, 2018) unveiled
WebTigerJython, a web-based programming IDE for
Python, featuring a clean interface and a textual code
editor. However, the author focused on computer
science courses at Swiss schools in his master’s
thesis. The requirements for this online IDE differed
from ours, as the author had to ensure programming
on a tablet and, therefore, only implemented basic
functionalities for developing and executing Python
programs in the browser. Compared to our work, the
thesis did not focus on integrating APASs.
(Pawelczak and Baumann, 2014) implemented
Virtual-C to teach C programming with visualization
tools to help students understand programming con-
cepts. Their work integrated live coding functions in
the lectures for programming assignments and self-
An Online Integrated Development Environment for Automated Programming Assessment Systems
49