Flowgorithm: Principles for Teaching Introductory Programming Using Flowcharts

Devin D. Cook · 2025

For students, the task of learning their first programming language can be compounded by the challenges of syntax, semantics and superfluous code.Historically, programming languages had a gentle learning curve requiring little syntactic or semantic overhead.Modern object-oriented languages, however, create a conceptual hurdle.Even the trivial Hello World program contains syntactic and semantic complexity far beyond the level of a beginning student.This paper introduces Flowgorithma programming environment which allows students, with little to no programming experience, create programs using the visual metaphor of flowcharts.These flowcharts can be executed directly by the built-in interpreter allowing students to learn programming concepts before being confronted with language-specific syntax and semantics.Flowgorithm provides an integrated learning path so students can apply their knowledge to a "real" programming language.The flowcharts can be interactively translated to over 10 programming languages.These include: C#, C++, Delphi/Pascal, Java, JavaScript, Lua, Python, Ruby, Visual Basic .NET, and Visual Basic for Applications.This allows a natural transition from the simple procedural logic of flowcharts to the more common object oriented languages used by universities today.

Read the paper · More papers on PaperTik