Next Article in Journal
Lazy Aggregation for Heterogeneous Federated Learning
Next Article in Special Issue
Institutional Adoption and Implementation of Blended Learning in the Era of Intelligent Education
Previous Article in Journal
Shear-Bond Behaviour of Profiled Composite Slab Incorporated with Self-Compacted Geopolymer Concrete
Previous Article in Special Issue
Using Chatbots as AI Conversational Partners in Language Learning
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Online Peer-Tutoring for Programming Languages Based on Programming Ability and Teaching Skill

1
Department of Computer Science and Information Management, Soochow University, Taipei 100006, Taiwan
2
Department of Information Management, Chinese Culture University, Taipei 11114, Taiwan
*
Author to whom correspondence should be addressed.
Appl. Sci. 2022, 12(17), 8513; https://doi.org/10.3390/app12178513
Submission received: 30 July 2022 / Revised: 17 August 2022 / Accepted: 22 August 2022 / Published: 25 August 2022
(This article belongs to the Special Issue Technologies and Environments of Intelligent Education)

Abstract

:
Web-based cooperative learning could enhance students’ learning motivation; however, learning activities in this process are rather confusing because of the lack of structured learning strategies, resulting in unfavorable learning achievements. With the peer tutoring learning environment to encourage students’ mutual learning and development, an online peer-tutoring platform for programming languages with peer mentoring is established herein for one-to-one peer tutoring activities. With students with higher learning ability as tutors and those with lower learning ability as tutees, tutors can provide online peer tutoring for programming languages via demonstrations and flowcharts to discuss the effects of using different teaching methods for learning activities on the learning achievement of tutees. Based on these teaching methods for peer learning, 52 undergraduates were divided into experimental groups A and B; each group was further divided into peer mentoring group and non-peer mentoring group based on the ability levels. The results show that learning activities with the online peer-tutoring platform for programming languages could assist both groups in enhancing their learning achievement and ensure positive attitudes toward programming languages. In the analyses, the peer mentoring group was preferable in peer tutoring for programming languages with demonstration, while the non-peer mentoring group did not appear significant.

1. Introduction

1.1. Research Background and Motivation

Rapid technological advances have made the Internet popular, such that computer-assisted instruction and web-based cooperative learning are commonly applied to public education [1,2]. Many of researchers replaced traditional class learning activities with web-based learning strategies in the past years. Web-based learning activities enable teachers not only to manage the learning behaviors and portfolios of students more effectively, but could enhance the learning intention [3,4]. Although web-based collaborative learning could enhance students’ learning motivation, some researchers indicated that the collaborative learning activities caused confusion because the students with lower learning ability extended the time for collaborative tasks [5,6]. Consequently, this study aims to assist such types of online learning activities with effective learning strategies.
Peer tutoring, as a type of structured learning strategy, encourages mutual learning by students. Some researchers proposed that web-based peer tutoring could enhance students’ learning of mother tongue languages and other modern languages as well as their attitudes toward modern languages. Other researchers also indicated that peer cooperative learning [7,8,9] could promote students’ programming ability [9,10].
In colleges, programming languages are the core ability for students in information-related departments; however, they are regarded as a difficult subject for lots of students. Kelleher and Pausch mentioned that students would face complex grammar and instructions when solving programming language problems and understanding the program execution process [11]; such abstract programming grammar had made students consider programming languages as a difficult task. Many researchers also indicated many colleges were refusing to offer such a course because of a decrease in the number of students taking the course and an increase in the number of students lacking interest and passion in programming languages [12]. Previously, programming language instruction was done by a teacher lecturing on stage; one-way communication made it difficult for students to ask questions and the teachers did not realize the students’ problems [13,14,15]. Teachers sometimes cannot clearly see the students’ blind spots, nor understand the real problems of students. This method of tutoring reduced the learning intention of students. Consequently, several researchers studied computer-assisted instruction, aiming to assist the students in learning programming languages. Since 1980, the computer-assisted instruction systems for programming languages have gradually been developed, such as WebToTeach [16] and ELM-ART, intelligent tutoring systems combining the advantages of the web [17,18]. The above systems focused on assisting the teachers in curriculum arrangement and tests, or individually guiding the students with virtual teaching assistants, which presented limited effects on the students’ communication, flexibility, and learning achievement [19,20,21]. A peer-learning platform for programming languages was proposed in 2008, with which the students did not learn with virtual teaching assistants, but were tutored by peers [22,23]. Nevertheless, the tutors faced more than one student in the research; thus, the learning achievement was restricted.
When organizing and analyzing the application of cooperative learning mechanisms to e-learning systems in recent years, this study found that most of the researches focused on the auxiliary role which teachers should play in e-learning systems and how to develop learning functions that can effectively improve the efficiency of e-learning [24,25]. However, there is almost no discussion on the point of view of using the appropriate digital learning function as a peer to play an auxiliary teaching role. That is the main reason is that past researches on peer-to-peer cooperative learning have focused on peer learning rather than peer teaching skills [26,27,28].
Based on the above problems, an online peer-tutoring platform for programming languages is established for one-to-one peer tutoring to discuss the effects of the learning strategies and teaching skills in peer mentoring for programming languages. In peer mentoring, the students with higher learning abilities act as tutors, whereas students with lower learning abilities act as tutees. In the programming language learning process, most teachers will instruct by applying Flowchart or Demonstration [29,30]. Here, this study further discusses the differences between tutors applying Flowchart and Demonstration and online peer tutoring for programming languages in learning achievement.

1.2. Research Purpose

We want to develop an Online Peer-Tutoring Platform on our own. The Online Peer-Tutoring Platform will provide tutors with two types of teaching skills, Flow-chart and Demonstration to proceed with online peer tutoring for programming languages. In the past literature, most researchers discussed the effects of learning systems or the efficiency of introducing peer tutoring. Few Researchers explored the effect of teaching skills used in peer tutoring.
Several studies have indicated the learning achievement of computer-assisted instruction as superior to traditional learning methods [31,32]. This study, therefore, discusses the effects of distinct teaching skills in peer mentoring for computer-assisted instructions on learning achievement and learning behaviors.
Aiming at peer tutoring for JAVA, this study establishes an online peer-tutoring platform for programming languages; The online peer-tutoring learning system has different learning modules to support peer teaching and peer learning. The students are divided into Experimental groups A and B for the tutors applying different teaching skills to online peer learning activities for programming languages. Furthermore, each group is divided into peer and non-peer mentoring groups according to students’ levels. This grouping strategy promotes discussions on the differences of using distinct learning strategies and teaching skills in learning achievement and learning behaviors.
The research objectives are:
  • To discuss the effects of the online peer-tutoring platform for programming languages on students’ learning achievement and the attitudes towards programming languages.
  • To discuss the effects of various teaching skills on learning behaviors and learning achievements.
  • To discuss the differences in peer mentoring groups with distinct teaching skills in the learning achievement.
  • To discuss the differences in non-peer mentoring groups with distinct teaching skills in the learning achievement.
The remainder of this research is divided as follows: Section 2 is the literature review, the research methods and implementation are explained in Section 3, the experimental design is shown in Section 4, the experimental analyses are presented in Section 5, and the conclusions of this study are presented in Section 6.

2. Literature Review

The main focus of the literature research in Section 2 is to analyze and set out the characteristics of peer-to-peer e-learning in the past researches, as well as the principles, and to compare the common points of peer-to-peer learning. These principles can be used for this study to identify the shortcomings of the past peer-to-peer learning researches, and then propose how to further improve the effect and efficiency of peer-to-peer learning.

2.1. Programming Language Learning System

The development of the Internet in a changing technological world has replaced the past learning models; people can randomly acquire knowledge through the Internet, rather than being restricted in classes. Web-based learning breaks the restrictions of time and space, provides more diverse and instantaneous learning contents, and allows learners to participate in more learning activities [33]. Many researchers have discussed the teaching systems for the web-based computer-assisted programming languages [34,35], and several studies provided automatic virtual teaching assistants. However, such systems merely provided students with learning environments and standard feedback to reinforce the learning effects, meaning that the acquired knowledge was limited.
Arnow and Barshay [12] proposed a programming language learning system, WebToTeach, which supported several programming languages and diverse training practices with web-based teaching environments for students receiving more information and allowed teachers to give more time for students to answer questions to enhance their understanding of the learning conditions. Nonetheless, a convenient compiler was missing in WebToTeach, and the functions focused on teachers’ lesson arrangement.
Brusilovsky [13] proposed a LISP teaching system in ELM-ART for students receiving more help through virtual teaching assistants. In addition, the system would automatically arrange the difficulty according to the abilities of students. Nevertheless, this system only provided standard feedback preset by the teachers because the learning assistance was restricted.
Kölling, Quig, Patterson and Rosenberg [32] proposed a JAVA-assisted teaching system, BlueJ, to assist students in establishing JAVA objects through unified modeling language and understanding the characteristics of object-oriented programming languages [10], and to provide the function of debugging. BlueJ provided insufficient feedback on students’ errors and weak assistance for teachers.
Chien [15] proposed a peer-learning platform for the programming language, which enabled students to act as teaching assistants in online practice [36]. In previous studies, the teaching ability of the student assistants who were not trained in advance to face several students was discussed. This study, therefore, replaced the existing programming language learning methods with more efficient learning strategies.

2.2. Peer Tutoring

Peer tutoring, a teaching system sharing personal experiences, refers to the mutual assistance and discussions among peers [37], emphasizing the learning through the instruction of tutors with similar ages and thinking models to the tutees [38]. This learning model not only enhanced the tutees’ learning motivation and self-confidence but also reduced the learning stress and enhanced the learning achievement. Moreover, tutors who were trained before tutoring could learn from the tutees’ feedback and effectively enhance their social skills and mental development. According to Frick [25], peer tutoring involves students of similar ages, teaching others with weaker learning ability on a one-to-one basis and it is suitable for any age group, ability level, and field of learning. Fantuzzo, Riggio, Connelly and Dimeff agreed with the mutual instruction and cooperation among peers in the learning activities which could assist them in solving academic problems and sharing their experiences in the process [39].
Goodlad and Hirst [27] proposed theoretical bases of peer tutoring based on role theory, behaviorist theory, sociolinguistics theory, and gestalt theory.
  • Role Theory. It was regarded that the teaching behaviors of tutors would be restricted by the preset state of teachers and the tutors would be more considerate of teachers. In addition, the tutees were peers with less stress in the learning process and learning would be made easy.
  • Behaviorist Theory. It was considered that rewards could enhance students’ learning motivation. When giving correct responses to problems, the proper reward could motivate students to learn more effectively and further learning will be encouraged. Peer tutoring could rapidly enhance the learning process.
  • Sociolinguistics Theory. It emphasized the effects of social interaction on language styles and concepts. Peer tutoring allowed the students to learn unfamiliar subjects through habitual languages.
  • Gestalt Theory. It emphasized that learning occurred when learners place the learning items in the intelligence structure. Peer tutoring enhanced the tutors’ understanding of learning styles and continuously developed their skills in researching problems. For instance, the tutors would view materials with new methods as they had to prepare and absorb the material contents, explain such contents to the tutees, and re-organize the contents for tutees to learn. For better instruction, the tutors might need to determine the characteristics and structures of the teaching subjects to better understand the materials.

2.3. Peer Mentoring

Peer mentoring is one of the peer learning methods and a strategy derived from mentoring; it allows the students with higher learning ability or more experience to act as mentors and the others with lower learning ability or fewer experiences, to be mentees on a one-to-one basis. In addition, the students with lower learning abilities or fewer experiences could release their learning anxiety by enhancing the learning levels through mutual learning and peer assistance [39,40]. Furthermore, the students with higher learning abilities or more experience could reconstruct individual meta-cognition through this learning method. This learning process could enhance the students’ learning to achieve teaching and learning, as it aims to apply peer influence, with close language use, understanding, and skills among peers, to exceed teachers’ language levels and experience.
Gartner and Riessman [26] indicated that learners, as mentors or mentees, in peer mentoring could acquire the following in the learning process.
  • Academic knowledge and skills (of both mentors and mentees).
  • With the experience of receiving peer mentoring, mentees are likely to be successful mentors in the future.
  • Listening and communication skills.
  • Further understanding of the essence of teaching and learning, especially the process leading from teaching to learning.
Falchikov and Blythman classified peer mentoring into four categories, according to the peer levels and class differences [41].
5.
Peer group in the same class.
6.
Peer group in the same grade, but not the same class.
7.
Cross-level peer group in the same school, but not the same grade.
8.
Cross-level peer group from two different schools.
From previous studies, most researchers discussed the effects of learning systems or the efficiency of introducing peer tutoring; however, few explored the effects of teaching skills used in peer tutoring on the efficiency of peer tutoring [42,43].
With peer groups in the same class, the students with higher learning ability act as tutors, tutoring the others with lower learning ability to learn programming languages through the online peer-tutoring platform for programming languages. Moreover, the effects of the teaching skills applied by the tutors on peer tutoring efficiency are discussed.

3. System Architecture and Research Method

We developed an Online Peer-Tutoring Platform which provide two types of teaching skills, Flow-chart and Demonstration teaching module to proceed with online peer tutoring for programming languages. The digital peer tutoring and learning system is mainly developed and constructed for the learning of difficult programming languages in the field of information science. The learning system mainly includes: “Example Program Writing and Debugging Module”, and “Peer Tutoring and Discussion Module”. Among the two smart learning modules, the first learning module “Example Program Writing and Debugging Area” includes the intelligent test question practice area, the code editing area, and the compilation information area. The function of this module is to allow learners to automatically generate questions through the question area. The system will filter out the suitable test questions according to the learners’ current learning situation and progress, so that learners can truly understand and utilize the test questions by writing the actual practice programs. After that, the system compiles the student’s program through the real-time compilation function of this smart learning module, and the result is displayed in the “OUTPUT area” in real time, so that learners can check whether their program is correct in real time.
Then, the on-line peer tutoring system of this study will help learners to debug and fix the difficult or blind spots in programming contents by the smart learning module- “Peer Teaching and Discussion Area” which will focus on what learners do not understand in the process of program writing, or the mistakes in compiling their own programs, and use this peer teaching and discussion module to guide the student’s programming in order to upgrade the students with lower ability and solve their doubts enabling a smooth learning process. Therefore, the second learning module of this system includes the smart learning functions such as “Peer Teaching Information Area”, “Peer Discussion Area”, and “e-Portofolio Learning Record”. The functions and operation interfaces of these two intelligent learning modules are described in detail as follows:

3.1. Learning Environment

Peer tutoring has been widely applied to teaching activities. In peer tutoring for programming languages, researchers desire to consider the teaching skills used by the tutors. With web-based peer tutoring for programming languages, the differences of the tutors using various teaching skills for learning activities in the tutoring behaviors are worth exploring. Consequently, an online peer-tutoring platform for programming languages is established for online peer tutoring, in which Experimental group A applied Demonstration, whereas Experimental group B applied Flowchart.

3.2. System Framework

The system procedure is shown in Figure 1, where the blue and the red blocks are the learning procedure for tutors and tutees, respectively. Each student will first log in into the system (Step 1) for the frame responding to the role. A tutee will start writing codes for the answer (Step 2), whereas the tutor will acquire the answer in real time (Step 2). After completing and storing the file (Step 3), the tutee would proceed to the compiler (Step 4). When there are errors, an error message will appear on the frame of the tutor (Step 4.1) and the tutor will attend to the tutees applying Demonstration or Flowchart (Step 4.2) and the tutee will re-write codes for the answer (Step 2). When the compiler is correct, the tutor and the tutee would discuss the codes, and the tutee would continue with the next question (Step 5) after confirming the correct answer. Meanwhile, the tutor would receive the confirmation message for giving the next question (Step 6). The tutee then goes back to the answer (Step 2). This continues till all questions have been completed.

3.3. System Function and Interface

The online peer-tutoring platform for programming languages is established with PHP + MySQL, follows the strategy of peer mentoring to divide the students into tutors and tutees, and guides them to the corresponding interfaces, as in Figure 2, Figure 3, Figure 4 and Figure 5.
Block 1 shows the question. After completing a question, a tutee has to press on NEXT, and the system will immediately advise the tutor controlling the new question.
Block 2 is the coding area, where the tutee can code in the block and press on SAVE and then COMPILER for programming.
Block 3 displays the programming message. After pressing COMPILER, the programming result is shown on the block.
Block 4 shows the tutoring information, where the tutee can receive tutoring information from the tutor.
Block 5 presents the peer discussion information, where the group discussions are displayed and the answering time of the group is also recorded.
Block 6 is the message input area. The tutee can key in questions and the tutor can respond.
Block 7 shows the online group members.
Block 1 shows the question. When the tutee sends the message for the next question, the tutor will press NEXT for a new question. Without the message from the tutee, the tutor cannot press it.
Block 2 is the coding area. The tutor could monitor the tutee’s coding and guide to revise the codes, for any mistakes, through chat-room.
Block 3 is the programming area, where the tutor can look up the tutee’s programming results.
Block 4 is the tutoring area, where the tutor can demonstrate examples to the tutee, or provide the flowchart of subroutines for the tutee’s reference.
Block 5 shows the peer discussions, where the message discussed will be displayed and the answering time of the group would be recorded.
Block 6 is the message input area, where the tutee can ask questions and the tutor respond.
Block 7 presents the online group members.

4. Experimental Design

4.1. Experimental Subject

Fifty-two sophomores in the Department of Computer Science and Information Management, Soochow University, are selected as the experimental subjects for a 30 min programming language paper test. Based on the test results, the students are paired as tutors and tutees, and randomly divided into Experimental group A and Experimental group B, where the peer mentoring group and non-peer mentoring group are further divided according to the levels. The students further proceed with the peer tutoring for programming languages with the online peer-tutoring platform for programming languages, where the tutors in Experimental group A apply Demonstration to tutor the tutees writing codes, whereas the tutors in Experimental group B judge the codes with Flowchart to tutor the tutees. The questions for programming languages, mainly recursive concepts, are designed by experts. For many students, recursion is considered more difficult than if-else, do-while, and for loops. It is expected to reinforce the students’ concepts and familiarity with recursive programming.

4.2. Grouping

Based on the grouping of Chen (2006) [6], the students’ pretest results are ranked, the median is regarded as the standard, and half of the number of students close to the standard, total number of students divided by 2, are in the non-peer mentoring group, while the rest are in the peer mentoring group. For the number of students in the non-peer mentoring group and peer mentoring group in both Experimental group A and B to be the same, 24 students, in 12 groups, were placed in the non-peer mentoring group, and the remaining 28 students, in 14 groups, were placed in the peer mentoring group. The students in a group were paired with S-type pairing, and the students with higher abilities acted as tutors, whereas, the others with lower abilities acted as tutees.

4.3. Activity Design

The students were divided into Experimental groups A and B, where the students took the pretest and then proceeded with the peer tutoring using the online peer-tutoring platform for programming languages. The experimental flowchart is shown in Figure 6. The students first spent 30 min for the pretest and another 15 min for the programming attitude questionnaire pretest, aiming to test the differences in programming languages before using the system. The peer mentoring and non-peer mentoring groups were further divided according to the pretest results, and the students in each group were further classified as tutors and tutees, based on their abilities. The attitudes towards programming languages before the learning activities were also discovered. Before the online peer tutoring, the tutors in each group were trained on recursive programming twice, 30 min each, to enhance their programming ability and the recursive concept. The peer tutoring for programming languages then proceeded for five weeks. Both Experimental groups A and B used the online peer-tutoring platform for programming languages for the learning activities. Subsequently, another 30 min were spent for the post-test, aiming to test the students’ enhancement of programming languages with the online peer-tutoring platform for programming languages. Finally, the questionnaire survey and the programming language attitude questionnaire post-test were administered for 30 min to understand the satisfaction with the system and analyze the students’ learning conditions, learning achievement, and attitudes towards programming languages.

4.4. Experimental Tool

4.4.1. Learning Achievement Test

The test questions are designed by experts, aiming at recursive questions. Ten multiple-choice and filling-in-blanks questions are contained in the pretest. The former tests the students’ recursive programming logic, and the latter tests the recursive coding structure. The pretest provides an understanding of students’ levels on the recursive chapter in programming languages. The post-test also covers ten questions. In addition to multiple choices and filling-in-blanks, short-answer questions are included to test whether the students can write complete recursive codes after the learning activities. The test emphasizes the problem-solving ability of students in recursive questions and intends to understand the differences in the students accepting different teaching skills in the absorption of recursive concepts.

4.4.2. Programming Language Attitude Questionnaire

Based on Chang’s [29] programming language attitude questionnaire, ten questions, including the dimensions of learning state and learning intention, are covered, and it is filled in before and after the learning process. With Likert’s six-point scale, mark 1 stands for Extremely disagree, 2 for Disagree, 3 for Slightly disagree, 4 for Slightly agree, 5 for Agree, and 6 for Extremely agree. It aims to discuss the opinions of students and learning intentions of programming instructions and codes, debugging, and design codes.

4.4.3. System Feedback Questionnaire

Tsou’s learning platform [18] questionnaire realizes students’ satisfaction with the platform [8]. With Likert’s seven-point scale, mark 1 stands for Extremely disagree, 2 for Disagree, 3 for Slightly disagree, 4 for Ordinary, 5 for Slightly agree, 6 for Agree, and 7 for Extremely agree. Five dimensions are covered in the questionnaire. System quality aims to discuss the stability and favorable operation interface of the system; perceived usefulness aims to explore the assistance of the system in the students’ programming language learning; perceived ease of use intends to discuss whether the students can easily operate the learning system; system satisfaction aims to discuss the students’ satisfaction with the system; intention to use explores the students’ learning intention of using the system. The reliability Cronbach’s α reveals 0.89, 0.91, 0.96, 0.96, and 0.95, respectively.

4.4.4. Information Coding

After the learning activities, the messages in the chat room are coded for sequential analysis. Information coding, proposed by Hou, Sung, and Chang [29], is used to analyze the students’ behaviors and attitudes in peer learning, and the coded contents are discussed and adjusted by the experts, as shown in Table 1 [7].

5. Experimental Result and Analysis

This study was conducted on a group that used the peer tutoring system and a control group that did not use the system. At the same time, this study has different teaching functions, which can be provided to the role of mentor in peer-to-peer learning, so that the teaching effect of peer-to-peer learning can be further significantly improved. There are also further discussions of the experimental results in Section 5 of this study. In the experimental results and analysis of Section 5, this study explores the significance of the experimental results for learning from different aspects of the e-learning. This chapter will make further comparisons and discussions based on the data from different experiments in Section 4. According to the experimental data in Table 2, Table 3, Table 4, Table 5, Table 6, Table 7, Table 8, Table 9, Table 10, Table 11, Table 12 and Table 13 below, further discussions and explanations are made on the significance of the peer learning and teaching effect.
The experimental hypotheses and data are separately analyzed in this chapter. The following hypotheses are further discussed in the sections of prior knowledge, learning achievement, information coding, programming language attitude questionnaire, and system questionnaire.
  • The use of the online peer-tutoring platform for programming languages presents significant effects on students’ learning achievement.
  • The groups with Demonstration and Flowchart reveal differences in learning achievement.
  • The peer mentoring group and non-peer mentoring group in Experimental group A show significant differences in learning achievement.
  • The peer mentoring group and non-peer mentoring group in Experimental group B present remarkable differences in the learning achievement.
  • The peer mentoring group with Demonstration or Flowchart presents notable differences in the learning achievement.
  • The non-peer mentoring group with Demonstration or Flowchart shows significant differences in the learning achievement.
  • The use of the online peer-tutoring platform for programming languages presents remarkable effects on the students’ attitudes towards programming languages.

5.1. Prior Knowledge

Fifty-two students took the pretest before the learning activities, aiming to test the differences in their basic ability in the use of programming languages. With t-test analyses, the means of Experimental groups A and B are 35.92 and 34.62, respectively as shown in Table 2, and the significance p is 0.78 > 0.05. Apparently, the results of Experimental groups A and B did not present significant differences because the students’ basic abilities of programming languages were close.

5.2. Learning Achievements

  • The use of the online peer-tutoring platform for programming languages presents significant effects on students’ learning achievement.
The students took the post-test after the learning activities. Based on t-test analyses in Table 3, the mean of the post-test for Experimental group A is 70.96, the mean of the pretest is 35.92, and p 0.00 < 0.05, reaching significance. Based on t-test analyses in Table 4, the mean of the post-test of Experimental group B is 62.69, the mean of the pretest is 34.62 and p 0.00 < 0.05, reaching significance. Based on t-test analyses in Table 5 and Table 6, the tutors in both groups present p 0.00 < 0.05, achieving significance, and the tutees in both groups show the significance p 0.00 < 0.05, achieving significance as seen in Table 7 and Table 8. Consequently, the results of both groups show remarkable progress after the learning activities, and both the tutors and the tutees present significant progress. Therefore, students’ learning achievement in programming languages is enhanced after the online peer-tutoring platform for programming languages, and both the tutors and tutees made significant progress. “Teach and Learn” is therefore achieved.
2.
The groups with Demonstration and Flowchart reveal differences in learning achievement.
Based on t-test analyses in Table 9, the mean of Experimental group A is 70.96 and that of Experimental group B is 62.69, and the p 0.04 < 0.05, reaching significance. Therefore, the online peer programming language learning activities with Demonstration present better results than those with Flowchart.
However, the main emphasis of this study is that peers play the role of teaching and guidance, and how the peer tutor uses different peer teaching skills and guidance methods to let the tutee learn more effectively. At the same time, after the peer teaching process, the tutors also made obvious progress in the post-test scores, which shows that the tutors have really internalized the program knowledge in the teaching process. This is the main difference of this research.
3.
The peer mentoring and non-peer mentoring groups in Experimental group A show significant differences in learning achievement.
With t-test analyses, the mean of the peer mentoring group in Experimental group A is 72.08 and that of the non-peer mentoring group is 70.00, and p 0.60 > 0.05, not achieving significance. Therefore, the peer mentoring and the non-peer mentoring groups using Demonstration for the online peer programming language learning activities do not show remarkable differences in the learning achievement, possibly because the 30-min learning activities for two questions are not sufficient for group discussions and practice.
4.
The peer mentoring and the non-peer mentoring groups in Experimental group B present remarkable differences in learning achievement.
With t-test analyses, the mean of the peer mentoring group in Experimental group B is 57.50 and that of the non-peer mentoring group is 57.14, and p 0.20 > 0.05, not achieving the significance. Therefore, the peer mentoring and non-peer mentoring groups using Flowchart for the online peer programming language learning activities do not present significant differences in the learning achievement, possibly because the 30-min learning activities for two questions are not sufficient for group discussions and practice.
5.
The peer mentoring group with Demonstration or Flowchart presents significant differences in the learning achievement.
With t-test analyses in Table 10, the mean of the post-test of Experimental group A–Peer mentoring group is 72.08 and that of Experimental group B–Peer mentoring group is 57.5, and p 0.06 > 0.05, not reaching significance. Nonetheless, the mean of Experimental group A is higher than that of Experimental group B, and the chat room records reveal that the students in Experimental group B still use Demonstration for the learning activities because Demonstration is more proper for the online peer programming language learning activities.
6.
The non-peer mentoring group with Demonstration or Flowchart shows significant differences in the learning achievement.
With t-test analyses in Table 11, the mean of the post-test of Experimental group A–non-peer mentoring group is 70.00 and that of Experimental group B–non-peer mentoring group is 67.14, and p 0.42 > 0.05, not achieving significance. Therefore, the non-peer mentoring group with Demonstration or Flowchart does not show significant differences, possibly because the non-peer mentoring students do not show large differences in learninglevel.

5.3. Programming Language Attitude

7.
The use of the online peer-tutoring platform for programming languages presents remarkable effects on the students’ programming language attitudes.
With Likert’s six-point scale, Strongly agree is marked 6, Agree 5, Slightly agree 4, Slightly disagree 3, Disagree 2, and Extremely disagree 1. Table 12 and Table 13 present t-test analyses of programming language attitudes of both groups before and after the learning process. Apparently, the students’ attitudes towards programming languages show a positive growth after the online peer programming language learning activities. The students in both groups present the significance p of less than 0.05 on learning state, achieving significance, thus the recursive programming concepts and decoding of the students in both groups are remarkably promoted after the learning activities. Moreover, the learning intention did not reach significance but is enhanced, showing that the online peer-tutoring platform for programming languages enhanced the students’ learning intention.

5.4. Sequential Analysis

The messages in the chat room during the online peer programming language learning process are coded, where the acquainted peer is coded as A, tutor preceding low-level instruction, such as User1: “You miss a } at the end” as B, tutor preceding high-level instruction, such as User1: “When it is an odd number, return n + fun(n − 2)” as C, tutee proposing questions or looking for solutions as D, and irrelevant response as E; the coding reliability Cronbach’s(α) = 0.92. Information coding is further preceded by sequential analysis, proposed by Hou, Sung, and Chang [29], the significance of the Z-test (in short Z) is used in describing the information sequence, which is further transferred into a graph as the learning behaviors of each group. Each circle in the graph represents the information codes, and the wider line presents the more significant transfer of information. Z larger than 1.96 shows the achievement of significance. The learning behaviors of the groups observed from the information coding are shown as follows.
Preceding the experience of using peer tutoring platforms for programming languages, the learning behaviors of each group are almost the same. The tutors in each group present continuous concerns to the tutor preceding high-level instruction, revealing the frequent tutoring of most tutors on error messages, e.g., User1: “When it is an odd number, return n + fun(n − 2)”. In addition, the learning behaviors of the groups will transfer between a tutor applying high-level instruction and tutee proposing questions or looking for solutions, presenting a bi-directional communication between tutors and tutees. When a tutee actively asks questions, the tutor will provide guidelines or solutions oriented to the question, rather than unilateral tutoring. From the learning behaviors, it was also discovered that most tutors provided complete codes or solutions for the tutee’s questions; the tutees, therefore, made fewer low-level programming errors. The tutors, therefore, did not show notable tutoring preceding low-level instructions. Moreover, each group is likely to precede high-level instructions with an irrelevant response, possibly because the tutees will engage in irrelevant dialogues when waiting for tutoring, e.g., User 3: “User1, you are great.” Each group presented continuous use of irrelevant responses; however, the peer mentoring group in Experimental group B showed highly continuous use of the irrelevant response (Z = 18.32) This situation could influence learning achievement.
Finally, the tutors in Experimental group B use Flowchart as the tutoring method; however, they applied Demonstration to the tutoring when some tutees understood the logic of Flowchart. From the post-test learning achievement, it can be inferred that, using Demonstration in peer tutoring for programming languages could enhance the learning achievement of the students with lower levels.

5.5. System Satisfaction

Five dimensions were covered in the learning platform questionnaire, namely system quality, perceived usefulness, perceived ease of use, system satisfaction, and intention to use. With Likert’s seven-point scale, Extremely agree is marked 7, Agree 6, Slightly agree 5, Ordinary 4, Slightly disagree 3, Disagree 2, and Extremely disagree 1. The analyses show that, the mean of system quality is 4.33, implying that most students regard the platform with favorable quality. The mean of perceived usefulness is 4.74, revealing that most students agree with the programming language ability being enhanced by the peer-learning platform for the programming language. The mean of perceived ease of use is 5.20 showing that the platform provided a simple system interface for easy operation. The mean of system satisfaction is 4.68, revealing the satisfaction of most students. Finally the mean of intention to use is 4.32 revealing the students’ positive attitudes towards learning with the platform.

6. Conclusions

Programming languages are considered difficult for students with lower levels of ability or capacity, and researchers are concerned with methods to effectively enhance the programming language abilities and interests of students. Previous learning systems for programming languages focused on students’ individual practice; thus, they could not immediately ask and receive solutions for problems. This study develops an online peer learning system with different peer teaching and peer learning modules to support peer teaching and peer learning. Peer tutoring in this study allows the students to apply one-to-one learning activities, from which they could instantaneously receive feedback and apply the peer tutoring for programming languages with distinct teaching skills. It explored the effects of various peer-tutoring skills for programming languages on the learning achievements of students.

6.1. Learning Achievements

The experimental group was divided into Experimental group A and Experimental group B, and the peer mentoring group and the non-peer mentoring group were further divided in each group. Experimental group A applied peer-tutoring for programming languages with Demonstration, and Experimental group B with Flowchart. Both Experimental groups A and B used the online peer-tutoring platform for programming languages, and the learning activities were further compared. The research data show that both Experimental groups A and B presented significant progress on the learning achievement after using online peer-tutoring platform for programming languages, and the tutors and tutees in both groups also made significant progress, achieving Teach and Learn.
In the analyses, the learning achievement of Experimental group A was better than that of Experimental group B, possibly because the tutors in Experimental group A used Demonstration such that the tutees could imitate the tutors’ coding and further comprehend and absorb. In sequential analysis, it was also realized that the tutors and tutees in both groups interact frequently. These learning behaviors also reflect the learning achievements.
Peer mentoring group with Demonstration as the teaching skill presented better learning achievements than the peer mentoring group with Flowchart. Moreover, peer mentoring group with Flowchart as the teaching skill presented continuous concerns over irrelevant responses (Z = 18.32) which is regarded as the factor responsible for the unfavorable learning achievement. Therefore, it is preferable for tutors to apply Demonstration in tutoring when the level between the tutor and the tutee is too wide. The learning achievement in a non-peer mentoring group does not reveal any notable difference in the teaching skill when the levels between the tutor and the tutee were less.

6.2. Attitude towards Programming Languages

In the programming language attitude questionnaire, it was found that the students’ attitudes towards programming languages showed positive growth after the peer-tutoring for programming language learning activities. The remarkable increase in the learning state reveals that the online peer-tutoring platform for programming languages can effectively enhance students’ programming concepts and programming ability.

6.3. Limitations and Perspectives of ths Study

First of all, the main difference between this study and previous related e-learning studies is the peer teaching and appropriate peer-to-peer pedagogy. Therefore, the limitation of this study is that the distribution of students’ degrees of competence in the same class needs to be normalized. That is to say, students with a good level of programming language are required, and students with a poor level are also required, and the number of students with different levels is a relatively average and normalized distribution. Secondly, the peer tutoring and teaching function provided in this study allows peers with a good level to help students with a lower level to learn programming language through the Online Peer-Tutoring system.
Therefore, the second possible limitation and prospect of this research is the need to dismantle the complex and difficult programming questions first. When encountering really large and complex program test questions, it is necessary to disassemble the highly complex test questions first before explaining them. The peer teaching and discussion functions provided in this study will easily improve peer teaching and communication. Due to the complexity of the research system, the research system may need to develop more detailed learning functions for the teaching and discussion functions of the peer teaching system, to ensure improvement through future research.

Author Contributions

All authors have contributed to the manuscript according to the following tasks: Conceptualization, Y.-C.K.; methodology, Y.-C.K., C.-B.Y. and Z.-Y.W.; validation, C.-B.Y. and Z.-Y.W.; experiment and data curation, C.-B.Y. and Z.-Y.W.; writing—original draft preparation, C.-B.Y. and Z.-Y.W.; writing—review and editing, C.-B.Y.; visualization, C.-B.Y.; supervision and project administration, C.-B.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This study is supported in part by the National Science and Technology Council of the Republic of China under contract number MOST 111-2410-H-031-024.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Motaung, L.B.; Makombe, R. Tutor experiences of online tutoring as a basis for the development of a focused tutor-training programme. Indep. J. Teach. Learn. 2021, 16, 101–117. [Google Scholar]
  2. Davis, N.L.; Gough, M.; Taylor, L.L. Online teaching: Advantages, obstacles, and tools for getting it right. J. Teach. Travel Tour. 2019, 19, 256–263. [Google Scholar] [CrossRef]
  3. Iwasaki, C.; Tada, Y.; Furukawa, T.; Sasaki, K. Design of e-learning and online tutoring as learning support for academic writing. Asian Assoc. Open Univ. J. 2018, 17, 85–96. [Google Scholar] [CrossRef]
  4. Wong, T.M. Teaching innovations in Asian higher education: Perspectives of educators. Asian Assoc. Open Univ. J. 2018, 13, 179–190. [Google Scholar] [CrossRef]
  5. Li, C.Y. Research on Blended Instructional Design Practice of Open Education Under the Flip Concept. Adult Educ. 2018, 9, 30–34. [Google Scholar]
  6. Wen, Y.D.; Pei, L.J. Promoting Deep Learning by Peer Learning Exploring Blended Teaching Ideas. In Proceedings of the 14th International Conference on Computer Science & Education (ICCSE), Toronto, ON, Canada, 19–21 August 2019. [Google Scholar]
  7. Faroa, B.D. Considering the Role of Tutoring in Student Engagement: Reflections from a South African University. J. Stud. Aff. Afr. 2017, 5, 1–15. [Google Scholar] [CrossRef]
  8. Escobar-Fandiño, F.G.; Silva-Velandia, A.J. How an Online Tutor Motivates E-learning English. Heliyon 2020, 6, e04630. [Google Scholar] [CrossRef]
  9. Georgiou, Y.; Kyza, E.A. Relations between students motivation, immersion outcome in location-based augmented reality settings. Comput. Hum. Behav. 2018, 89, 173–181. [Google Scholar] [CrossRef]
  10. Liu, L.; Shen, Y.F. Information Technology-Based Practice of mixed teaching mode for material mechanics. Univ. Educ. 2018, 7, 63–66. [Google Scholar]
  11. Zhan, Z.; Xu, F.; Ye, H. Effects of an online learning community on active and reflective learners’ learning performance and attitudes in a face-to-face undergraduate course. Comput. Educ. 2011, 56, 961–968. [Google Scholar] [CrossRef]
  12. Arnow, D.; Barshay, O. WebToTeach: An interactive focused programming exercise system. In Proceedings of the 29th Annual Frontiers in Education Conference. Designing the Future of Science and Engineering Education, San Juan, PR, USA, 10–13 November 1999. [Google Scholar]
  13. Brusilovsky, P.; Schwarz, E.; Weber, G. ELM-ART: An Intelligent Tutoring System on World Wide Web; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2005; Volume 1086, pp. 261–269. [Google Scholar]
  14. Wong, W.; Chan, T.; Chou, C.; Heh, J.; Tung, S. Reciprocal tutoring using cognitive tools. J. Comput. Assist. Learn. 2003, 19, 416–428. [Google Scholar] [CrossRef]
  15. Chien, C.M. Applying Peer Tutoring to Programming Languages Instruction Platform. Unpublished Dissertation, Yunlin University, Douliu, Taiwan, 2008. [Google Scholar]
  16. Chen, C. A Study of Optimal Grouping in Collaborative Learning; Department of Computer Science and Information Engineering, National University of Tainan: Tainian, Taiwan, 2006. [Google Scholar]
  17. Chang, R. Exploring the Effects of Pair-Programming in a High School Computer Course; Graduate Institute of Information and Computer Education, National Taiwan Normal University: Taipei, Taiwan, 2009. [Google Scholar]
  18. Tsou, Y. A Study of User’s Satisfaction Toward E-Learning Platform Usability—Ling Tung University Case; Graduate Institute of Business Administration, Ling Tung University: Taichung, Taiwan, 2012. [Google Scholar]
  19. Chu, H.-C.; Hwang, G.-J.; Tsai, C.-C. A knowledge engineering approach to developing mind tools for context-aware ubiquitous learning. Comput. Educ. 2010, 54, 289–297. [Google Scholar] [CrossRef]
  20. Daly, C.; Horgan, J.M. An automated learning system for Java programming. IEEE Trans. Educ. 2004, 47, 10–17. [Google Scholar] [CrossRef]
  21. Erdogan, Y. Paper-based and computer-based concept mappings: The effects on computer achievement, computer anxiety and computer attitude. Br. J. Educ. Technol. 2009, 40, 821–836. [Google Scholar] [CrossRef]
  22. Falchikov, N.; Blythman, M. Learning Together: Peer Tutoring in Higher Education; Routledge: London, UK, 2001. [Google Scholar]
  23. Fantuzzo, J.W.; Riggio, R.E.; Connelly, S.; Dimeff, L.A. Effects of reciprocal peer tutoring on academic achievement and psychological adjustment: A component analysis. J. Educ. Psychol. 1989, 81, 173. [Google Scholar] [CrossRef]
  24. Fjermestad, J. An analysis of communication mode in group support systems research. Decis Support Syst 2004, 37, 239–263. [Google Scholar] [CrossRef]
  25. Frick, L. Peer tutors: The peerless resource. VocEd 1980, 5, 28–29. [Google Scholar]
  26. Gartner, A.; Riessman, F. Peer-Tutoring: Toward a New Model; ERIC Clearinghouse on Teaching and Teacher Education: Washington DC, USA, 1993. [Google Scholar]
  27. Goodlad, S.; Hirst, B. Peer Tutoring. A Guide to Learning by Teaching; Nichols Publishing: New York, NY, USA, 1989; p. 10024. [Google Scholar]
  28. Han, K.W.; Lee, E.K.; Lee, Y.J. The impact of a peer-learning agent based on pair programming in a programming course. IEEE Trans. Educ. 2010, 53, 318–327. [Google Scholar] [CrossRef]
  29. Hou, H.T.; Sung, Y.T.; Chang, K.E. Exploring the behavioral patterns of an online knowledge-sharing discussion activity among teachers with problem-solving strategy. Teach Teach Educ. 2009, 25, 101–108. [Google Scholar] [CrossRef]
  30. Huang, Y.-M.; Lin, Y.-T.; Cheng, S.-C. Effectiveness of a Mobile Plant Learning System in a science curriculum in Taiwanese elementary education. Comput. Educ. 2010, 54, 47–58. [Google Scholar] [CrossRef]
  31. Hwang, G.J.; Chu, H.C.; Shih, J.L.; Huang, S.H.; Tsai, C.C. A decision-tree-oriented guidance mechanism for conducting nature science observation activities in a context-aware ubiquitous learning environment. J. Educ. Techno. Soc. 2010, 13, 53–64. [Google Scholar]
  32. Kölling, M.; Quig, B.; Patterson, A.; Rosenberg, J. The BlueJ system and its pedagogy. Comput. Sci. Educ. 2003, 13, 249–268. [Google Scholar] [CrossRef]
  33. Kelleher, C.; Pausch, R. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Comput. Surv. (CSUR) 2005, 37, 83–137. [Google Scholar] [CrossRef]
  34. Kinnunen, P.; Malmi, L. Why students drop out CS1 course? In Proceedings of the Second International Workshop on Computing Education Research, Canterbury, UK, 9–10 September 2006; ACM: New York, NY, USA, 2006; pp. 97–108. [Google Scholar]
  35. Koschmann, T.D.; Hall, R.; Miyake, N. CSCL 2, Carrying Forward the Conversation; Lawrence Erlbaum Associates: Mawah, NJ, USA, 2002. [Google Scholar]
  36. Lipponen, L.; Rahikainen, M.; Lallimo, J.; Hakkarainen, K. Patterns of participation and discourse in elementary students’ computer-supported collaborative learning. Learn. Instr. 2003, 13, 487–509. [Google Scholar] [CrossRef]
  37. Newman, D. Cognitive and Technical Issues in the Design of Educational Computer Networking. Online Education: Perspectives on a New Media; Praeger: New York, NY, USA, 1990; pp. 99–116. [Google Scholar]
  38. Sweller, J.; Cooper, G.A. The use of worked examples as a substitute for problem solving in learning algebra. Cogn Instr. 1985, 2, 59–89. [Google Scholar] [CrossRef]
  39. Thompson, L.F.; Coovert, M.D. Teamwork online: The effects of computer conferencing on perceived confusion, satisfaction and post discussion accuracy. Group. Dyn. Theory Res. Pract. 2003, 7, 135–151. [Google Scholar] [CrossRef]
  40. Thurston, A.; Duran, D.; Cunningham, E.; Blanch, S.; Topping, K. International on-line reciprocal peer tutoring to promote modern language development in primary schools. Comput. Educ. 2009, 53, 462–472. [Google Scholar] [CrossRef]
  41. Stickler, U.; Hampel, R. Designing online tutor training for language courses: A case study. Open Learn. 2007, 22, 75–85. [Google Scholar] [CrossRef]
  42. Yao, C.B. Constructing a User-Friendly and Smart Ubiquitous Personalized Learning Environment by Using a Context-Aware Mechanism. IEEE Trans. Learn. Technol. 2017, 10, 104–114. [Google Scholar] [CrossRef]
  43. Martin, F.; Wang, C.; Sadaf, A. Student perception of helpfulness of facilitation strategies that enhance instructor presence, connectedness, engagement and learning in online courses. Internet High. Educ. 2018, 37, 52–65. [Google Scholar] [CrossRef]
Figure 1. System procedure.
Figure 1. System procedure.
Applsci 12 08513 g001
Figure 2. System frame−Experimental group A (tutee).
Figure 2. System frame−Experimental group A (tutee).
Applsci 12 08513 g002
Figure 3. System frame−Experimental group B (tutee).
Figure 3. System frame−Experimental group B (tutee).
Applsci 12 08513 g003
Figure 4. System frame−Experimental group A (tutor).
Figure 4. System frame−Experimental group A (tutor).
Applsci 12 08513 g004
Figure 5. System frame−Experimental group B (tutor).
Figure 5. System frame−Experimental group B (tutor).
Applsci 12 08513 g005
Figure 6. Experimental flowchart.
Figure 6. Experimental flowchart.
Applsci 12 08513 g006
Table 1. Chat room information coding.
Table 1. Chat room information coding.
BehaviorExample
AAcquainted peersUser1: “Hello~I am uesr1. My role is a tutor.”
BTutor preceding low-level instructionUser1: “You miss a “}” at the end.”
CTutor preceding high-level instructionUser1: “When it is an odd number, return n + fun(n − 2)”
DTutee proposing questions or looking for solutionsUser2: “How to declare an array with numbers?”
EIrrelevant responseUser2: “Can we switch the roles?”
Table 2. Pretest t-test analyses of Experimental group A and Experimental group B.
Table 2. Pretest t-test analyses of Experimental group A and Experimental group B.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group A (pretest)2635.9219.533.830.78
Experimental group B (pretest)2634.6215.102.96
Table 3. Pretest and post-test t-test analyses of Experimental group A.
Table 3. Pretest and post-test t-test analyses of Experimental group A.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experiment A
(post-test)
2670.969.801.920.00
Experiment A
(pretest)
2635.9219.533.83
Table 4. Pretest and post-test t-test analyses of Experimental group B.
Table 4. Pretest and post-test t-test analyses of Experimental group B.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experiment B
(post-test)
2662.6917.793.490.00
Experiment B
(pretest)
2634.6215.102.96
Table 5. Pretest and post-test t-test analyses of Experimental group A_tutor.
Table 5. Pretest and post-test t-test analyses of Experimental group A_tutor.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group A_ tutor (pretest)1352.309.342.590.00
Experimental group A_ tutor (post-test)1376.926.301.74
Table 6. Pretest and post-test t-test analyses of Experimental group B_tutor.
Table 6. Pretest and post-test t-test analyses of Experimental group B_tutor.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group B_ tutor (pretest)1347.0710.993.040.00
Experimental group B_ tutor (post-test)1371.5310.682.96
Table 7. Pretest and post-test t-test analyses of Experimental group A_tutee.
Table 7. Pretest and post-test t-test analyses of Experimental group A_tutee.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group A_ tutee (pretest)1318.468.252.280.00
Experimental group A_ tutee (post-test)1365.009.122.53
Table 8. Pretest and post-test t-test analyses of Experimental group B_tutee.
Table 8. Pretest and post-test t-test analyses of Experimental group B_tutee.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group B_ tutee (pretest)1323.238.132.250.00
Experimental group B_ tutee (post-test)1353.8419.385.37
Table 9. Post-test t-test analyses of Experimental groups A and B.
Table 9. Post-test t-test analyses of Experimental groups A and B.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group A (post-test)2670.969.801.920.04
Experimental group B (post-test)2662.6917.793.49
Table 10. Post-test t-test analyses of Experimental group A-peer mentoring group and Experimental group B-peer mentoring group.
Table 10. Post-test t-test analyses of Experimental group A-peer mentoring group and Experimental group B-peer mentoring group.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group A–Peer mentoring group (post-test)1272.0811.173.230.06
Experimental group B–Peer mentoring group (post-test)1257.523.406.76
Table 11. Post-test t-test analyses of Experimental group A-non-peer mentoring group and Experimental group B-non-peer mentoring group.
Table 11. Post-test t-test analyses of Experimental group A-non-peer mentoring group and Experimental group B-non-peer mentoring group.
NumberMeanStandard DeviationStandard Error of the MeanSignificance (p)
Experimental group A–non-peer mentoring group (post-test)1470.008.772.340.42
Experimental group B–non-peer mentoring group (post-test)1467.149.942.66
Table 12. Pretest and post-test t-test analyses of Experimental group A programming attitude questionnaire.
Table 12. Pretest and post-test t-test analyses of Experimental group A programming attitude questionnaire.
DimensionNumberPretestPost-TestSignificance
MeanStandard DeviationMeanStandard Deviation
Learning state263.490.324.160.160.00
Learning intention263.850.374.260.160.08
Table 13. Pretest and post-test t-test analyses of Experimental group B programming attitude questionnaire.
Table 13. Pretest and post-test t-test analyses of Experimental group B programming attitude questionnaire.
DimensionNumberPretestPost-TestSignificance
MeanStandard DeviationMeanStandard Deviation
Learning state263.710.294.280.350.01
Learning intention264.130.244.370.410.36
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Kuo, Y.-C.; Yao, C.-B.; Wu, Z.-Y. Online Peer-Tutoring for Programming Languages Based on Programming Ability and Teaching Skill. Appl. Sci. 2022, 12, 8513. https://doi.org/10.3390/app12178513

AMA Style

Kuo Y-C, Yao C-B, Wu Z-Y. Online Peer-Tutoring for Programming Languages Based on Programming Ability and Teaching Skill. Applied Sciences. 2022; 12(17):8513. https://doi.org/10.3390/app12178513

Chicago/Turabian Style

Kuo, Yu-Chen, Ching-Bang Yao, and Zhe-Yu Wu. 2022. "Online Peer-Tutoring for Programming Languages Based on Programming Ability and Teaching Skill" Applied Sciences 12, no. 17: 8513. https://doi.org/10.3390/app12178513

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop