Prutor A Tutoring System for Introductory Programming


Prutor is a software system for teaching introductory programming. It comprises among other things, an interface where students can solve programming problems, and receive immediate feedback on their solutions, while solving the problems. What makes Prutor unique is the ability to integrate feedback generation tools into the system in order to provide instant feedback. There are a lot of other tools which can be integrated into the system for simplification of tutoring tasks, such as grading, problem generation and test-case generation.


Prutor Dataset

Prutor's data is being used by several researchers for understanding the way student's learn programming, the kind of mistakes they make often, and gain other insights to improve teaching of introductory programming courses. The results have been published at various conferences and technical reports. We are releasing dataset used by some of these projects. The data is anonymized to make sure that the students can not be identified. If you use the data below, kindly give due credits to both Prutor and the particular research group. You can use details given in the "Credits" link against each project.
  1. DeepFix [data] [credits]
  2. FSE 2017 [data] [credits]

Prutor in Action

A Demo

You can play with Prutor for a virtual classroom to test its features.

Editor

Analytics: Assignments

Analytics: Code Viewer


People

Rajdeep Das

Department of Computer Science and Engineering
IIT Kanpur
das.rajdeep97@gmail.com

Umair Z Ahmed

Department of Computer Science and Engineering
IIT Kanpur
umair@cse.iitk.ac.in

Amey Karkare

Department of Computer Science and Engineering
IIT Kanpur
karkare@cse.iitk.ac.in

Sumit Gulwani

Microsoft Research, Redmond
(External Guide to Rajdeep, Umair)
sumitg@microsoft.com

References

  1. Prutor for a virtual classroom
  2. Rajdeep's Master's Thesis
  3. CodeHunt Workshop PDF
  4. CodeHunt Workshop Video
  5. CodeHunt Workshop Link