When we “think like a computer scientist,” we are able to systematically solve problems in different fields, create software applications that support various needs, and design artefacts that model complex systems. Abstraction is a soft skill embedded in all those endeavours, being a main cornerstone of computational thinking. Our overview of abstraction is intended to be not so much systematic as thought provoking, inviting the reader to (re)think abstraction from different – and perhaps unusual – perspectives. After presenting a range of its characterisations, we will explore abstraction from a cognitive point of view. Then we will discuss the role of abstraction in a range of computer science areas, including whether and how abstraction is taught. Although it is impossible to capture the essence of abstraction in one sentence, one section or a single paper, we hope our insights into abstraction may help computer science educators to better understand, model and even dare to teach abstraction skills.
Computing science which focuses on computational thinking, has been a compulsory subject in the Thai science curriculum since 2018. This study is an initial program to explore how and to what extend computing science that focused on STEM education learning approach can develop pre-service teachers' computational thinking. The online STEM-based activity-Computing Science Teacher Training (CSTT) Program was developed into a two-day course. The computational thinking test (CTT) data indicated pre-service teachers’ fundamental skills of computational thinking: decomposition, algorithms, pattern recognition, pattern generalization and abstractions. The post-test mean score was higher than the pre-test mean score from 9.27 to 10.9 or 13.58 percentage change. The content analysis indicated that there were five key characteristics founded in the online training program comprised: (1) technical support such as online meeting program, equipment, trainer ICT skills (2) learning management system such as Google Classroom, creating classroom section in code.org (3) the link among policy, curriculum and implementation (4) pre-service teachers' participation and (5) rigor and relevance of how to integrate the applications of computing science into the classroom.
In this study, effectiveness of a computer science course at the secondary school level is investigated through a holistic approach addressing the dimensions of instructional content design, development, implementation and evaluation framed according to ADDIE instructional design model where evaluation part constituted the research process for the current study. The process has initiated when the computer science curriculum had major revisions in order to provide in-service teachers with necessary support and guidance. The study is carried through as a project, which lasted more than one year and both quantitative and qualitative measures were used through a sequential explanatory method approach. The intention was to investigate the whole process in detail in order to reveal the effectiveness of the process and the products. In this regard, not only teachers' perceptions but also students' developments in their perceptions of academic achievement and computational thinking, as well as correlations between the computational thinking sub-factors were investigated. The findings showed that the instructional materials and activities developed within the scope of the study, positively affected the computational thinking and academic achievement of students aged 10 and 12 years old. The teachers' weekly feedbacks regarding application structures and implementation processes were also supported the findings and revealed some more details that will be useful both for instructional designers and teachers.
In computer science education at school, computational thinking has been an emerging topic over the last decade. Even though, computational thinking is interpreted and integrated in classrooms in different ways, an identification process about what computational thinking is about has been in progress among computer science school-teachers and computer science education researchers since Wing's initial paper on the characteristics of computational thinking. On the other hand, the constructionist learning theory by Papert, based on constructivism and Piaget, has a long tradition in computer science education for describing the students' learning process by hands-on activities. Our contribution, in this paper, is to present a new mapping tool which can be used to review classroom activities in terms of both computational thinking and constructionist learning. For the tool, we have reused existing definitions of computer science concepts and computational thinking concepts and combined these with our new constructionism matrix. The matrix's most notable feature is its scale of learners' autonomy. This scale represents the degree of choices learners have at each stage of development of their artefact. To develop the scale definitions, we trialed the mapping tool, coding twenty-one popular international computing activities for pupils aged 5 to 11 (K-5). From our trial, we have shown that we can use the mapping tool, with a moderate to high degree of reliability across coders, to analyse classroom activities with regard to computational thinking and constructionism, however, further validation is needed to establish its usefulness. Despite a small number of activities (n = 21) being analysed with our mapping tool, our preliminary results showed several interesting findings. Firstly, that learner autonomy was low for defining the problem and developing their own design. Secondly that the activity type (such as lesson plan rather than online activity) or artefact created (such as physical artefact rather than onscreen activity or unplugged activity), rather than the computational thinking or computer science concept being taught was related to learner autonomy. This provides some tentative evidence, which may seem obvious, that the learning context rather than the learning content is related to degree of constructionism of an activity and that computational thinking per se may not be related to constructionism. However, further work is needed on a larger number of activities to verify and validate this suggestion.
Mathematical logic is a discipline used in sciences and humanities with different point of view. Although in tertiary level computer science education it has a solid place, it does not hold also for secondary level education. We present a heterogeneous study both theoretical based and empirically based which points out the key role of logic in computer science, computer science education and knowledge representation. We focus on the key contrast of semantics and syntax, the resolution principle as a leading inference technique (giving also interesting non-clausal generalization of the rule). Further we discuss the possibilities of inclusion the non-classical (many-valued) logics in education together with the original generalization of the non-clausal resolution rule into fuzzy logic. The last part describes partial results of the research concerning the secondary education in the Czech Republic especially in the mathematical logic field. The generalization of the presented ideas entails the article.