Some thoughts on teaching introductory programming and the first language dilemma - Archive ouverte HAL Access content directly
Conference Papers Year : 2023

Some thoughts on teaching introductory programming and the first language dilemma


There is a consensus among computer education experts and practitioners that teaching introductory programming is intrinsically hard. In particular, the choice of the first programming language to support learning the fundamentals of problem solving and algorithmic reasoning is a hot issue that is driving a lot of attention within the last few decades. As a side effect, the computing education community has been long divided between supporters of industrial relevance and advocates of educational benefits as the prominent grounds on which a first programming language should be elected. While the former seem to have the wind in their sails, with popular-in-industry languages such as Java, C and C++ being still widely used to teach introductory programming, the case is far from being closed. In this paper, we propose to analyze the first language choice dilemma in the light of a number of rigorous studies carried out within and outside of the computing education community. We show that, in the light of these studies, we can efficiently question our choices as educators and stimulate objective discussions toward reconciling our views regarding the first language choice. Mainly, we devise a number of criteria, all backed up with scientific findings from different communities, according to which a first language should be evaluated. Our conclusions converge toward a justified concern vis-à-vis the use of languages such as Java and C to teach introductory programming, and the pressing need for a better compromise between industrial popularity and educational advantages. To meet that need, our position gravitates around two major opinions stemming from our cross-disciplinary analysis: (i) Java, C and C++ should not be used to teach introductory programming and should rather be saved for more advanced programming courses and (ii) while the recent trend of choosing Python is justified, it is still debatable and therefore other candidates, among which we propose a couple, should also be seriously considered. Besides arguing in favor of these opinions, the primary aim of our analysis is to trigger fruitful discussions on the subject fuelled by cross-disciplinary research findings rather than personal opinions.
Fichier principal
Vignette du fichier
Koli.pdf (524.11 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-04293446 , version 1 (18-11-2023)



Mohammed Foughali. Some thoughts on teaching introductory programming and the first language dilemma. 23rd Koli Calling International Conference on Computing Education Research, Nov 2023, Koli, Finland. ⟨10.1145/3631802.3631812⟩. ⟨hal-04293446⟩
32 View
69 Download



Gmail Facebook X LinkedIn More