## 3 Data and Methods  
FCYP is preceded by five first-semester common courses: Algebra I (which students are required to pass before taking FCYP), Calculus I, Physics I, Introduction to Engineering, and Study Methods. The last two courses may require some explanation: Introduction to Engineering focuses on the development of group-working skills while students develop a semester-long project to provide innovative solutions to an open problem. Study Methods is intended to guide students in their adaptation to University life and to level up key skills needed for academic success, such as time management, reading comprehension, and report writing. Students should, by design, take FCYP in addition to Calculus II, Physics II, Algebra II, and, depending on the programme, Chemistry and the introductory course to their engineering specialisation. Although a single course, FCYP has two separate parts that students must pass independently. The first component, theory, teaches the core concepts regarding programming in Python: syntax and semantic structures, simple and compound data types, and functions. To pass this part of the course, students have to apply these tools to solve bounded real-world and engineering problems. In the second component, laboratory, students work in groups to develop a semester-long project. Students must create a functional and creative computational solution to an open problem within a given context in order to pass. This work is focused on the theory part of the course, given that the laboratory grade represents the group's overall performance rather than a single student's level of success. Common to all 20 engineering programmes at the University of Santiago de Chile, FCYP is offered in the second semester of each programme. The course is managed by two coordinators who are responsible for ensuring that all lecturers adhere to the specified schedule for each unit of study, as well as the university's official syllabus. Additionally, they provide the minimum resources and materials required for the course. Likewise, all students enrolled in the course during a given semester take the same assessments simultaneously. These assessments, unique for each semester, are designed by a team of course instructors. During the observation period, assessments were handwritten without the use of computers to test the code. Each assessment consisted of two to three questions, requiring students to create a Python program for a given problem. Course lecturers graded each assessment according to a rubric developed by the coordination team, with a focus on the algorithm, syntax aspects, and code readability. For an in-depth description of the assessment methodology used in FCYP, [PERSON] et al. [43] provides a comprehensive account. The goal of this study is to establish which students' features best predict students' outcomes in FCYPs' theory part. For this purpose, the data set considers the variables described in Table 1, identified as relevant in previous work [44] for being the ones that best predict student dropout by the end of the first semester and in [27] for predicting whether students pass or fail the theory component of the course using the same data set. It should be noted that the Chilean grading scale applies to final grades for the following variables: AL, PHY, ALG, MET, INT, and GPA. These grades range from 1.0 to 7.0, with a minimum passing grade of 4.0. The data set includes four cohorts of students who took FCYP between the second semester of 2015 and the first semester of 2019 (\(n=6516\)). The first semester of 2019 has been established as the cut-off date because the second semester was irregular due to a social outburst in Chile, and academic activities were carried out in an emergency remote teaching (ERT) format during 2020 and 2021 because of the COVID-19 pandemic lockdown.