Interactive, Language-neutral Flowcharts and Pseudocode for Teaching Core CS0/1 Programming Concepts: (Abstract Only).

SIGCSE '18: The 49th ACM Technical Symposium on Computer Science Education Baltimore Maryland USA February, 2018(2018)

Cited 2|Views15
No score
Abstract
Introductory programming courses often use a full-featured programming language, such as Python, Java, or C++, wherein students concurrently learn programming concepts along with language syntax. However, many instructors believe that learning programming concepts first, then learning a specific language's syntax, may be more effective than learning both concurrently. Thus, some courses first teach programming via flowcharts and pseudocode. Some tools and materials support teaching programming via flowcharts, but we felt much improvement was needed. Therefore, we developed a new flowchart language, named Coral-Charts, specifically intended to teach fundamental programming constructs like assignments, branches, loops, functions, and arrays. We developed a web-based graphical simulator for Coral-Charts; no local tool installation is necessary (unlike the most common existing flowchart tool). The simulator always displays the values of variables, which helps students comprehend the impact of statements. The simulator enforces a layout that intentionally mirrors textual code's top-to-bottom execution and sub-statement indentation, easing the transition to a textual language. Furthermore, we defined a new pseudocode-like language, named Coral (corallanguage.org), that is executable and that matches Coral-Charts. Syntax is ultra-simple and only essential constructs are included. Certain features automatically detect or eliminate many new-learner errors. Students can type Coral code, from which a Coral-Charts flowchart is auto-generated, and students can execute both the code and flowcharts. Coral was carefully designed to naturally lead into languages Python, Java, or C++. Coral and Coral-Charts are used in the textbook Fundamental Programming Concepts (zybooks.com/catalog/fundamental-programming-concepts). We welcome feedback on the approach and potential collaborators in implementing experiments.
More
Translated text
Key words
Flowcharts,language-neutral,pseudocode,CS0,CS1,interactive,programming concepts
AI Read Science
Must-Reading Tree
Example
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined