DIGITAL LIBRARY
EXPERIENCES IN PYTHON PROGRAMMING LABORATORY FOR CIVIL ENGINEERING STUDENTS WITH ONLINE COLLABORATIVE PROGRAMMING PLATFORM
1 University of Glasgow, Singapore Campus (SINGAPORE)
2 University of Glasgow (UNITED KINGDOM)
About this paper:
Appears in: ICERI2021 Proceedings
Publication year: 2021
Pages: 5784-5791
ISBN: 978-84-09-34549-6
ISSN: 2340-1095
doi: 10.21125/iceri.2021.1305
Conference name: 14th annual International Conference of Education, Research and Innovation
Dates: 8-9 November, 2021
Location: Online Conference
Abstract:
In current pandemic, most subjects have been converted to online learning or home-based learning. It brings challenges to students and tutors, as online learning reduces opportunities of class interaction and debates. It lacks vital interactivity found in traditional face to face (F2F) classes. Other challenges include difficulty in maintaining the focus, experiencing Zoom fatigue after long sessions, lack of peer supports, lack of clear guidance from instructors, etc. The challenges become more severe for Year 1 students newly enrolled into universities, as it will take longer time to adapt to the new environment for them.

Software programming courses have become popular in Higher Education Institutions (HEI), offered to students majoring non computing science such as engineering, business, etc. For Civil Engineering, software programming subjects including Python, Java, MATLAB, C languages, may not be core subjects. But these subjects are very helpful in some computational tasks such as surveying, levelling, and so on.

Traditional teaching methods for software programming subjects with weekly lectures, laboratory sessions, assignments, etc. Students learn programming theory knowledge in these activities. Laboratory sessions are important to enable students learning hands on software programming exercises, with tutors being around to provide immediate guidance and help. Software programming skills cannot be gained if there is only theory knowledge learnt.

Software programming are unique and very different from other subjects. A tiny or single program bug in the software codes will stop the compilation and execution of the entire software program. In traditional classroom settings, students can raise questions and interact with tutors on the spots whenever they encounter difficulties or bugs. Troubleshooting of programming bugs is not easy to describe or communicate over the phone. The best way is to get tutors and students look at the same PC display screen to check programming codes together. However, with subjects moving to online learning, it brings difficulty in laboratory sessions. Students may be stuck at a single labs exercise question for long time, and not able to complete all labs exercise questions on time. It will cause anxiety of students in the study. If the challenge cannot be solved on time, students may gradually become demoralized in leaning programming subjects, and suffer from a high dropout or failure rates.

In this paper, an online collaborative programming platform is explored to teach Python programming subject to Year 1 Civil Engineering students. 95% of these students do not have learnt any software programming courses in their previous study, and almost 100% of them have zero Python programming skills. A case study is conducted by utilizing this collaborative programming platform for laboratory sessions in Python programming. It enables students and tutors working together to troubleshoot programming codes “virtually”. Each of them can see the same codes from different physical places. It can address the concerns and challenges where students and tutors are not working in the same classrooms or locations physically. The results of laboratory coding tests before and after utilizing this collaborative platform are compared, to check if students without any Python programming skills can benefit timely from the online collaborative programming platform. The experiences will be shared in this paper.
Keywords:
Software programming learning, Python programming online, Collaborative learning, Collaborative programming platform, Laboratory programming exercise.