The Ursinus WebIDE: A Serverless Browser-Based Development Environment for Student Practice and Rapid Instructor Exercise Development

Document Type

Course Module

Publication Date

2025

Abstract

Completing “many small problems” (MSP) in CS1 has been shown to increase “student happiness” as well as performance outcomes. However, it is often difficult to develop and deploy interesting problems, and utilizing frameworks such as online textbooks can require fees or subscription services that create equity and access barriers to low-income students. The Ursinus WebIDE provides an open-source open educational resource (OER) that supports the rapid development of student exercises in a variety of course contexts and languages, including Java, Python, C++, Scheme, Prolog, and graphics (GLSL, WebGL) and multimedia (Pyodide). These exercises are presented to students in a consistent and serverless browser-based IDE interface that presents scaffolded files in a tree-based filesystem that can be specified by an instructor via a single easy-to-use Markdown file. Student submissions are checked against sample correct and incorrect solutions, with feedback provided for each. Correct submissions are automatically encrypted and immediately uploaded to a Google spreadsheet in a FERPA-compliant way, and processed with our open-source tool to automatically grade submissions to a course learning management system (LMS), without requiring integration with institutional computing systems. Students can be given hints for common mistakes, and they can also be given optional partial credit for attempting a solution. These tools can be deployed entirely free of cost by instructors and students using static Github Pages and Google Forms. We provide a repository of drop-in exercises compatible with the system via a GitHub repository for use, adaptation, and contribution.

Share

COinS