A team of students at XJTLU’s School of Advanced Technology have developed an online judge system to evaluate their programming.
Through the system, teachers can publish a series of questions, ranging from simple programming questions to real-life problems. Students can submit their codes anytime and anywhere, and the system tests their codes for accuracy and gives immediate feedback.
The system allows undergraduates in China and abroad to practise their programming from home during the pandemic.
Apply programming theory to practice
“Many universities use online judge systems to train students for programming competitions but without guidance or feedback. We made a few adjustments to our system so that it’s multifunctional and more user-friendly,” says Dr Jieming Ma, Associate Professor at the Department of Computing, who supervised the project.
Dr Ma says students need consistent training on how to transform real-world problems into a language that computers understand, because of the gap between programming theories and practices.
“Details are crucial to programming. When we have onsite laboratory sessions, teachers and teaching assistants can answer the questions directly. It is easier to find out the tiny programming mistakes and correct them immediately.
“We started developing this platform before the pandemic. Our main purpose was to give our students more training after class or before they join programming competitions. But now it can also help us provide instant feedback to students when we cannot deliver courses onsite.”
Benefits to the students
According to Dr Ma, the system can help check basic grammatical errors in code and give answer hints for students to backtrack and fix their errors. It also tells students the difference between their work and the teacher’s predetermined answers. Teachers can upload videos or learning materials onto the system for students to refer to and improve their learning efficiency.
“Many programming questions are open questions, for example: develop a machine learning algorithm that can run at 80% accuracy.
“This platform can assess the accuracy of students’ work, and highlight the most accurate submission, as well as areas where they can improve. Optimisation is essential for improving the performance of algorithms. It is helpful especially for the students who want to join research projects and publish papers in the future.”
The team, founded by MSc Social Computing alumni Liwei Yin and Dongkun Hou, is still working to improve and develop the system. One of the potential directions is to find out whether they can use algorithms to understand and analyse the students’ current programming levels, then, it will recommend coding questions suitable for their capabilities. With further development, this system can be more intelligent and practical for more students who need to practise programming.
By Huatian Jin
Edited by Xinmin Han