Blended Learning Solutions for Introductory Programming Courses

Blended Learning Solutions for Introductory Programming Courses

Overview

Lecturers at the Department of Computing, Dr Erick Purwanto and Dr Thomas Selig, with the help of Dr. Na Li from the Academy of Future Education, used blended learning solutions implemented in their two introductory undergraduate programming courses—CPT111, and CPT206—to overcome challenges that arose due to local pandemic controls where students and staff were not allowed to enter the campus; notably making it impossible to conduct traditional lectures and, in particular, in-person programming labs.

Blended learning, also known as mixed-mode instruction, is a methodology in contemporary education that, fundamentally, combines the traditional physical classroom with web-based tools.

Blended learning still requires the physical presence of both lecturer and students, but with certain aspects of student management over lecture or tutorial pace. Students attend the university with a lecturer present in the classroom. However, in blended learning, standard teaching activities are combined with web-based content and delivery.

Key Points

The Peer Assessment activity provides an opportunity of:

The blended learning solutions provide an opportunity for:

  • Self-paced asynchronous learning without the constraints of time and space;
  • Trackable online student engagement;
  • Automatic grading for authentic assessment;
  • Flipped constructivist learning.

The Peer Assessment activity provides an opportunity of:

Case Details


Our blended learning solutions showcase technology-enhanced learning best practices that we believe are beneficial to stakeholders in academia interested in conducting online or blended courses with a large student cohort in any discipline involving computer programming.

The two courses implementing blended learning solutions were designed for our 500 second-year computer science students and 300 non-computer science students (Financial Mathematics, Year 3). They were intended for students with no prior programming experience. Due to the local pandemic control policy, the teaching staff and the students could only access the campus resources (lecture theatre, computer labs) for a few weeks in 2021 (CPT111) and none at all in 2022 (CPT206). Therefore, our courses are designed for blended or online delivery. The educational technology tools used in our course are derived from the Moodle virtual learning environment (XJLTU Learning Mall).


Our courses implement blended learning solutions using resources and activities available on the Learning Mall. We use the Learning Mall to publish course materials, including lecture slides and videos, programming lab worksheets, coding practice exercises, coursework assignments, and other supporting materials. For example, language support quizzes using Moodle Quiz and H5P Activities.

We use BigBlueButton and Zhumu (the Chinese version of Zoom) to deliver our lectures. They support live lecture broadcasts and recordings. Video recordings allow students to learn at an appropriate pace, study asynchronously in their own time, and pause the video to try coding lecture examples themselves. Using their screen sharing functionality, we can poll students live using Moodle JazzQuiz—a way for online students to give us instantaneous feedback and become more engaged. We also conduct flipped classrooms where students watch pre-recorded lecture videos in advance, and instead have an online discussion using the note-sharing tool Etherpad, enabling students to join brainstorm anonymously.

Due to the lack of traditional in-person programming labs, we use the automatic grading tool CodeRunner for lab exercises and coding assessment. It enables students to read the problem description, submit their computer code, and then receive instantaneous feedback: whether their code is correct or contains errors. Furthermore, the instructor can view the submitted code online. Students can then request further feedback on their code using the Moodle Forum activity. During the online in-class discussion, we also divide students into online groups using BigBlueButton Break-out Rooms and give them questions with a focus on soft programming skills such as coding style or expected program behaviour.


Challenge 1: Students are distributed all over the world.

Challenge 2: There is no in-person support from teachers/TAs.

Blended Learning Solutions:

  • Moodle Virtual Learning Environment (XJTLU Learning Mall): Upload all course materials to the VLE and use BigBlueButton for live broadcasting and recording of lectures and labs.
  • Flipped Classroom: Students watch pre-recorded lecture videos in advance and examine topics during online in-class discussions.
  • Online In-class Discussion: Make use a note-sharing tool like Etherpad.

Challenge 3: Non-native programming students (non-native English speakers and the discipline of computer programming has a very specific terminology) without English language teachers support during the pandemic.

Blended Learning Solutions:

  • Word List: Maintain a glossary of technical terms with English definitions. Upload new vocabulary every week.
  • English Support Activities: Implement fun English support activities using Moodle Quiz and H5P.

Challenge 4: Facilitating novice programmer learning processes without in-person lab sessions.

Challenge 5: Providing coding assignment feedback to a large number of online students without support from TAs.

Blended Learning Solutions:

  • Computer Code Automatic Grader: Use CodeRunner in the university VLE to give instantaneous feedback on the correctness of students’ code.
  • CodeRunner + Moodle Forum: Students can request further feedback by asking in the online discussion forum.
  • Online Group Activities: Divide students into online groups using the BigBlueButton Break-out Rooms and provide students questions with a focus on soft programming skills.

Challenge 6: Incorporating flexibility into lecture delivery (the need to obtain feedback from students).

Challenge 7: Stimulating classroom engagement.

Blended Learning Solution:

  • Online Polling with Moodle JazzQuiz + Zhumu Screenshare: Support instructors change the flow and pace of the online lecture based on students’ feedback.

Technological Toolkit

LM (Moodle) Quiz + LM Forum + LM JazzQuiz + LM Etherpad + LM CodeRunner + BBB/Zhumu.