This study aims to explain the relationships between secondary school students' digital literacy, computer programming self-efficacy and computational thinking self-efficacy. The study group consists of 204 secondary school students. A relational survey model was used in the research method and three different data collection tools were used to collect data. The structural equation model was used in data analysis to reveal a model that explains and predicts the relationships between variables. According to the results of the research, it was determined that digital literacy of secondary school students affected their computer programming self-efficacy, digital literacy affected their computational thinking self-efficacy, and computer programming self-efficacy affected their computational thinking self-efficacy. It was also found that digital literacy skills have an indirect effect on secondary students' computational thinking self-efficacy on computational thinking self-efficacy.
In education, we have noticed a significant gap between the ability of students to program in an educational visual programming environment and the ability to write code in a professional programming environment. The aim of our research was to verify the methodology of transition from visual programming of mobile applications in MIT App Inventor 2 to textual programming in the Android Studio using the Java Bridge tool as a mediator of knowledge transfer. We have examined the extent, to which students will be able to independently program own mobile applications after completing the transition from visual to textual programming using the mediator. To evaluate the performance of students, we have analysed qualitative data from teaching during 1 school year and determined the degree of achievement of educational goals according to Bloom’s taxonomy. The results suggest that students in the secondary education can acquire advanced skills in programming mobile applications in a professional programming environment, when they have knowledge of visual programming in an educational programming environment, and a suitable mediator is used to transfer such knowledge into a new context.
In programming problem solving activities, sometimes, students need feedback to progress in the course, being positively affected by the received feedback. This paper presents an overview of the state of the art and practice of the feedback approaches on introductory programming. To this end, we have carried out a systematic literature mapping to understand and discuss the main approaches for providing and evaluating feedback used in the learning of novice programmers in the problem solving activity. Thus, according to a formal protocol, an automatic search was performed for papers from 2016 to 2021. As a result, 39 studies were selected for the final analysis. As a result, we propose three different categorizations: the main approaches to providing feedback, the main methods used in the evaluation and the main aspects and effects of the evaluated feedback.
Authors of this paper carried out a broader international research aimed at assessing the computer science education at upper secondary level of education - ISCED 3A. The assessed school subjects were informatics and programming as the most common school subjects taught at secondary schools within computer sciences. The assessment was based on the students' evaluations, their points of view and opinions, what was a specific feature of the research. The paper presents main findings and results for the school subject programming obtained in Slovakia (SK) and the Czech Republic (CZ). As a weakness of teaching programming in both countries inadequate quality of textbooks or a lack of appropriate textbooks in general was identified. As strength of the programming teaching in the Czech Republic attractiveness of the content of the school subject programming (its curriculum) was identified and in Slovakia it was the clearness of teachers' presentations of teaching material.
The paper analyses the problems in selecting and integrating tools for delivering basic programming knowledge at the university level. Discussion and analysis of teaching the programming disciplines, the main principles of study programme design, requirements for teaching tools, methods and corresponding languages is presented, based on literature overview and author`s experience. A pressure from labor market, students and other sources to emphasize practical skills over deeper, long-term programming concepts is described. A model of teaching introductory programming disciplines at a higher logical level, using C#, is presented as a summary of the accomplished analysis, and also taking into account the recommendations of the ACM (Association for Computing Machinery) association for typical teaching programs. Also, design principles for building introductory programming courses, aligned with such teaching approach, are presented. This model has already been trialed at Vytautas Magnus University.