PROGRAMMING FOR UNDERGRADUATE MATHEMATICIANS FROM A LONG-TERM PERSPECTIVE
Comenius University (SLOVAKIA)
About this paper:
Conference name: 16th International Conference on Education and New Learning Technologies
Dates: 1-3 July, 2024
Location: Palma, Spain
Abstract:
We are exploring a university course of programming for students who are not computer scientists. The course is designed for the first year students of mathematics science, and in recent years we regularly find that about 50% of them have no previous experience in programming. That is why we put effort to ensure that as many of them as possible successfully complete the course. At the same time, we try to build positive attitude towards programming. During the long existence of our course, there have been various interventions that we have had to adapt to. That is why we found it interesting to analyse and review this course in retrospect.
In the first part of the paper we use qualitative methods of analysis. We focus on C++, C# and Python programming languages that were uses in our course, libraries and development environments in terms of their suitability for our students. We analyse the topics covered, how the course content has changed over time and the reasons for these changes. We also clarify and analyse the criteria we used for student assessment. All of the above elements, along with changing students and society, are variables. This research resulted in identification of time intervals, during which several variables were invariant.
In the second part of the paper, we statistically evaluate the data we have collected over the last 25 years. Since we can split the data according to the specified time intervals, we are also able to compare some of them.
As a result, we can say that the cancellation of the final theoretical test in programming did not have a statistically significant effect on passing the final practical exam at the computer. We also have observe that in recent years student grades do not have a normal distribution, but about 60% of students get A grades, while the rest get other grades. In this case, we believe that this was not done by switching from C++ to C#, but by appropriately splitting several classical but difficult programming concepts such as structured variables (arrays, files, objects) into separate parts. Teaching them at appropriate intervals thus gives students space to learn the concepts, gain experience with them, and also facilitates successful completion of the course.Keywords:
Programming, course analysis, assessment, statistics.