2,024 research outputs found
Introductory programming: a systematic literature review
As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming.
This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research
Visual and Textual Programming Languages: A Systematic Review of the Literature
It is well documented, and has been the topic of much research, that Computer
Science courses tend to have higher than average drop out rates at third level.
This is a problem that needs to be addressed with urgency but also caution. The
required number of Computer Science graduates is growing every year but the
number of graduates is not meeting this demand and one way that this problem
can be alleviated is to encourage students at an early age towards studying
Computer Science courses.
This paper presents a systematic literature review on the role of visual and
textual programming languages when learning to program, particularly as a first
programming language. The approach is systematic, in that a structured search
of electronic resources has been conducted, and the results are presented and
quantitatively analysed. This study will give insight into whether or not the
current approaches to teaching young learners programming are viable, and
examines what we can do to increase the interest and retention of these
students as they progress through their education.Comment: 18 pages (including 2 bibliography pages), 3 figure
The abstraction transition taxonomy: developing desired learning outcomes through the lens of situated cognition
We report on a post-hoc analysis of introductory programming lecture materials. The purpose of this analysis is to identify what knowledge and skills we are asking students to acquire, as situated in the activity, tools, and culture of what programmers do and how they think. The specific materials analyzed are the 133 Peer Instruction questions used in lecture to support cognitive apprenticeship -- honoring the situated nature of knowledge. We propose an Abstraction Transition Taxonomy for classifying the kinds of knowing and practices we engage students in as we seek to apprentice them into the programming world. We find students are asked to answer questions expressed using three levels of abstraction: English, CS Speak, and Code. Moreover, many questions involve asking students to transition between levels of abstraction within the context of a computational problem. Finally, by applying our taxonomy in classifying a range of introductory programming exams, we find that summative assessments (including our own) tend to emphasize a small range of the skills fostered in students during the formative/apprenticeship phase
Initial Results for Quantifying AOP
This technical report reports on the initial result which were gathered from an controlled experiment, conducted on the the third of June, at ASML, in the Netherlands. This basically summarizes all information without much context information and much interpretation of the data
Web-Based Collaborative Learning in CS1: A Study on Outcomes of Peer Code Review
Based on a teacher-organized student-to-student code review session, we gathered both quantitative and qualitative data from 177 first-semester Information Technology undergraduate students to learn about their thoughts, experiences and outcomes from collaborative learning through an online tool in an introductory programming course. The students were given a programming exercise to solve using JavaScript in a Web-based IDE facilitating real time code sharing for peerevaluation of code based on five provided evaluation criteria: naming of artifacts in the code, formatting of code, use of data types, use of execution flow, and other comments. In the survey questionnaire, we employed a five-point Likert scale with an additional text field for qualitative feedback. For the qualitative free-text based answers, thematic coding was carried out to identify recurring themes and topics in the students’ answers. Based on the students’ feedback, our results indicate that the majority of the participants had positive experiences resulting in self-reported learning through collaborative work, peer-evaluation and problem solving
Web-based collaborative learning in CS1 a study on outcomes of peer code review
Based on a teacher-organized student-to-student code review session, we gathered both quantitative and qualitative data from 177 first-semester Information Technology undergraduate students to learn about their thoughts, experiences and outcomes from collaborative learning through an online tool in an introductory programming course. The students were given a programming exercise to solve using JavaScript in a Web-based IDE facilitating real time code-sharing for peer-evaluation of code based on five provided evaluation criteria: naming of artifacts in the code, formatting of code, use of data types, use of execution flow, and other comments. In the survey questionnaire, we employed a five-point Likert scale with an additional text field for qualitative feedback. For the qualitative free-text based answers, thematic coding was carried out to identify recurring themes and topics in the students' answers. Based on the students' feedback, our results indicate that the majority of the participants had positive experiences resulting in self-reported learning through collaborative work, peer-evaluation and problem solving.publishedVersio
Individual Code Reviews to Improve Solo Programming
Programming is a difficult subject for many students and therefore a popular topic in computing education research, with extensive research into the teaching and learning of programming (Sheard et al., 2009).Peer code reviews (or code inspections,) have been successfully applied to the teaching of programming (Hundhausen et al., 2009, Trytten, 2005, Wang et al., 2008). Code reviews can also be applied in a individual context as in the Personal Software Process (PSP) (Humphrey, 1997). Making the review process individual eliminates the problems associated with group and pair work as the student is working alone. The aim of this research is to ascertain whether individual code reviews based on checklists (like those used in PSP (Humphrey, 1997) and during formal code inspections in industry (Sommerville, 2007),) with minimal reporting can be used to improve solo programming.The results shown an increase in performance however this is not statistically significant possibly due to the small sample size
- …