CS1: C, Java or Python? Tips for a conscious choice - Sobral, Sónia Rolland (2019)
Introduction to programming languages is a fundamental point for the beginning of students in the world of computing. The success of programming fundamentals is essential to student success during their academic career. The subject taught in technology courses is a major concern for teachers and course direction. Throughout history it has been verified that the great alterations presented were the new programming languages and paradigms, at least the transition from structured programming to object oriented programming. The content of curricular units remains the same. 30 years ago it was common to use a programming language based on BASIC. Twenty years ago Turbo Pascal was used. In the last 10 years there is a discussion about the use of C, java and Python for first contact with programming. In previous studies we verified that these are the three programming languages most used in the first semester of the courses in computer science. In the second semesters the most used languages are C, C ++ and java. There are two paths to follow: using the same programming language in the first two semesters or using one language in the first semester and another in the second. This last path usually happens with Python and C. The choice which programming language taught is often like that of a football club or religious option, other times it is linked to other important factors such as applications from employers in the world outside the university. This article reflects on the choice of which programming language to adopt in CS1, lists the languages currently most widely adopted in the real world, and used in introductory programming courses in higher education, as well as some studies to choose the initial language. Pedagogical questions and the preparation of students for work are the most important questions. This article list some items that can and should be considered for a conscious choice.