Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning

Скачать 44.75 Kb.
НазваниеKey Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning
Размер44.75 Kb.
Enhancing student collaboration and knowledge production in code development e-learning courses

Ioannis Giannoukos, Vassili Loumos, Eleftherios Kayafas, Elias Koukoutsis and Maria Ioannides

School of Electrical and Computer Engineering, National Technical University of Athens, Athens, Greece


Developing and delivering e-learning courses that deal with teaching code production is not a trivial task. Apart from the theoretical aspects of the educational material, students need to quickly acquire skills regarding the implementation of code development projects. During this process, the students acquire knowledge and experience by interacting with their classmates and the instructors, by studying the course material as well as by consulting external sources, such as the internet. However, this knowledge is lost from one semester to the next and new students have to start from scratch. To address this problem, this work presents a peer tutoring method that engages both students and instructors in collaboration techniques and WEB 2.0 technologies. The goal of this method is to enhance student learning and facilitate the delivery of high quality courses.

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning.

1. Introduction

Both designing and delivering in e-learning courses on code production are difficult tasks. Participating students need to acquire the necessary theoretical skills, which will be put to use when they attempt to implement their own code development projects.

Specifically, students should acquire skills that pertain to learning in detail a specific programming language, an Application Programming Interface (API), and/or a specific technology. At the same time, they have to confront problems that may arise while implementing their projects. In addition, due to rapid technological advances in the relative fields, some parts of the course material may be omitted, while at the same time new techniques can be added. This way, students are required to learn more so they can adapt to a programming environment that is constantly changing. Helping students to assimilate faster the necessary information to keep up with the course should be the instructors’ first priority in order to improve the quality of learning.

Traditionally, the instructors update and edit the course material every few years, in order to keep up-to-date with the advances in science and technology. Also, students need to learn the basics, such as setting up the programming environment, learning to use an Integrated Development Environment (IDE) and install the appropriate additional libraries and software tools. However, the aforementioned technological characteristics change constantly as technology advances, new versions arise and different Operating Systems become available. Additionally, even though the course material may include the technological aspects in great detail, it cannot fully incorporate all the possible problems that the students may face during the developing process. Finally, the instructors often have to respond to the same student queries, a fact that significantly delays the process.

To diminish these disadvantages, peer tutoring techniques are used in this work.

In related literature, asynchronous discussion groups along with peer tutoring practices have been used in higher education to increase student collaboration [1]. Specifically, 39 fourth-year students acted as online peer tutors to assist a group of freshmen in discussing cases and solving authentic problems. Results showed that the social support that peer tutors provide is of significant importance. McDuffie et al [2] study the differentiated effects of peer tutoring on co-taught and non-co-taught classes. The results of the aforementioned work indicate that peer tutoring is associated with improved student performance. Finally, Miller et al [3] study the effect of peer tutoring on the students’ self-esteem, concluding that peer tutoring enhances the self-esteem, self-competence and self-worth of the students involved.

In this work, the delivery of a course through collaboration and peer tutoring techniques is described. The goal is to transfer the knowledge that the students acquired in one semester to the next, in this way facilitating learning in the course while at the same time maintaining instructor workload in low levels.

Firstly, this paper describes two distinct learning paths in a course: one for the theoretical aspects of the course and one for the technical. In both paths, students collaborate to create new educational material, while at the same time they evaluate the quality of this material using a rating system. The techniques used derive from WEB 2.0 and collaborative peer tutoring and attempt to make students work as a team, by facilitating collaboration and transferring newfound knowledge to future students. To assess the effectiveness of the new method, preliminary results are presented through the comparison of past courses to the new course, in which the proposed techniques are implemented. Then a discussion follows regarding the advantages and disadvantages of the method as well as future extensions.

2. Methods and Materials

2.1 Course description

This study was applied on a traditional education engineering course regarding “Computer Graphics with OpenGL”. This course is delivered by the School of Electrical and Computer Engineering of the National Technical University of Athens. During each academic semester, approximately 60 students enrol for this course. The course includes learning the basics of computer graphics theory, understanding the OpenGL API concepts and implementing computer graphic applications. The code programming language used is plain C, while more experienced students can use the object oriented C++. Currently, the course is delivered through the open-source Learning Management System Moodle [6].

Past course implementations, of the 2008 and 2009 semesters, are initially described along with their limitations to be compared with the 2010 course in which the new method is implemented.

2.2 Previous course delivery

In 2008, instead of using a Learning management system, the course was delivered through the web site of the Multimedia Technology Laboratory. Nevertheless, the course material, that is, the presentations of each section and the main material of the course were provided online. Three simple projects were given to the students to assess their performance. In case the students needed help to solve possible problems, they should wait for the next course plenary meeting to ask the instructor.

Next year, during the 2009 semester, instructors decided to use the Moodle LMS to facilitate learning. Students of the 2009 semester also used a forum to communicate with the instructors and their fellow students and solve possible queries. The instructors observed an increase in the students’ motivation and decided to modify the class requirements. So instead of three distinct projects, the students had to implement an extensive project regarding the development of a complete game, namely a snake game clone.

However, these two courses presented a series of drawbacks.

The information and experience gained by the students was lost from one semester to another. Therefore, issues pertaining to the set up of the programming environment, such as finding tutorials and good programming practices have to be explained from scratch in subsequent semesters. One solution to this problem could be to include newfound knowledge in the course material (presentations and printed volume) which however would considerably increase the instructor’s workload. In addition, over-analyzing the course material could have the opposite effect, that is, fatigue and reduced student satisfaction.

Due to the lack of a mechanism which would store, enhance and distribute sample code and examples, the students had difficulties in implementing their projects, even the simple ones of the 2008 course. This led to poor student results, a fact that rendered the course goals unsuccessful.

The rate with which the course material was updated was found to be inadequate. This is a grave limitation of code production courses, where technology advances rapidly and changes need to be immediately incorporated to the learning procedure. Furthermore, there is no specific process through which the course material can be adapted to the specific needs of the students.

Finally, students felt isolated during the educational process, which led to decreased motivation and high dropout rates.

2.3 Method description

To deal with the aforementioned problems, two learning paths are implemented in the 2010 course: one for the theoretical and one for the technical aspects of the educational material. The former uses a sample code database and the latter an asynchronous discussion forum and a wiki. In the following, the techniques used are described in detail.

Topic generation

First of all, the topics that the students would be required to research can derive from different sources. For example, the instructors can suggest topics pertaining to current technological developments, research trends and so on. Additionally, the students’ queries on the course material can lead to new knowledge in the form of tutorials or code samples. In general, students have the liberty to research and upload anything they find interesting, whether it is something they created on their own or something they found on the internet, provided that it is relevant to the scope of the course.

Sample code database

In the new course, a sample code database is added to store code examples created by both students and instructors. Each student is encouraged to create new code samples, or search the internet. The uploaded samples have to be properly documented and in case they are derived from a different source, references must be included.

The procedure of uploading and revising the sample code in the database is as follows. Initially, the students upload samples that they have created or found on the internet. To motivate student participation in the procedure, the uploaded samples can stem from a variety of topics, such as samples found in the WEB that the students thought as particularly impressing or helpful in advancing practical aspects of the theory.

Fig. 1. The proposed peer tutoring method

After having been uploaded, the sample does not become immediately available in the database. First, the instructors inspect the code, in order to prevent misconduct, such as offensive language, gender bias and so on. If the sample is approved by the instructor, it automatically becomes visible to the students. The rest of the students can then make comments and suggestions to the author of the sample, on how to improve the work. They also rate the sample, using a typical 5-item Likert scale, that is, 1 if the sample is of poor quality or remotely relevant and 5 if they agree that the sample facilitates the learning process. The students can use the grade 0 if they believe that the sample should immediately be removed, because it already exists in the database, it is offensive or it does not include the proper reference (plagiarism). After a short period of time (about a week), the instructors inspect the database and remove the samples which received low grades. The grade threshold used could be defined by the course policy. In the course under discussion samples with a mean grade lower than 1.5 were removed.

Knowledge production forum

Besides implementing a module for the collection and enhancement of the samples produced by students and instructors, an asynchronous discussion forum is introduced to facilitate material production of the theoretical aspects of the course. The role of the course forum is upgraded: from the mere presentation of instructor announcements or answers to basic student queries, the forum becomes a management module and a tool for knowledge production.

In this module, the instructor acquaints the students with the use of a research paper search engine, GoogleScholar [4], to conduct research on a topic. Student findings are rated by the course participants using the same 5-item Likert scale as in the sample database module.


All forum posts with high grades are uploaded to a wiki. The wiki platform allows the storage and editing of a large number of interlinked web pages. As new knowledge is produced in course, the wiki platform helps to present it and to pass it on to the students of subsequent semesters.

The method is illustrated in figure 1.

3. Preliminary experimental results

In this section, the 2010 course is compared with the previous two, in order to draw conclusions about the effectiveness of the applied collaboration techniques. It should be noted that the course structure has not changed in 2010, which facilitates comparison with previous years. The 2010 required project is even more difficult and pertains to implementing a more advanced game, a Pac-Man clone. The experimental results presented here are preliminary since only 70% of the course has progressed. Nevertheless, we believe it is safe to reach conclusions since more than half of the course has been completed.

Table 1 presents the statistic results of the three courses. To compare these courses with even terms, all statistics were extracted, where applicable, up to section 7 of the course.

Table 1. 2010 course preliminary results, 70% of the courses completed




students enrolled




active students




forum posts




student grades




As one may observe, the use of the Moodle LMS in the 2009 course increased the quality of the course. More specifically, fewer students dropped the course in 2009 (36%), compared to 52% in the 2008 course. As far as the method implementation is concerned, in the 2010 course, approximately the same dropout rate was noted (38% in 2010 compared to 36% in 2009).

Furthermore, the students of the 2010 course make more frequent use of the forum, where 3.26 posts correspond to each student. On the contrary, in 2009, only 1.25 posts per student were made in the forum. Therefore, there is a 260% increase in the use of the course forum.

To compare the course quality between one semester and another, the student achievement in the first 7 sections of the courses was measured. In 2009, students achieved significantly better grades than 2008 (8.5 to 7.6 in the scale of 10), even though the 2009 project was more difficult. An increase in student achievement was also observed between the 2010 and 2009 courses, though milder (0.5). This comparison is only on qualitative basis, since in each year the instructors assess the students in a different manner.

Table 2. Discussion forum statistics

forum posts


forum ratings


average forum post grade


number of participating students


In Table 2, the activity statistics of the asynchronous discussion forum are presented. Specifically, 127 student posts were uploaded in the forum and 98 respective ratings were made. The average grade the forum posts received is 3.91, corresponding to 26 actively participating students. An attempt to classify the forum posts reveals the following categories:

  • Posts that contain valuable information (rated by many students, received a high average grade)

  • Posts that contain less significant information (rated by many students, received a low average grade)

  • Insignificant posts (rated by only a few students)

Any posts that achieved a high average grade but were rated by only a few students are considered insignificant, since their quality is not ensured.

Table 3. Sample Code Database statistics

student DB posts


database comments


database ratings


number of participating students


average database grade


Table 3 presents the student participation in the sample code database module. According to this Table, 19 students uploaded 23 sample applications. The sample applications were commented 55 times, a process which led to their improvement. Therefore the average database grade of 4.85 (in the scale of 5) is the result of the peer reviewing process, in which, the authors of sample code received a higher grade after having made revisions.

4. Conclusion

In this work, a peer tutoring technique has been introduced. Its goal is to increase the trainees’ understanding of the course material, and most importantly, collect, enhance and maintain the collective knowledge gained throughout the course.

The study is applied in code development courses, where besides the theoretical aspects of the course material, students need to familiarize themselves with a certain kind of technology, such as Application Programming Interface or a programming language. In this case, students need to acquire skills in a fast manner as well as to follow the trends in technology which becomes outdated every few years.

Two modules are introduced in this paper, the sample code database and the discussion forum. In both modules, students volunteer to conduct research on a specific topic or develop an application and upload it on the modules. Then, the students can rate the material produced and propose revisions. The final material is checked by the instructor and can be used to transfer this information and experience to students of subsequent semesters.

Preliminary results showed that the students not only accepted the two modules but actively engaged themselves in them. In the future, a final assessment of the method is to be conducted and the rating system is to be researched further.

5. References

[1] Marijke De Smet, Hilde Van Keer, and Martin Valcke, Blending asynchronous discussion groups and peer tutoring in higher education: An exploratory study of online peer tutoring behaviour, Computers & Education, Volume 50, Issue 1, 2008, pp. 207-223

[2] Kimberly A. McDuffie, Margo A. Mastropieri, and Thomas E. Scruggs, Differential effects of peer tutoring in co- taught and non-co- taught classes: Results for content learning and student- teacher interactions, Exceptional children, Volume 75, Issue 4, 2009, pp. 493-510

[3] David Miller, Keith Topping, and Allen Thurston, Peer tutoring in reading: The effects of role and organization on two dimensions of self-esteem, British Journal of Educational Psychology, 2010

[4] Google Scholar, http://scholar., retrieved on 20/04/2009

[5] Multimedia Technology Laboratory e-learning platform, http://virgo.medialab., retrieved on 2/05/2010

[6] Moodle Learning Management System,, retrieved on 2/05/2010


Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning icon‘Exploring the Potential of Peer-Tutoring in Developing Student Writing’ Interim Report on Phase I

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconUnderstanding the Impact of Network Technologies on the Design of Work Social and Peer Production

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconKey words: Ireland, racial state, biopolitics, citizenship referendum

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconWrite here the English version of your “Resumo Key-words: List of Figures

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconKey Words: Genetic Algorithm, Multiple Crossovers, np problem Introduction

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconKey words: Risk communication; governmentality; field/habitus; dialogue; sender/receiver

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconUnless otherwise expressly stated, the following words and terms shall, for the purposes of this code, have the meanings indicated in this chapter

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconFrome a genome database to a semantic knowledge base

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconThe Virtual Research Lab for a Knowledge Community in Production

Key Words: Peer tutoring, wiki, sample code database, knowledge production, e-learning iconIllustrates the many identification tests and examination techniques described in the aapg sample Examination Manual (product code 603). Staff at Shell

Разместите кнопку на своём сайте:

База данных защищена авторским правом © 2014
обратиться к администрации
Главная страница