An e-Learning system for programming languages with semi-automatic grading

In this paper, we describe an e-Learning system that can help novices to learn how to develop some workable programs in a short period of time, assess their performance, and automatically grade the students' programs. The system takes advantage of computer and network technologies and combines the concept of flipped classroom to help the instructor and students in their teaching and learning activities. The system can do semi-automatic grading for the students' program and produce some preliminary results. The preliminary study shows that the platform can indeed assess the students' performance and consequently help the students to learn programming languages more effectively and efficiently.