1 Introduction

The education system has experienced drastic transformation in recent years due to the popularization of computing devices and the constantly evolving Internet [56]. Living in the twenty-first century requires skills in information and communication technology to solve problems encountered in one's daily life [40]. Thus, it has become crucial to cultivate students’ computing and programming skills [51]. However, teaching and learning in programming courses may be challenging for both teachers and students. Many studies mention this problem, but none presents a clear, perfect approach [55]. For example, high drop-out and failure rates in programming courses are one of the main problems in computer science disciplines [53]. In order to improve learning in computer programming courses, understanding students’ learning processes and the common difficulties they face is vital [14]. Thus, in the study presented in this paper, the researchers applied suitable online teaching approaches and designed a course in a cloud classroom that appropriately meets students’ specific needs and the educational goal for this programming course, which are introduced in the following two subsections.

1.1 Adoption of co-curricular learning

For programming language competence, not only the abilities to write and read code are essential, but also the abilities to identify the rules, code particles, correct errors and handle the process as a whole. This requires learners to perform well in reading comprehension, mathematical skills and problem-solving, which makes computer programming difficult for novice leaners [4]. In addition, it is also reported that students usually make mistakes in some of their programs during practice and then have to debug and correct the mistakes in their code. Thus, students get frustrated and lose motivation in programming due to this time-consuming process [46]. While computer science educators do their best to improve students’ learning, helping students in introductory programming courses to enhance their understanding of computer science and programming is challenging [64]. Hence, teachers need effective pedagogies to help students maintain their learning motivation and achieve satisfactory learning performance.

Whether in the traditional classroom or in online learning environments, students easily get distracted by activities on their smartphones during lectures [42], and this scene has become a part of daily life. As a result, grades and other aspects of learning could be negatively influenced by digital distraction [21]. This phenomenon is observed in both the East and West; digital distraction in the classroom is seen around the world. Although some studies show mixed results regarding the relationship between indulgence on social websites and students’ grades, there are also some results indicating that digital distraction is causing students to lose focus in the learning process [91]. With the prevalence of smartphones among students, moderating their influence on students’ attention becomes crucial to educators and educational institutions. For example, there are numerous studies reporting that students’ performance could be negatively affected by the use of smartphones in classrooms [1, 44]. Previous studies have adopted innovative pedagogies, such as meaningful learning [81], and game-based learning [50] (in press) to prevent students’ distraction in online courses. Thus, it is believed that teachers should apply innovative pedagogies to achieve the expected learning effects. In this study, to help students focus on their learning, maintain interest and develop practical programming skills, co-curricular learning (CCL) was investigated as a possible appropriate solution. CCL is defined as learning that happens in extracurricular activities which provide chances for learners to be challenged and developed [26]. CCL activities may include learning in structured programs and interactions, or in social environments [17]. It is revealed that students’ participation in co-curricular activities could lead to positive academic performance [29]. In addition, it is also reported that learners with proportionately above average co-curricular involvement have higher grade point averages (GPAs) than those who do not [23]. Thus, the present study adopted CCL in an online programming course to promote improvement of students’ programming skills and self-efficacy in an online programming course.

1.2 The importance of phenomenon-based learning

Computer science education research indicates that lack of skills in problem-solving and computational thinking leads to many novice learners finding it difficult to use key programming concepts to achieve solutions [85]. Several studies also report that, in the field of computer science, programming courses appear to have the highest rates of drop-out and failure [52], 66]. Moreover, it may require years of persistent learning for a beginner to excel in programming [67, 90]. Students need to start from basic skills such as memorizing programming language syntax and then learn to apply such skills as logical thinking and problem-solving in order to advance in this subject [5]. Moreover, previous studies also indicate that computing education in Taiwan is less practical than teachers and workplace managers might expect, as there is a mismatch between learning activities and the needs of the workplaces [80]. Thus, it is very important that teachers and educators adopt and integrate practical and effective teaching methods combining educational technologies for students’ learning in programming courses.

As computer programming skills cannot be developed through passive learning, and comprehensive computing education requires more than the learning of theoretical knowledge, designing an interactive problem-solving environment for developing students’ computer programming skills should be preferred over traditional teaching, as this can provide students with feedback and working examples [33]. For example, previous educators applied content-based knowledge awareness to facilitate students’ collaboration, further develop their programming skills and reduce anxiety level in a cloud classroom. However, their intervention of content-based knowledge awareness did not result in better learning effects [15]. In order to effectively develop students’ practical programming skills and self-efficacy, this research applied an innovative teaching method, phenomenon-based learning (PhBL). PhBL is defined as a learner-centered, multi-disciplinary teaching method, which is based on learners’ inquiry and problem-solving [77, 79]. PhBL could facilitate learners to participate in collaborative activities for question answering and problem-solving [68, 88, 93]. Three factors make a phenomenological perspective on students’ learning relevant. First, PhBL prepares and trains students for a receptive and broad appreciation of entire systems. Second, PhBL emphasizes the teaching of relevant competencies and skills integrated with values and ethics, thus complementing learners’ cognitive competencies. Finally, PhBL facilitates the action aspect of teaching and learning, and further bridges the gap between theories and knowledge-based practices in real-life environments [58]. Hence, the present study adopted PhBL as a tool to develop practical programming skills and self-efficacy in students, aiming to help them concentrate on learning in an online course.

It is revealed that teaching computer programming is especially hard; for students, programming comprises mostly intangible artifacts, challenging students as instructional content is not easily relatable to their everyday life and experience [62]. In addition, it is found that peer interaction during the learning process could be a crucial element affecting students’ self-efficacy and that observing students may allow one to predict their learning motivation and performance [84]. Beyond these studies, there are very few studies exploring the effects of CCL and PhBL simultaneously, particularly in online learning courses. Thus, the authors in the present study investigated the effects of combining CCL and PhBL on improving students’ learning. Aiming to improve students’ programming skills and self-efficacy of learning, the investigators integrated CCL and PhBL with educational technologies to facilitate students’ learning. The research questions are listed as follows:

  1. (1)

    Could web-mediated CCL or PhBL lead to students’ better development in programming skills as compared to receiving a traditional teaching method in an online programming course?

  2. (2)

    Could web-mediated CCL or PhBL lead to students’ better development in self-efficacy of learning as compared to receiving a traditional teaching method in an online programming course?

  3. (3)

    Could the combined intervention of CCL and PhBL lead to students’ best development in programming skills and self-efficacy of learning as compared to receiving a traditional teaching method in an online programming course?

2 Literature review

2.1 Co-curricular learning

According to previous research, a universal definition of CCL, or even the term “co-curricular activity,” is not yet available [12]. It can be a program facilitated by faculty beyond the classroom [76], or training activities which are initiated by students in order to improve proficiency in their professions [25]. It is revealed that, while CCL outcomes are aligned with institutional learning outcomes, undergraduate students who adopt co-curricular activities have higher likelihood of achieving learning goals (Gettig & Fjortoft, in press,[73]. A wide range of out-of-classroom experiences which help to shape students’ personalities, strengthen their sense of responsibility, and increase professional knowledge can also be termed CCL. Therefore, this relatively new term, CCL, can be perceived as learning through a series of enrichment activities associated with formal curriculum outside of the classroom.

Introducing a topic and giving students baseline knowledge via the application of a co-curricular experience before they enter the classroom is an effective strategy to promote their basic understanding [18]. Learning through co-curricular activities could benefit students in many aspects, including leadership skills, self-efficacy, sense of responsibility, team work and networking abilities [3, 41, 73, 78, 79]. Extensive studies show correlations between engaging in co-curricular activities and elevated academic achievement [36, 47, 54], and similar observations can be seen from educators’ perspectives [41]. In addition, feelings of belonging among learners are proven to be associated with their academic engagement [6, 86], which may be a by-product of CCL.

In traditional learning environments, co-curricular activities are viewed by educators as having positive influence on enhancement of students’ skills and academic performance [16, 29, 54]. Thus, the researchers in this study further explored CCL effects on enhancing students’ programming skills and self-efficacy in an online programming course.

2.2 Phenomenon-based learning

PhBL is considered a very holistic method to connect textbook theory with reality. It is defined as educators using real-life phenomena as main themes in the course, inducing students to explore the contexts within the events; through these cross-subject learning actions, students could obtain new knowledge and skills which are essential for the future [7, 37, 68. PhBL is one of the core concepts in Finland’s revolutionary education reform that began in 2016, requiring a minimum of one extended period of multi-disciplinary, phenomenon-based teaching and learning to be included in the curricula of all basic schools [20]. For instance, a teacher could choose a phenomenon in climate change, which is related to students’ daily life, and guide students to study its context in an inter-disciplinary framework. The subjects referred to could span from geography and sciences, to economics or even art.

PhBL could contribute to students’ development in skill learning by themselves and supply them with critical thinking and creativity, and also improve their communication and collaboration abilities [88]. Implementing PhBL in higher education could bring the community and school closer together to form better solutions for local development and help students to better absorb the learning process, not to mention the appeal of the program for new students [24]. The key for PhBL is to let students observe the given phenomenon, explore its causes and effects, and work with other group members throughout the process [13]. Therefore, through PhBL, students may increase their social skills and understand the meaning of cooperation within the group.

PhBL can be used in all sorts of educational settings. Valanne et al. [83] research examines the impact of using the PhBL approach on students’ reading skills and their motivation to read, and reports positive results for the students. PhBL can benefit students and their teachers in acquiring new skills, building positivity and gaining a sense of community [7]. In addition, it is also reported that PhBL could facilitate the training of skills through students’ active participation [58]. Thus, PhBL was adopted by the researchers of this study in an online programming course, wherein its effects on development of students’ programming skills and self-efficacy were investigated.

2.3 Students’ programming skills

With the development of technology, computer programming skills are regarded as essential in virtually all fields [89]. In order to solve the problem of computer programming skills’ shortage, it is reported that training programs are offered by many national and private institutions [39]. Good programming skills could be considered as vital for the future economy [62]. Therefore, web-mediated CCL and PhBL were adopted in this study to develop students’ programming skills, defined as the ability to produce a complete mobile application with purposive functions, using programming code written grammatically and correctly. Researchers then explored the effects of web-mediated CCL and PhBL on developing these programming skills.

2.4 Self-efficacy

Bandura [10] originally proposed the concept of self-efficacy, stating that self-efficacy influences ones’ choice of activities, effort and persistence. In contrast to the learning skills and abilities students think they have, students’ self-efficacy refers to their beliefs about which learning tasks they can capably accomplish [11, 69, 95]. The beliefs of self-efficacy may yield insight regarding learners’ approaches to learning [32, 65]. In addition, those with high self-efficacy tend to display persistence, skill in strategic planning and exhibit high achievement [32, 94].

High academic self-efficacy could foster academic achievement [8]. It is revealed that students’ awareness of self-efficacy for online learning course content is positively correlated to their academic performance [92]. Furthermore, Hsia, Huang and Hwang [34] illustrate that students possessing higher self-efficacy are able to increase their intrinsic motivation, thus enhancing learning performance. That is, students’ learning potential is drawn out more as they possess better learning motivation and self-efficacy [71]. Therefore, improving students’ self-efficacy in an online or blended course is quite important; hence, the researchers in this study adopted CCL and PhBL to explore whether students’ self-efficacy increased during the research period.

3 The empirical study

3.1 Participants

The 171 participants in this study were first-year university students from non-information, non-computer science departments enrolled for two hours a week in a required course titled ‘Programming Design.’ In general, students from a non-information or non-computer science department in Taiwan are not able to use application software proficiently [81], and even fewer have programming expertise. The mean age of the involved students was approximately 19 years old. The gender breakdown was 66 males and 105 females. Prior to the course, on average, the students possessed 0.544 certifications per person related to Microsoft PowerPoint or Word. The same teacher taught all four involved class sections. The experimental design of the four groups was as follows: CCL and PhBL class (G1, n = 38), the CCL and non-PhBL class (G2, n = 38), the non-CCL and PhBL class (G3, n = 48), and the non-CCL and non-PhBL class (G4, control group, n = 47). Expected outcomes are shown in Fig. 1.

Fig. 1
figure 1

The different instructional designs for this study

3.2 Course Setting

The course involved in this research was a semester-long, 2 credit-hour required Programming Design course, delivered at a comprehensive university in Taiwan to first-year undergraduates. This course is focused on developing students’ skills for designing mobile applications employing APP Inventor. At the early stage of the course, the instructor introduced the syntax and basic functions of the APP Inventor. Then, the approaches of CCL described in Sect. ‘3.3.1’ and the strategies of PhBL introduced in Sect. ‘3.3.2’ were applied for the experimental groups. From the 16th week of the semester, students began presenting their mobile applications in class.

3.3 Experimental design and procedure

The experimental design was a 2 (CCL vs. non-CCL) × 2 (PhBL vs. non-PhBL) factorial pretest/posttest design. The experimental groups comprised the first class (G1) that concurrently received the interventions of web-mediated CCL and PhBL, the second class (G2) that received only the intervention of web-mediated CCL, and the third class (G3) that received only the intervention of web-mediated PhBL, while the control group was the non-CCL and non-PhBL group (G4) that received the traditional teaching method. The course schedule is shown in Fig. 2.

Fig. 2
figure 2

Schedule of the course and assessment during the semester

3.3.1 Intervention of co-curricular learning

In the implementation of CCL in G1 and G2, students’ co-curricular activities took place outside of the classroom and facilitated students to enhance academic performance and to develop professional skills [25, 35, 76]. Co-curricular activities can be initiated by the program or by students; the most useful ones should provide students with experiences that help them grow professionally [25]. These out-of-classroom experiences, which aid students to achieve meaningful learning effects, are CCL experiences [76]. Thus, the activities for students’ CCL should be well-designed to meet university students’ specific needs, which is mentioned in Sect. ‘1.1.’

To conduct CCL in G1 and G2, the researchers in this study adopted the mechanism of co-curricular record, sometimes also termed co-curricular transcript, to keep track of students’ engagement in their co-curricular activities. The co-curricular record is considered as credible as an academic transcript in a number of tertiary institutions in the USA and Canada [19, 72]. This record provides students the chance to plan their university experiences thoughtfully and relate them to future outcomes [43]. In addition, co-curricular records can provide a database of students’ co-curricular activities, identify individual competencies, and certify students’ participation via an official institutional document [19].

In the online learning environment outside the traditional classroom, students from G1 and G2 were required to discuss the co-curricular activities and share potential solutions for these learning tasks with their team members by using Moodle discussion forum or via an online group chat APP (e.g., WeChat, LINE, or even Facebook Messenger). These online discussions were considered as the co-curricular record for this study, so students were asked to submit the screenshots of their discussion in the forum or chat APP as group homework every week. If a student did not upload her/his homework (the screenshots) to the course website prior to the deadline, the submission button became unavailable. That is, this student was not permitted to submit homework after the prescribed time.

3.3.2 Intervention of phenomenon-based learning

Holistic real-world phenomena have been mentioned as help to initiate learning, as the phenomena are studied in their entirety in a real context or environment. Related skills and information are investigated by crossing boundaries [68]. In addition to students’ learning performance, through teachers’ implementation of PhBL, students could also increase their social skills and understand the meaning of cooperation within the group [75]. The researchers in this study conducted the first survey and adopted an appropriate phenomena for developing students’ programming skills.

In the implementation of PhBL in G1 and G3, the following five dimensions were incorporated [77]:

  1. 1.

    In the Holisticity dimension, the teacher started the phenomena analysis from a much more traditional subject perspective and then moved toward the integration of different subjects. With collaborative teaching, co-teaching or team teaching as ways of working, the teacher can provide a less fragmented learning experience in the programming course;

  2. 2.

    In the Authenticity dimension, the teacher gradually removed the textbook-like materials, brought authentic and timely sources into programming tasks, and, by using tools in a real working environment, gave students a sense of relevance to their world;

  3. 3.

    In the Contextuality dimension, students began with small programming tasks designed by the teacher; followed the guidance of structured entities, and then moved on to sets of entities within the phenomenon;

  4. 4.

    In the Problem-based inquiry learning dimension, students tried to create their own set of questions and worked with group members to construct knowledge of programming on the way to find answers. The problem settings regarding the phenomenon therefore would be a joint result of students working together;

  5. 5.

    In the Learning process dimension, students initially focused on individual tasks and repetition of the information and then moved on to create their own learning tasks, or even tools. They became self-aware regarding the learning process and also planned their collaborative learning process for the application that was to be built as a part of this programming course.

3.3.3 Intervention for control group (G4)

In this investigation, students in G4 (the control group) received class hours, practice time, learning materials, assignments, and course website access identical to those in G1, G2, and G3, but without the interventions of CCL or PhBL. The teaching in G4 focused on traditional lectures on basic functions and syntaxes of APP Inventor, and students were assigned to complete applications with designated functions. Students in the control group implemented neither CCL nor PhBL.

3.4 Measurement

3.4.1 Pretests of students’ computing skills and self-efficacy

3.4.1.1 Programming skills

The researchers in this study took the programming skills that students learned as their learning outcome. To test whether the interventions of CCL and/or PhBL were effective, they checked whether students had the experience of programming or had learned how to write computer program code before entering this course. By doing so, they aimed to avoid the potential that students’ initial differences that might result in bias of measurement. Thus, in the first week of the semester, all participants from the four groups were pretested regarding their ability to complete two simple mobile applications. The pretest questions of programming skills in this research were selected from an examination, which is administered by the Computer Skills Foundation. It also tested whether the four groups of participants had similar levels of knowledge or experience in writing computer program code before they received the intervention of CCL and/or PhBL.

3.4.1.2 Self-efficacy

All of the participating students also completed a questionnaire as a pretest to comprehend their self-efficacy in the first week of the semester. The 7-item Self-efficacy for Learning and Performance is one part of Motivation Strategies for Learning Questionnaire (MSLQ) developed by [61]. Students rated these items on a 5-point Likert scale, from 1 (strongly disagree) to 5 (strongly agree). The researchers in this study used MSLQ to measure students’ self-efficacy as one of the pretests, before they received the intervention of CCL and/or PhBL.

3.4.2 Posttests of students’ programming skills and self-efficacy

3.4.2.1 Programming skills

In the 16th week of the semester, students began to present the mobile applications they had developed. The teacher and researchers blindly (not knowing which group students were part of) graded the mobile applications based on Mobile APP Rating Scale [74], which is a reliable and objective tool for measuring the quality of mobile applications. The criteria in Mobile APP Rating Scale include information and subjective quality, functionality, engagement, and esthetics. The more complete and functional mobile applications that students designed, the higher scores they got.

In addition, the teacher queried students and commented on students’ presentations and the mobile applications they had created. According to the abovementioned rubrics, the teacher graded students’ mobile applications, oral presentations, and immediately recorded the grades. According to the rubric, students on the same team received the same grade. However, students’ individual grades could differ based on their presentation quality, and responses to teacher’s challenge or questions.

3.4.2.2 Self-efficacy

Students were required to complete the MSLQ questionnaire twice for evaluating their self-efficacy. The second administration, for the posttest, was in the seventeenth week. Then, the differences of students’ self-efficacy among the four groups were analyzed and reported. In addition, the trend of students’ self-efficacy development from the beginning to the end of the semester was evaluated and analyzed.

3.5 Design of the course website

The programming courses used Moodle as the teaching website. The Moodle platform mainly provided course description, syllabus, learning materials, assignments and course-related information. On this course website, students could download the necessary learning files for previewing or reviewing or complete the exercises repeatedly. Moreover, the teacher proposed questions to promote students’ interaction on the discussion board. Finally, students conducted team discussion using the Moodle forum.

4 Results

4.1 Pretests

The researchers attempted to avoid measurement bias prior to the experiment beginning by conducting pretests. Based on the one-way ANOVA pretests shown in Table 1, the difference of students’ self-efficacy among G1, G2, G3 and G4 was not significant statistically. Moreover, the authors analyzed students’ programming skills before the course began. In the beginning of the semester (first week), the teacher checked whether students had learned the APP programming tools that were about to be used prior to this class. Students who had already learned the target programming skills remained in the course but were excluded from this experiment. Based on the analysis of pretest results and teacher’s precaution, it is believed that the groups of participating students had comparable levels of programming skills and self-efficacy at the beginning of the experiment. Hence, the potential threat from initial variance among students was avoided.

Table 1 One-way ANOVA: Pretest of students’ self-efficacy

4.2 Posttests

4.2.1 Effects of co-curricular learning

For exploration of the effects of web-mediated CCL, the independent samples t test was used to compare students’ programming skills and self-efficacy between the CCL group (G1 + G2) and non-CCL group (G3 + G4). The results show significant differences in students’ programming skills (p < 0.05), and yet similar effects were not found in self-efficacy between CCL and non-CCL groups (p > 0.05) (see Table 2). Data presented in Table 2 indicate that the treatment of web-mediated CCL could contribute to students’ development of programming skills.

Table 2 Comparison of students’ programming skills and self-efficacy between the CCL and non-CCL groups

The researchers further applied the paired samples t test to compare the self-efficacy of students in this online computing course. The results shown in Tables 3 and 4 reveal that the CCL group had significant increase in their self-efficacy by the end of the semester (mean = 3.2632) in contrast to their pretest (mean = 3.0752) (p < 0.05). However, the non-CCL group also showed significant improvement in self-efficacy with posttest (mean = 3.3398) in contrast to their pretest (mean = 3.1609) (p < 0.05). This indicates that students who received the CCL treatment did not develop better self-efficacy than those who did not receive the treatment.

Table 3 Paired samples statistics: Effects of CCL on self-efficacy
Table 4 Pair-wise comparison of students’ self-efficacy between the CCL and non-CCL groups

4.2.2 Effects of phenomenon-based learning

The results presented in Table 5 show no significant differences (p > 0.05) in students’ programming skills or self-efficacy between PhBL group (G1 + G3) and non-PhBL group (G2 + G4).

Table 5 Comparison of students’ programming skills and self-efficacy between the PhBL and non-PhBL groups

The researchers thus further analyzed the effects of web-mediated PhBL on improving self-efficacy over the course of the semester. The results shown in Table 6 and Table 7 reveal that the PhBL group had significant increase in their self-efficacy by the end of the semester (mean = 3.2841) in contrast to their pretest (mean = 3.0415) (p < 0.05). Moreover, in contrast to their pretest (mean = 3.2050), the non-PhBL showed no significant increase over the posttest (mean = 3.3277). Thus, in this semester-long analysis, it is found that the treatment of PhBL could be effective for developing students’ self-efficacy in an online computing course.

Table 6 Paired samples statistics: Effects of PhBL on self-efficacy
Table 7 Pair-wise comparison of students’ self-efficacy between the PhBL and non-PhBL groups

4.2.3 Combined effects of co-curricular learning and phenomenon-based learning

One-way ANOVA was again applied to analyze students’ self-efficacy under the four conditions (groups) and programming skills for designing mobile applications (grades). In Table 8, results show that learners in G1, who received the intervention of online CCL and PhBL, had better performance than those of G3 (received the intervention of web-mediated PhBL) and G4 (received traditional teaching methods), with a significance of p = 0.01478 < 0.05 and p = 0.01514 < 0.05. Thus, it appears that the combined effects of online CCL and PhBL on improving students’ skills for designing mobile application are positive and higher than for those who received traditional teaching method. However, the combined effects of online CCL and PhBL are not found to improve students’ self-efficacy.

Table 8 One-way ANOVA: Posttest of students’ programming skills and self-efficacy

5 Discussion

Technology is connected to modern people in almost all aspects of daily life, which increases the challenge for both users and system builders; thus, it is becoming more important to learn to build smarter systems and use better tools [9]. Millennial generation students are used to all sorts of new technologies and have higher expectations and different attitudes toward learning [31] than their predecessors; therefore, educational institutions should evolve accordingly to meet students’ current needs. It is true that many of today’s classrooms incorporate innovative educational technologies, environments, and pedagogies that engage students to learn in new ways [57, 59, 60, 63]. Given the increasing demand for students’ competency, improving students’ learning outcomes and the quality of computing education are top priorities. Thus, the researchers argue that this study contributes to e-learning theory in the following three ways. First, this research can specify how teachers can improve students’ programming skills by applying CCL in an online programming course and cloud classroom. Second, the design of a web-mediated PhBL instructional method may serve as a reference for teachers to improve students’ self-efficacy of learning. Finally, this study may be one of the early attempts to investigate the effects of the different combinations of CCL, PhBL, and cloud classroom in a programming course on students’ learning. On the basis of these contributions, this research provides insights and references for educators wishing to design appropriate teaching pedagogies for online, blended, or flipped learning, particularly for computer programming courses.

5.1 Effects of co-curricular learning

Nowadays, it is essential for teachers to use modern teaching methods and technology to help students achieve the best level of learning [30]. In the present study, the authors integrated CCL for developing students’ programming skills and self-efficacy. Although the expected effect of CCL on improving students’ self-efficacy is not found, the intervention of CCL contributed to students’ development of programming skills. The results presented in Table 2 indicate that students under the treatment of web-mediated CCL developed better programming skills than those who were not (p < 0.05).

The similar effects of CCL are also revealed in previous research. For example, it is reported that the benefits of CCL are reflected not only in students’ academic performances, but also as positive emotions such as satisfaction, and feelings of support [16, 72, 82]. Through socialization and professionalization in a CCL environment, students could become involved in professional associations, which could result in additional involvement in other student groups, organizations, and virtual community [22]. Beyond the traditional classroom setting, thoroughly designed and structured courses could help students complete the course requirements [2]. In addition, it is reported that following the completion of CCL, online learning activity increases students’ learning effects [18]. Therefore, the researchers suggest that programming courses teachers could consider applying CCL in their online courses to facilitate their students to obtain better learning outcomes.

5.2 Effects of Phenomenon-based Learning

Regarding learning as a social and situated practice is nowhere so critical than in the case where learning is associated with workplace practices [48]. In order to develop students’ practical programming skills and self-efficacy, PhBL was applied in this research. Based on the analysis of data shown in Tables 6 and 7, it is seen that the PhBL group had significant development in their self-efficacy at the end of the course (mean = 3.2841) in contrast to their pretest (mean = 3.0415) (p < 0.05). Researchers in other fields also have explored the advantages of using PhBL to examine its effects on students’ skills and motivation, and positive results in academic achievements and constructive feelings in participants were reported [7, 83.

However, the results obtained from the present study reveal no significant differences in students’ programming skills when comparing students under PhBL teaching methods and those who were not. The following factors may lead to these non-significant differences. First, the use of PhBL was implemented in non-information, non-computer departments. Almost all students in the involved classes were from Department of Finance. Although it is important for these students to learn programming, at the end of this semester, the teacher in this course asked if anyone will attempt to apply for a job related to programming after they graduate and no student raised her/his hand. That means the students from Department of Finance may not attach importance to the course ‘Programming Design.’ Thus, the applied teaching method of PhBL, including the phenomena analysis and problem-based inquiry learning, cannot stand alone to contextualize students in a real working environment. Second, the non-significant difference of students’ programming skills with or without PhBL may be due to the limited span of the experiment [81]. It is indicated that a short period (one semester) may not be sufficient to reveal a causal relationship [45]. Thus, the students may still benefit from the use of PhBL over a longer period and when they could be more contextualized and involve themselves in the phenomenon or situation.

5.3 Combined effects of co-curricular learning and phenomenon-based learning

In the present study, the authors further investigated the combined effects of CCL and PhBL on improving students’ learning outcomes in an online programming course. The analysis obtained from this research indicated that students who simultaneously received web-mediated CCL and PhBL (G1) experienced significantly better development of programming skills than students who received the traditional teaching method (G4).

In the implementation of PhBL, students were asked to work with group members to construct knowledge of programming on the way to finding answers and plan their collaborative learning process for their mobile application. As it is revealed that PhBL could facilitate creative thinking among students [38], and that disciplinary learning can be linked to lived experiences via co-curricular experiential learning, making learning practical and useful [27], PhBL may enrich the effects of CCL and further contribute to the better development of G1 students’ programming skills. Thus, it is suggested that teachers in programming or computing courses could simultaneously adopt CCL and PhBL to facilitate students’ collaboration and allow them to experience learning through phenomenon. This may further lead to better development of programming skills or learning performance.

5.4 Potential problems and limitations of this study

In the context of the study presented in this paper, the researchers re-designed an online programming course, integrated CCL and PhBL with related educational technologies, and explored their effects on enhancing programming skills and self-efficacy in an online programming course. Although some effects of CCL and PhBL were illustrated, potential limitations to drawing firm conclusions may exist due to threats to the validity of conclusions arrived at through the research method (a quasi-experimental design).

While conducting this research, all students were first checked as to whether they had similar level of programming skills and had their self-efficacy measured before the experiment began. However, each student’s computer competency may not necessarily be the same, even though a pretest was conducted, and that may lead to bias in the measurement. In addition, some other issues with experimental validity (such as Hawthorne effect) may have influenced the learning outcomes of students in this research. These factors may potentially affect the validity of the results. Teachers who may adopt web-mediated CCL and PhBL in their teaching should be aware of students’ individual differences and the potential issues with quasi-experimental design that may have influenced the results and findings. Finally, as this study adopted a quasi-experimental method that included just 171 participants, the sample size may also be one of the limitations. Future research with a larger sample of participants would be expected to increase the general applicability of the effects of web-mediated CCL and PhBL found in this study.

6 Conclusions

It is revealed that new research emphasizes the adoption of learner-centric designs in online courses [70]. Students in the twenty-first century are required not only to obtain skills in using the technologies at hand, but also to develop problem-solving, critical thinking, and effective communication skills [49, 87]. Developing soft-skills and networking through CCL activities and constructing a holistic view of the subject through observing phenomenon could bring much benefit for students in higher education. The authors of this study recognize the importance of an innovative pedagogic approach such as PhBL as well as exploring how web-mediated CCL could benefit students in their academic achievements.

Emerging teaching methods for effective online teaching and learning are integrated into the digital education movement to increase numbers and quality of online courses [28]. In this semester-long experiment, it was found that the pedagogical arrangement of web-mediated CCL helped students comprehend the subject of programming better than in the non-CCL group. The analysis of PhBL indicates that this approach did not significantly build up students’ programming skills when compared with the non-PhBL group. Notwithstanding its limitations, this research does suggest that the interventions were partly effective, and with further adjustments, it may still be valuable for teachers and educators who want to employ CCL or PhBL in their online courses or scholars who are interested in designing creative methods for education.