71,344 research outputs found

    Emergent requirements for supporting introductory programming

    Get PDF
    The problems associated with learning and teaching first year University Computer Science (CS1) programming classes are summarized showing that various support tools and techniques have been developed and evaluated. From this review of applicable support the paper derives ten requirements that a support tool should have in order to improve CS1 student success rate with respect to learning and understanding

    Towards a debugging tutor for object-oriented environments

    Get PDF
    Programming has provided a rich domain for Artificial Intelligence in Education and many systems have been developed to advise students about the bugs in their programs, either during program development or post-hoc. Surprisingly few systems have been developed specifically to teach debugging. Learning environment builders have assumed that either the student will be taught these elsewhere or thatthey will be learnt piecemeal without explicit advice.This paper reports on two experiments on Java debugging strategy by novice programmers and discusses their implications for the design of a debugging tutor for Java that pays particular attention to how students use the variety of program representations available. The experimental results are in agreement with research in the area that suggests that good debugging performance is associated with a balanced use ofthe available representations and a sophisticated use of the debugging step facility which enables programmers to detect and obtain information from critical momentsin the execution of the program. A balanced use of the available representations seemsto be fostered by providing representations with a higher degree of dynamic linkingas well as by explicit instruction about the representation formalism employed in the program visualisations

    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

    Collaboration Versus Cheating

    Full text link
    We outline how we detected programming plagiarism in an introductory online course for a master's of science in computer science program, how we achieved a statistically significant reduction in programming plagiarism by combining a clear explanation of university and class policy on academic honesty reinforced with a short but formal assessment, and how we evaluated plagiarism rates before SIGand after implementing our policy and assessment.Comment: 7 pages, 1 figure, 5 tables, SIGCSE 201

    LEARNING HOW STUDENTS ARE LEARNING IN PROGRAMMING LAB SESSIONS

    Get PDF
    Department of Computer Science and EngineeringProgramming lab sessions help students learn to program in a practical way. Although these sessions are typically valuable to students, it is not uncommon for some participants to fall behind throughout the sessions and leave without fully grasping the concepts covered during the session. In my thesis, I will be presenting LabEX, a system for instructors to understand students' progress and learning experience during programming lab sessions. LabEX utilizes statistical techniques that help distinguishing struggling students and understand their degree of struggle. LabEX also helps instructors to provide in-situ feedback to students with its real-time code review. LabEX was evaluated in an entry-level programming course taken by more than two hundred students in UNIST, establishing that it increases the quality of programming lab sessions.ope
    • ā€¦
    corecore