DIGITAL LIBRARY
CS1: C, JAVA OR PYTHON? TIPS FOR A CONSCIOUS CHOICE
Universidade Portucalense (PORTUGAL)
About this paper:
Appears in: ICERI2019 Proceedings
Publication year: 2019
Pages: 2512-2519
ISBN: 978-84-09-14755-7
ISSN: 2340-1095
doi: 10.21125/iceri.2019.0666
Conference name: 12th annual International Conference of Education, Research and Innovation
Dates: 11-13 November, 2019
Location: Seville, Spain
Abstract:
Introduction to programming languages is a fundamental point for a student’s beginning in the world of computing. Success in programming fundamentals is essential to student success during one’s academic career. The matters which are taught in technology courses are of great concern for teachers and course coordinators.

Throughout the last decades it has been verified that the great alterations presented in computer science courses were the new programming languages and paradigms, or at least the transition from structured programming to object oriented programming. The content of curricular units has always remained the same. 30 years ago it was common to use a programming language based on BASIC. Twenty years ago Turbo Pascal was commonly used. In the last 10 years has been a discussion about the use of C, Java and Python for students who are having their first contact with programming. In previous studies we verified that these are the three programming languages most used on the first semester of computer science courses. In the second semester 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 an alternative one in the second. This last path usually happens with Python and C.

The choice of which programming languages to teach 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 job market.

This article reflects on the choice of which programming language to adopt in CS1. It also lists the languages which are currently most widely adopted in the “real world” and in introductory programming courses in higher education, as well as some studies which help the choice of which programming language to choose. Pedagogical questions and the preparation of students for work are the most important questions addressed by this article. It also list some items that can and should be considered for a conscious choice.
Keywords:
Programming languages, CS1.