Warren, Joe2016-01-272016-01-272015-052015-04-23May 2015Tang, Lei. "A Browser-based Program Execution Visualizer for Learning Interactive Programming in Python." (2015) Master’s Thesis, Rice University. <a href="https://hdl.handle.net/1911/88174">https://hdl.handle.net/1911/88174</a>.https://hdl.handle.net/1911/88174Good educational programming tools help students practice programming skills and build better understanding of basic concepts and logic. As Rice University started offering free Massive Open Online Courses (MOOC) on the internet, we developed a web-based programming environment to teach introductory programming course in Python. The course is now one of the top-rated MOOC courses, which is believed largely due to the successful web-based educational programming environment. Here we will introduce the thought processes behind the design and then focus on the key innovations incorporated in it. The main contribution of this thesis is an entirely browser-based Python program execution visualizer that graphically demonstrates the execution information to help students understand the dynamics of program execution. Especially, this tool can also be used to visualize and debug event-driven programs. The design details and unit test infrastructure for the program execution visualizer are both introduced in this thesis.application/pdfengCopyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.Program Execution VisualizerMOOCInteractive ProgrammingPythonA Browser-based Program Execution Visualizer for Learning Interactive Programming in PythonThesis2016-01-27