Teaching Computer Programming: The Modern Approach
The COVID-19 pandemic has brought change to the education sector where online classes have become the norm and the use of computer technology in education is increasing rapidly. The famous and broadly used learning management systems (LMS) such as Moodle, and Blackboard have provided the basic functions to support classroom management such as class enrolment, content distribution, assessment platform for quizzes and tests, and so on. During the pandemic, these platforms have been enhanced to support remote learning by incorporating online conference solutions to conduct online classes. Other than the mainstream LMS, giant computer tech companies such as Microsoft and Google have enhanced their products to support remote workspaces to allow better collaboration for businesses and educators such as Microsoft Teams which enables secure online conferences, Microsoft Notebook which allows better content distribution and management in classrooms, Google Classroom that can be used to manage classrooms, Google Meet that can be used to enable secure online conferences, and so on.
The rapid adoption of advanced technology has forced educators to adapt or else they will find themselves falling behind. This article will focus on teaching computer programming to first-year undergraduate students at Sunway University in a short semester that spans around 8 weeks. The programming class has adopted Microsoft Office products such as Teams, OneNote and the University unified LMS system Blackboard LMS to support online conferencing, content distribution, and classroom management respectively.
Teaching programming classes remotely is a challenging task, especially during the start of the pandemic lockdown period. The instructor needs to give instructions to the students to set up the development environment in the student’s heterogeneous machines which can be Windows, Mac, or Linux. The technical issues that may arise due to differences in setup instructions, and operating system environments may result in a waste of time and effort for the instructor to rectify individual student issues. Besides that, the instructors would not be able to monitor the student’s coding privately, preventing them from evaluating the student's performance during the online class to provide accurate advice.
To overcome the mentioned issues, the REPL.IT online IDE is being identified and adopted in the programming class. Replit Inc. offers powerful online IDE solutions that allow users to code instantly with innovative AI features and seamless multiplayer support.
According to Rahman, M. M., & Morgan, R. P, 2021, REPL.IT supports multiple programming IDE and wide accessibility on devices such as phones, tablets, and laptops. Besides that, he also claimed REPL.IT adoption allows interactive and collaborative learning in the classroom. This can help students stimulate their interest, and improve overall performance.
REPL.IT was adopted in the teaching of Python programming principles at the School of Business. It was used to support the following teaching and learning activities:
1. Demonstration of basic programming concepts.
2. Conduct on-the-spot programming questions.
3. Conduct multiple assignments with auto-grading and feedback.
4. Conduct the final assignment.
The REPL.IT program allows instructors to use open-source pytest and plagiarism detection modules to set up auto-grading for programming assignment submissions. The following is the sample output received by a student immediately after their submission:
### XXXXX submitted at 09 March 2023 08:21PM
Passed: 8
Failed: 0
Similarity Score: 21.71222639
Score: 100
From the output, students are able to know their score and their work similarity to other students in the class. Besides that, REPL.IT editor has a history feature that allows instructors to view how the student writes the code from the very beginning to the end, providing a good perception of the genuineness of the code.
A survey was conducted at the end of the week to investigate the perception and acceptance of REPL.IT in teaching programming classes. There are a total of 123 responses. There are a total of six questions in the survey. From the survey findings, there are a total of 94% of students agree REPL.IT has helped collaboration in practical classes, whereas 92% of students agree that REPL.IT is easy to use and helps understand programming. 94% of students agree that REPL.IT has helped in productivity during their practical classes. 91% of students believe that REPL.IT auto grading has helped them to improve their assignment submissions. Perhaps most importantly, 91% of students support the continuation of REPL.IT usage in the future.
In conclusion, REPL.IT is an extremely useful tool to be used to teach Year 1 students about programming. In the post-pandemic world, it is critical that educators continue to adopt programs such as this so that education can adapt to today’s society.
Reference:
Rahman, M. M., & Morgan, R. P. (2021, December). A remote instructional approach with interactive and collaborative learning to teach an introductory programming course during COVID-19 pandemic. In 2021 International Conference on Computational Science and Computational Intelligence (CSCI) (pp. 940-946). IEEE.
Replit, Inc. (March, 2024) Build, ship, and share software with Replit’s powerful IDE – Replit, https://replit.com/site/ide.