Pathway2Code is a platform that emphasizes teaching computational thinking concepts versus coding literacy within a programming language. The topic of computer programming pedagogy has received a great deal of attention in recent years. There are a variety of approaches for introducing students to how to construct sets of instructions that be executed by a computer. Several tools rely on game programming models to garner the student’s interest. Others guide the student through coding exercises in a particular language. While these approaches provide some level of skills needed to code, the ability to teach computational thinking in these environments is lacking. Developing computational thinking skills requires the ability to construct pseudo-code like solutions without becoming mired in the details of a programming language.

With Pathway2Code, the student is able to execute English like instructions to create graphical designs, musical scores, cross-stitching and other outputs. Students are presented clear output specifications and asked to develop the correct sequence of instructions, including programming paradigms as loops, methods, and if-then statements to reach the well-defined goal. Students can also integrate available images to add creativity to their solution. The point and click method is used to select for a set of available commands such drawRectangle or addNote to a musical score, or programming constructs such as a loop or method. After command selection, the student is then prompted for parameter values. Execution of the instruction set presents the visual output and in the case of the music world, the actually musical score constructed can be played. The goal is to enable the student to practice computational thinking skills necessary to solve real computational problems. It also leads to a smooth transition to the coding literacy knowledge required for programming.

The platform uses the scaffolding teaching methods where new concepts and commands are slowly introduce new programming and problem solving techniques. The platform also supports student assessment by generating statistical rubrics of a student’s work. These statistics point out the efficiency of the solution and highlight which new concepts such as loops were actually utilized by the student in the solution. The platform eases this transition by exporting the pseudo-code in a programming language and providing a supporting library for execution of the generated code in a traditional programming development environment such as Eclipse or Visual Studio.

The platform has been successfully used in problem solving and introductory programming courses for several years at the college level. It is currently being introduced as an independent study course.

Copyright : Douglas Moody