Comments are vital for software documentation. They provide necessary insights and assist developers in understanding and maintaining the software. Due to their importance, comments have been extensively studied, and ...
详细信息
Comments are vital for software documentation. They provide necessary insights and assist developers in understanding and maintaining the software. Due to their importance, comments have been extensively studied, and much has been learned about them. These existing studies have predominantly focused on textbased languages. Conversely, block-based visual programming languages, particularly Scratch, are becoming increasingly popular. Some studies regarding comments related to the Scratch online community focus on topics such as fostering online community and engagement, sentiment analysis, etc. However, they overlook the visual aspects and the qualitative analysis of comments within code in Scratch projects. This is a meaningful limitation, and this research project studies comments and their pattern in Scratch projects from both textual and visual perspectives. We examined comments collected from different Scratch projects. Each comment was manually annotated based on textual and visual attributes, producing a taxonomy model of comments fora visual programming language. The classification results were analyzed to understand better the practice of commenting in Scratch. Our result revealed that Scratch projects produced noisier(i.e., less understandable) comments than text-based programming languages like Java. In addition, the study also revealed several limitations and shortcomings that could be addressed to improve the commenting experience in Scratch.
This article reports on a design-based research study centered on the conception and the assessment of the Pyrates application. This online serious game aims at introducing Python programming to K-12 students while ea...
详细信息
This article reports on a design-based research study centered on the conception and the assessment of the Pyrates application. This online serious game aims at introducing Python programming to K-12 students while easing the transition from block-based to text-based languages. After we present the various aspects underlying the block-to-text transition as well as the related existing applications, we describe the design of Pyrates. First, we built the levels of the game to deal with the different fundamental concepts of programming in a constructivist approach. Next, we were inspired by advantageous characteristics of block-basedprogramming editors to create the editing environment of Pyrates. To assess this conception, we tested the application in eight classrooms with 240 French 14-15 years old students. Students' activity traces have been collected and were augmented by a qualitative online survey. By analyzing this dataset, we showed that the levels' design generally allows to apprehend the targeted concepts consistently with the constructivist principles. Regarding the editing environment, we established that it supports the block-to-text transition in several aspects: concept transposition (general models and illustrative examples), reduction of errors (beginners aware syntax analyzer), command catalog (programming memo for discovery and syntax reference), and program composition (copy button that limits keyboarding). Finally, Pyrates, which has already been played over 140,000 times, offers practitioners an environment that facilitates the transition from blocks to text, as well as a serious game to master the fundamental concepts of Python programming, and novel avenues to follow for tool designers.
The emergence of block-based environments aims to facilitate the problems caused by the abstractness of text-based languages. Recent studies generally focus on the effect of having block-based experience on programmin...
详细信息
The emergence of block-based environments aims to facilitate the problems caused by the abstractness of text-based languages. Recent studies generally focus on the effect of having block-based experience on programming education. This study is an attempt to observe the transfer of previous programming experiences (block-based vs. text-based) into a three-dimensional game-making environment through the use of backwards fading. In addition to observation of transfer, students' perceptions about the difficulty of practices were also investigated. Twenty-one senior university students participated in the study. They practiced through worked example, completion example, and full practice. Moreover, the comparison of the contribution of three examples, their perceived difficulty, and cognitive load has also been observed. There are four main findings that add value to the current literature. First, students having text-based programming experience had higher scores, which may be a sign of far transfer;second, completion example format was more efficient for students having block-basedprogramming experience;third, full practice format was perceived as more difficult than either worked example or completion example;and fourth, based on the efficiency of example formats, completion example represented high efficiency for all students. However, average efficiency of all example formats has represented high efficiency for students, who had text-based programming experience.
The study examined the effect of teaching text-based programming with a physical programming tool on secondary school students' computational thinking skills and self-efficacy perceptions. The study was conducted ...
详细信息
The study examined the effect of teaching text-based programming with a physical programming tool on secondary school students' computational thinking skills and self-efficacy perceptions. The study was conducted according to a sequential explanatory design as a mixed method research. The study group consisted of 85 secondary school students. Within the scope of the study, a physical programming tool called Micro:bit was used to teach Python programming for a period of 6 weeks. Data were collected using the Self-Efficacy Perception Scale for Computational Thinking Skill, Bebras: International Challenge on Informatics and Computational Thinking Tasks, tests focused on programming tool, concepts, and processes, and through semi-structured interview questioning. According to the findings obtained from pretests and posttests, a significant and positive difference was found in the students' computational thinking skills and self-efficacy perceptions towards computational thinking skill. As a result of having received instruction in programming, the students satisfactorily learnt the required programming concepts and processes. Through learning Python programming with a physical programming tool, the students not only gained the skills required to write appropriate syntax, and to test and debug code, but they also learnt programming concepts such as variables, conditional expressions, loops, and functions.
Objectives Code style is an important aspect of text-based programming because programs written with good style are considered easier to understand and change and so improve the maintainability of the delivered softwa...
详细信息
Objectives Code style is an important aspect of text-based programming because programs written with good style are considered easier to understand and change and so improve the maintainability of the delivered software product. However teaching code style is complicated by the existence of many style guides and standards that contain inconsistent, low-level advice. The objective of the study is to support educators in helping students understand the nature of these inconsistencies by highlighting the rationale behind rules and their contextual nature. Participants Seventy members of local and national computing science education (CSE) groups contributed in the exploratory phase. Fifty-two members of the ACM SIGCSE members mailing list and the Australasian Chapter contributed in the evaluation and refinement phases. These mailing lists represent a large, global population of CSE educators. Study Methods We created, evaluated and refined an abstract code style model (CSM) comprising a Definition and eight Principles for code style. For CSM creation, we took an exploratory approach based on an examination of the existing literature on code quality and style. To evaluate the level of community endorsement for the model, we analysed quantitative and qualitative data from an international survey questionnaire. We refined the CSM based on an analysis of the qualitative survey data. Findings Analysis of the data from the survey indicated a strong level of support for the CSM. Quantitative data revealed a general agreement with the Principles, with responses for five Principles achieving a minimum of 84 percent agreement and all Principles achieving a minimum of 66 percent agreement. Qualitative data contained very few comments that voiced dissatisfaction with a basic aspect of the model. We found that barriers to developing a community-wide CSM were the strongly-held beliefs about style held by some and the abstract nature of the CSM. Conclusions The creation of an abstrac
Block-basedprogramming is the latest and alternative approach to attract student in learning programming subject. In many schools and universities in Malaysia, text-based programming technique is widely use to teach ...
详细信息
ISBN:
(纸本)9781665436892
Block-basedprogramming is the latest and alternative approach to attract student in learning programming subject. In many schools and universities in Malaysia, text-based programming technique is widely use to teach programming subject and most of students unable to appreciate the approach especially when the output is something intangible. Visual-basedprogramming has been introduced to tackle student's interest in learning programming subject, however according to our finding, chances of student to lost focus is still high and it is related to the output of programming. In this study, a UNITEN Smart programming Apps using combination robotic and block-basedprogramming (RoBlock) is proposed. Further, the performance (student's time spent and student focus) of the text-based programming (JAVA), Scratch and RoBlock are compared. Results showed that our proposed RoBlock tools outperforms conventional way to teach programming subject and native block-basedprogramming tools (Scratch).
暂无评论