160 likes | 179 Views
Problets: Online Programming Tutors for Computer Science I. Amruth N. Kumar Ramapo College of New Jersey amruth@ramapo.edu. What Problets do:. Present problems: Debugging programs Predicting the output of programs Evaluating expressions Grade student’s answer Provide instant feedback
E N D
Problets: Online Programming Tutors for Computer Science I Amruth N. Kumar Ramapo College of New Jersey amruth@ramapo.edu
What Problets do: • Present problems: • Debugging programs • Predicting the output of programs • Evaluating expressions • Grade student’s answer • Provide instant feedback • Record student performance • Provide summary to the instructor Amruth Kumar, amruth@ramapo.edu
Problems presented to the student • No two problems are alike • Problems presented ad-infinitum • Adapted to the learning needs of the student • Hard to guess the correct answer Amruth Kumar, amruth@ramapo.edu
Feedback provided to the student • Whether the student’s answer is correct or wrong • Step-by-step explanation of the execution of the problem code • Animated • Visualized • Question promoting reflection Amruth Kumar, amruth@ramapo.edu
Summary provided to the instructor Progress of Jane Doe: • Pretest: Solved 16 problems, 50% correct • Practice: Solved 24 problems, 46% correct • Post-test: Solved 20 problems, 72% correct Concepts not understood by at least 60% of the students: • When loop variable is updated before the action in a loop • Nested independent loops Amruth Kumar, amruth@ramapo.edu
Using the problets • For problem-solving exercises in/after class • Provides instant feedback • Promotes active, self-paced learning • For assignments and tests • Automatically grades and logs scores • Deters plagiarism/cheating Amruth Kumar, amruth@ramapo.edu
The topics (C++/Java/C/C#) • Expression evaluation (Arithmetic, Relational) • Variables, Scope • Selection statements (if, if-else) • Loops (while, do-while, for) • Functions • Classes in C++ • Pointers in C++ • Other topics to come (all CS I topics) Amruth Kumar, amruth@ramapo.edu
The logistics • Instructor requests a problet for a specific language + topic: • Free for educational use • Instructor assigns the problet in a course: • Announces the URL • Students use the problet online: • Takes 35-45 minutes • Supervision not necessary • Instructor requests summary Amruth Kumar, amruth@ramapo.edu
Stages in using a typical problet • Registration • Pre-Survey • Trial Run • Pre-Test • Practice • Feedback • Post-Test • Post-Survey Amruth Kumar, amruth@ramapo.edu
The pedagogy of problets • Active learning • Learning by solving problems • Deep learning • Self-paced learning • Immediate feedback/reinforcement • Asynchronous learning • Learning from mistakes • Supplements classroom instruction • Complements programming projects Amruth Kumar, amruth@ramapo.edu
Evaluation - Some results • Problets help students learn programming concepts • Step-by-step explanation promotes learning • Women learn just as well as men • Class self-confidence improves • Students very positive about learning from problets Amruth Kumar, amruth@ramapo.edu
Literature about the problets • Case studies: Expressions [CCSCNE 01], Selection [FIE 00], for Loops [FIE 03], C++ Pointers [FIE 02 , ITiCSE 01], C++ Classes [ED-MEDIA 03], Scope Concepts [SIGCSE 04, ITiCSE 00], Parameter Passing [ITiCSE 02] • Technology: [AI 04, ICALT 03, AI-ED 03, ITS 02] • Evaluation: [SIGCSE 05, FIE 04, ICTEM 02] Amruth Kumar, amruth@ramapo.edu
Contact Information If interested, please contact: amruth@ramapo.edu Acknowledgements: • NSF CCLI DUE 0088864 • NSF EI CNS 0426061 Amruth Kumar, amruth@ramapo.edu
Problet on expression evaluation Amruth Kumar, amruth@ramapo.edu
Problet on debugging Amruth Kumar, amruth@ramapo.edu
Problet on predicting the output Amruth Kumar, amruth@ramapo.edu