This paper proposes and validates a short and simple Expectancy-Value-Cost scale, called EVC Light. The scale measures the motivation of students in computing courses, allowing the easy and weekly application across a course. One of the factors related directly to the high rate of failure and dropout in computing courses is student motivation. However, measuring motivation is complex, there are several scales already carried out to do that job, but only a few of them consider the longitudinal follow-up of motivation throughout the courses. The EVC Light was applied to 245 undergraduate students from four universities. The Omega coefficient, scale items intercorrelation, item-total correlation, and factor analysis are used to validate and measure the reliability of the instrument. Confirmatory and exploratory factor analyses supported the structure, consistency, and validity of the EVC Light scale. Moreover, a significant relationship between motivation and student results was identified, based mainly on the Expectancy and Cost factors.
Integrating computational thinking into K-12 Education has been a widely explored topic in recent years. Particularly, effective assessment of computational thinking can support the understanding of how learners develop computational concepts and practices. Aiming to help advance research on this topic, we propose a data-driven approach to assess computational thinking concepts, based on the automatic analysis of data from learners’ computational artifacts. As a proof of concept, the approach was applied to a Massive Open Online Course (MOOC) to investigate the course’s effectiveness as well as to identify points for improvement. The data analyzed consists of over 3300 projects from the course participants, using the Scratch programming language. From that sample, we found patterns in how computational thinking manifests in projects, which can be used as evidence to guide opportunities for improving course design, as well as insights to support further research on the assessment of computational thinking.
Source code plagiarism is an emerging issue in computer science education. As a result, a number of techniques have been proposed to handle this issue. However, comparing these techniques may be challenging, since they are evaluated with their own private dataset(s). This paper contributes in providing a public dataset for comparing these techniques. Specifically, the dataset is designed for evaluation with an Information Retrieval (IR) perspective. The dataset consists of 467 source code files, covering seven introductory programming assessment tasks. Unique to this dataset, both intention to plagiarise and advanced plagiarism attacks are considered in its construction. The dataset's characteristics were observed by comparing three IR-based detection techniques, and it is clear that most IR-based techniques are less effective than a baseline technique which relies on Running-Karp-Rabin Greedy-String-Tiling, even though some of them are far more time-efficient.
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.
In this paper we present our experiences of teaching an annually organized virtual reality (VR) capstone course. We review three iterations of the course, during which a total of 45 students completed the course and 16 VR applications were implemented. Our comparative analysis describes the students' evaluation of the course, the applications created by them, and their development experiences. The results suggest that our gradual improvements on the course and the utilized software paid off, as the latest of the compared course iterations produced the best feedback and the highest quality VR applications. Our learning assessment analysis reveals that our course is effective in teaching VR application development and having students meet their personal learning goals. We also bring forward our RUIS toolkit that was used in the course with success, and present evidence on how better software toolkits can affect the development experience and allow students to create more impressive applications. Finally we share the lessons learned during five years of teaching the course, introducing several practical considerations for VR course organizers regarding pedagogics, software, and hardware.
Students' performances in introductory programming courses show large variation across students. There may be many reasons for these variations, such as methods of teaching, teacher competence in the subject, students' coding backgrounds and abilities, students' self-discipline, the teaching environment, and the resources available to students, all of which can affect student performance and outcomes. Our observations in teaching programming courses (at Al-Imam Muhammad Ibn Saud Islamic University in Riyadh) are that many students (up to 50% per course) drop out. There is a strong belief by many instructors that such a high dropout rate is due, at least in part, to students underestimating the effort needed to finish this course and not following instructions as recommended. This paper reviews the factors that affect student performance in an introductory programming course (CS1) and aims to discover correlations between various assessment methods, students' participation and their final performance measured. It analyses mark distributions across various assessment methods to identify which assessment method best predicts final exam marks and overall marks, and gives recommendations for assessment in introductory programming courses.
Physical computing covers the design and realization of interactive objects and installations and allows students to develop concrete, tangible products of the real world, which arise from the learners' imagination. This can be used in computer science education to provide students with interesting and motivating access to the different topic areas of the subject in constructionist and creative learning environments. To make many existing activities and examples of such project ideas available for classroom use and to expand the topic areas suitable for learning in such environments beyond introductory to programming, a physical computing syllabus for computer science courses in general education schools has been developed. In this paper the methods and different perspectives that were taken into account are presented. The resulting syllabus can be used to develop a constructionist computer science curriculum with physical computing.
We survey the literature about the teaching and learning of recursive programming. After a short history of the advent of recursion in programming languages and its adoption by programmers, we present curricular approaches to recursion, including a review of textbooks and some programming methodology, as well as the functional and imperative paradigms and the distinction between control flow vs. data flow. We follow the researchers in stating the problem with base cases, noting the similarity with induction in mathematics, making concrete analogies for recursion, using games, visualizations, animations, multimedia environments, intelligent tutoring systems and visual programming. We cover the usage in schools of the Logo programming language and the associated theoretical didactics, including a brief overview of the constructivist and constructionist theories of learning; we also sketch the learners' mental models which have been identified so far, and non-classical remedial strategies, such as kinesthesis and syntonicity. We append an extensive and carefully collated bibliography, which we hope will facilitate new research.
The goal of this literature study is to give some preliminary answers to the questions that aim to uncover the Pedagogical Content Knowledge (PCK) of Informatics Education, with focus on Programming. PCK has been defined as the knowledge that allows teachers to transform their knowledge of the subject into something accessible for their students. The core questions to uncover this knowledge are: what are the reasons to teach programming; what are the concepts we need to teach programming; what are the most common difficulties/misconceptions students encounter while learning to program; and how to teach this topic. Some of the answers found are, respectively: enhancing students' problem solving skills; programming knowledge and programming strategies; general problems of orientation; and possible ideal chains for learning computer programming. Because answers to the four questions are in a way not connected with each other, PCK being an unexplored field in Informatics Education, we need research based efforts to study this field.