This research study examines virtual collaborative learning for programming education in Hong Kong tertiary institutions. It will involve 8 student participants taking a core object-oriented programming module. Students will work in pairs using communication technologies like VNC and instant messaging, as well as face-to-face lessons, for one semester. The study aims to understand how asynchronous and synchronous tools can facilitate collaborative learning, and the roles of teachers and students. Data will be collected through video recordings of lessons, field notes, and student interviews. The verbal interactions will be transcribed and analyzed using qualitative data analysis software.