The Effectiveness of a Program Visualization Tool on Introductory Programming: A Case Study with PythonTutor | Synapse