104,594 research outputs found

    Introductory programming: a systematic literature review

    Get PDF
    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

    Get PDF
    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

    Improving the Quality of Technology-Enhanced Learning for Computer Programming Courses

    Get PDF
    Teaching computing courses is a major challenge for the majority of lecturers in Libyan higher learning institutions. These courses contain numerous abstract concepts that cannot be easily explained using traditional educational methods. This paper describes the rationale, design, development and implementation stages of an e-learning package (including multimedia resources such as simulations, animations, and videos) using the ASSURE model. This training package can be used by students before they attend practical computer lab sessions, preparing them by developing technical skills and applying concepts and theories presented in lecture through supplementary study and exercises

    Implicit Theories and Self-efficacy in an Introductory Programming Course

    Full text link
    Contribution: This study examined student effort and performance in an introductory programming course with respect to student-held implicit theories and self-efficacy. Background: Implicit theories and self-efficacy shed a light into understanding academic success, which must be considered when developing effective learning strategies for programming. Research Questions: Are implicit theories of intelligence and programming, and programming-efficacy related to each other and student success in programming? Is it possible to predict student course performance using a subset of these constructs? Methodology: Two consecutive surveys (N=100 and N=81) were administered to non-CS engineering students in I\c{s}{\i}k University. Findings: Implicit theories and self-beliefs are interrelated and correlated with effort, performance, and previous failures in the course and students explain failure in programming course with "programming-aptitude is fixed" theory, and also that programming is a difficult task for themselves.Comment: Programming Education. 8 page

    Links between the personalities, styles and performance in computer programming

    Get PDF
    There are repetitive patterns in strategies of manipulating source code. For example, modifying source code before acquiring knowledge of how a code works is a depth-first style and reading and understanding before modifying source code is a breadth-first style. To the extent we know there is no study on the influence of personality on them. The objective of this study is to understand the influence of personality on programming styles. We did a correlational study with 65 programmers at the University of Stuttgart. Academic achievement, programming experience, attitude towards programming and five personality factors were measured via self-assessed survey. The programming styles were asked in the survey or mined from the software repositories. Performance in programming was composed of bug-proneness of programmers which was mined from software repositories, the grades they got in a software project course and their estimate of their own programming ability. We did statistical analysis and found that Openness to Experience has a positive association with breadth-first style and Conscientiousness has a positive association with depth-first style. We also found that in addition to having more programming experience and better academic achievement, the styles of working depth-first and saving coarse-grained revisions improve performance in programming.Comment: 27 pages, 6 figure

    Effects of Automated Interventions in Programming Assignments: Evidence from a Field Experiment

    Full text link
    A typical problem in MOOCs is the missing opportunity for course conductors to individually support students in overcoming their problems and misconceptions. This paper presents the results of automatically intervening on struggling students during programming exercises and offering peer feedback and tailored bonus exercises. To improve learning success, we do not want to abolish instructionally desired trial and error but reduce extensive struggle and demotivation. Therefore, we developed adaptive automatic just-in-time interventions to encourage students to ask for help if they require considerably more than average working time to solve an exercise. Additionally, we offered students bonus exercises tailored for their individual weaknesses. The approach was evaluated within a live course with over 5,000 active students via a survey and metrics gathered alongside. Results show that we can increase the call outs for help by up to 66% and lower the dwelling time until issuing action. Learnings from the experiments can further be used to pinpoint course material to be improved and tailor content to be audience specific.Comment: 10 page
    • …
    corecore