71,344 research outputs found
Emergent requirements for supporting introductory programming
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
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
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
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
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
- ā¦