To facilitate a scalable computer science education without sacrificing quality, we created Code Expert, a worry-free and platform independent online IDE that allows thousands of students at ETH Zürich to work on open programming tasks in exercises and exams. The system provides immediate feedback to the student by running the code against given tests, static analyzers, or any other means of automatic feedback generation a lecturer wants to integrate. Finally, students can submit projects , which get automatically graded immediately as well as manually reviewed by the tutor.
One unique aspect of the platform is its ability to records the evolution of a student’s approach from start to end and allows the student to mark intermediate states in order to revert back to it to try out another way of solving it if a certain decision didn’t work out . Furthermore, it is possible to see when and how often students compile or run their program, and even how they interact with the running program.
With such an open system with a direct feedback mechanism and the possibility to re-trace actions and decisions over time we hope to be able to answer interesting questions in the area of learning sciences and methodologies, the first research area of our interest.
This setup not only allows us to investigate in the area of learning sciences, we also want to use it as a basis to create new tools and techniques that improve upon the current CS education and that facilitate new ways of interacting with students for specific problem areas. Thanks to the scalable and flexible platform we can evaluate new approaches in large courses.
<aside> <img src="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/789d374c-72cd-491a-8570-0db9df3cfc49/circle-info-solid.svg" alt="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/789d374c-72cd-491a-8570-0db9df3cfc49/circle-info-solid.svg" width="40px" /> Code Expert is provided by the Department of Computer Science at ETH Zurich.
</aside>