Nifty Web Apps: Build a Web App for Any Text-Based Programming Assignment
Kevin Lin, Sumant Guha, Joe Spaniac, Andy Zheng

TL;DR
This paper introduces a method for creating simple, efficient web apps for programming assignments that enhance user experience and are easy to modify, deploy, and access across devices.
Contribution
It presents a tutorial approach for building web apps that execute student code with significantly less code than traditional desktop interfaces, adaptable to various courses and languages.
Findings
Web apps require up to 75% less code than desktop GUIs.
Web apps can be run and modified locally or deployed online at no cost.
Applicable to CS1 and CS2 courses in Python and Java.
Abstract
While many students now interact with web apps across a variety of smart devices, the vast majority of our Nifty Assignments still present traditional user interfaces such as console input/output and desktop GUI. In this tutorial session, participants will learn to build simple web apps for programming assignments that execute student-written code to dynamically respond to user interactions resulting in a more modern app experience. Our approach requires up to 75% less code than similar desktop GUI apps while requiring few (if any) modifications to existing assignments. Instructors and students alike can run and modify these web apps on their own computers or deploy their apps online for access from any smart device at no cost. The tutorial presents examples from CS1 and CS2 courses in Python and Java, but the ideas apply generally.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsTeaching and Learning Programming · Child Development and Digital Technology · Mobile and Web Applications
