T8-T2-4 - An Effective Approach to Teach an Introductory Computer Science Course with Computational Thinking and Flow-Chart Based Visual Programming

2. Research-to-Practice Full Paper
Md Rahman1 , Monir Sharker1, Roshan Paudel1
1 Morgan State University

This Research to Practice Full Paper presents our experience with positive outcomes (increase motivation and retention)  in teaching an introductory programming course in Python during the Fall 2019 semester.   Without reinventing the wheel, we infused  few well established  pedagogies by  integrating  and evaluating Computational  Thinking (CT)  skill in a meaningful way  with the existing  curriculum  alongside programming  and  teaching general problem-solving techniques with a flowchart-based programming environment (RAPTOR)  and without using specific programming concepts or languages at the beginning. Our intended aim here  is not only to teach a programming language per se, but also to teach at the beginning the different ways of problem solving, logical reasoning, algorithm design, and programming constructs with minimal or no emphasis on syntax.  A positive learning experience is  successfully developed for our students by using appropriate teaching strategies and establishing a conducive and dynamic classroom environment. To evaluate the impact of this infusion, a pre- and post-survey as well as a pre- and post-Computational Thinking test were conducted on student cohort in different sections. The statistical  evaluation of the survey and  test results as well as several formative and summative assessments show evidence to conclude that  the proposed pedagogical approach  increases student engagement  and motivation in  learning and improves  student’s problem solving and coding skills.