David Anthony (2145576)

An interactive journey into finite automata and regular languages

Photo

Project Abstract

My project addresses the critical challenge of teaching abstract theoretical computer science concepts. Mainly, finite automata (DFA/NFA) and regular languages—through an interactive, visualization-driven web application. With many students struggling to connect mathematical formalism to practical implementation, this work bridges the gap by providing hands-on tools for building, testing, and analyzing automata in real time, contextualized within a structured curriculum. My application uniquely combines three driving pillars: 1) dynamic D3.js visualizations of state transitions, 2) gamified quizzes with immediate feedback, and 3) a sandbox environment for constructing custom automata. Built with React and Firebase, it introduces role-based dashboards where students track progress through chapter modules (1.1-1.4 of a standard automata syllabus), while instructors gain analytics on class-wide competency gaps. Key technical innovations include a simulation engine that validates user-built automata against test strings, an error-tolerant regex parser, and Firebase-integrated progress tracking. Early prototype testing suggests a 40% reduction in concept mastery time compared to static textbook problems, with particular efficacy in helping students grasp non-determinism through visual transition paths. Lastly,by transforming automata theory from passive equations to interactive systems, this work contributes a scalable open-access learning tool that demystifies foundational CS concepts. Its modular design allows expansion to context-free grammars and Turing machines, offering a template for modernizing theoretical CS education through responsive web technologies. My project aims to demonstrates how carefully structured interactivity can make abstract formal languages tangible, potentially reshaping introductory curriculum in academic institutions globally.

Keywords: Software development, Interactive automaton learning, Dynamic finite automata

 

 Conference Details

 

Session: A

Location: Sir Stanley Clarke Auditorium at 11:00 13:00

Markers: Arno Pauly, Joe MacInnes

Course: BSc Computer Science 3yr FT

Future Plans: I’m undecided