A Transformation of the Way of Thinking. Key Principles in Programming Education Inspired by Pascal
The work of Niklaus Wirth, designer of the Pascal programming language, has led to the introduction of programming in schools in many countries often leading to a transformation in the way of thinking. In this article, we provide a retrospective analysis of the Lithuanian experience driven by Pascal...
Saved in:
Published in | Informatics in education Vol. 23; no. 4; pp. 735 - 765 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | English |
Published |
Vilnius
Vilniaus Universiteto Leidykla
01.01.2024
Vilnius University Press Institute of Mathematics and Informatics Vilnius University |
Subjects | |
Online Access | Get full text |
ISSN | 1648-5831 2335-8971 |
DOI | 10.15388/infedu.2024.25 |
Cover
Summary: | The work of Niklaus Wirth, designer of the Pascal programming language, has led to the introduction of programming in schools in many countries often leading to a transformation in the way of thinking. In this article, we provide a retrospective analysis of the Lithuanian experience driven by Pascal and discuss the main ideas about teaching programming originating from this experience. We conducted a qualitative study by means of interviews with experts involved in the development of programming education during its early phases to examine their memories and perspectives. Programming education in Lithuania started with the Pascal-inspired Young Programmers’ School by Correspondence, founded in 1981, which had a great influence on the Lithuanian programming elite. For this purpose, a compiler for a subset of Pascal was developed for students taking their first steps towards programming, or more precisely, algorithmic thinking. Many innovations were developed and brought into practice. The ones that have proved their worth and have not lost their relevance are the subject of this article. These include assessing program text readability, cultivating programming style, program reading tasks, creative thinking tasks, problem-solving approaches, detailed compiler error messages, automatic error fixing, and compiler advice to novice programmers. While some concepts became obsolete with technological advancements, others remain relevant, directly or as inspiration for new ideas, forming the basis of this study. |
---|---|
Bibliography: | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
ISSN: | 1648-5831 2335-8971 |
DOI: | 10.15388/infedu.2024.25 |