Systematic literature review: teaching novices programming using robots
---
paper_title: Learning and teaching programming: A review and discussion

paper_content:

In this paper we review the literature relating to the psychological/educational study of programming. We identify general trends comparing novice and expert programmers, programming knowledge and strategies, program generation and comprehension, and object-oriented versus procedural programming. (We do not cover research relating specifically to other programming styles.) The main focus of the review is on novice programming and topics relating to novice teaching and learning. Various problems experienced by novices are identified, including issues relating to basic program design, to algorithmic complexity in certain language features, to the “fragility” of novice knowledge, and so on. We summarise this material and suggest some practical implications for teachers. We suggest that a key issue that emerges is the distinction between effective and ineffective novices. What characterises effective novices? Is it possible to identify the specific deficits of ineffective novices and help them to become effec...
---
paper_title: Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers

paper_content:

Since the early 1960's, researchers have built a number of programming languages and environments with the intention of making programming accessible to a larger number of people. This article presents a taxonomy of languages and environments designed to make programming more accessible to novice programmers of all ages. The systems are organized by their primary goal, either to teach programming or to use programming to empower their users, and then, by each system's authors' approach, to making learning to program easier for novice programmers. The article explains all categories in the taxonomy, provides a brief description of the systems in each category, and suggests some avenues for future work in novice programming environments and languages.
---
paper_title: Using Second Life in Programming's Communities of Practice

paper_content:

This paper presents a novel approach to teaching and learning computer programming, using the three-dimensional virtual world Second Life® to develop a programming community of practice. Our students have developed their programming projects as part of this community as an alternative way of learning. The learning of programming is a difficult process, with many students experiencing difficulties which result in high levels of failure in introductory programming courses. In this paper, we describe and analyse how this approach spurred students' motivation and interest in learning programming. We also present observations on the difficulties felt by both students and teachers in the development of projects and activities, and discuss the approaches taken to overcome those difficulties.
---
paper_title: Systematic literature review: teaching novices programming using robots

paper_content:

Teaching programming to novices is a difficult task due to the complex nature of the subject, the negative stereotypes are associated with programming and because introductory programming courses often fail to encourage student understanding. This study investigates the effectiveness of using robots as tools in the teaching of introductory programming and to determine whether such technology can help to overcome the current barriers for learners in this context. The systematic literature review (SLR) methodology is used to address this aim. Nine electronic databases, the proceedings from six conferences and two journals were searched for relevant literature and exclusion criteria, and after performing several validation exercises, in total, 75% of included papers report that robots are an effective teaching tool and can help novice programmers in their studies. Most of these papers focus on the use of physical robots, however, and further research is needed to assess the effectiveness of using simulated robots.
---
paper_title: Teaching problem solving, computing, and information technology with robots

paper_content:

The Electrical Engineering and Computer Science Department at the United States Military Academy uses the Lego Mindstorms robot and Java as part of the active-learning environment used to teach Information Technology (IT) and problem solving with computers. The United States Military Academy at West Point requires students to take a course on IT and problem solving with computers during their first year. This course is an important opportunity to expose undergraduate students to technology and concepts that will be a part of their daily lives and future careers. The Mindstorms robots are used in the introductory computer science course to teach problem solving skills, fundamental computer programming concepts, and to introduce the concepts of autonomous vehicles, embedded computer systems, sensors, and computer simulation. The short-term impact on the students taking the course has been very positive, and we are confident that the long-term impact will be substantial. Members of the faculty at West Point developed a computer programming environment completely in Java for the Mindstorms robot called Jago. Jago enables students to write programs in Java that will run in a graphic simulator and in the robot. Jago enables the students to visually evaluate their algorithmic solutions, which some students can more easily grasp. Based on these results we have incorporated Jago into the core IT course taught at West Point.
---
paper_title: Using Robotics to Motivate ‘Back Door’ Learning

paper_content:

This paper suggests that robotics can provide a vehicle for guiding primary and secondary school children toward an effective understanding of programming and engineering principles. It observes that children find robotics stimulating and motivating, and that their interest in, and focus on, ‘making the robot do what I want’ leads them ‘via the back door’ to learn about programming and engineering in a way that is both well-grounded and generaliseable. ::: ::: These observations arise from empirical studies of children participating in robotics competitions: we conducted observations and interviews with all the participating teams at two robotics events (one regional, one international), and we followed one young robotics team in a case study. The children had almost all built their robots using LEGO MindStorms for specific competitions, with soccer, rescue and dance events. The children typically worked in teams, building robots as an extra-curricular activity supported by a teacher/mentor. The children came from a variety of educational and social backgrounds. ::: ::: The paper considers what makes robotics motivating to children, including children who are not considered ‘technically oriented’. It describes learning that has emerged from children's experiences in building and programming robots. It describes examples of children learning subjects that they previously considered difficult and inaccessible, in order to solve problems in robotics. It describes examples of children identifying and understanding principles, concepts, and elements of practice that are fundamental to programming and engineering. It describes further how secondary school students working in teams learned that this programming and engineering knowledge has a social context.
---
paper_title: Empirical studies of agile software development : A systematic review

paper_content:

Agile software development represents a major departure from traditional, plan-based approaches to software engineering. A systematic review of empirical studies of agile software development up to and including 2005 was conducted. The search strategy identified 1996 studies, of which 36 were identified as empirical studies. The studies were grouped into four themes: introduction and adoption, human and social factors, perceptions on agile methods, and comparative studies. The review investigates what is currently known about the benefits and limitations of, and the strength of evidence for, agile methods. Implications for research and practice are presented. The main implication for research is a need for more and better empirical studies of agile software development within a common research agenda. For the industrial readership, the review provides a map of findings, according to topic, that can be compared for relevance to their own settings and situations.
---
paper_title: Does quality of reports of randomised trials affect estimates of intervention efficacy reported in meta-analyses?

paper_content:

BACKGROUND ::: Few meta-analyses of randomised trials assess the quality of the studies included. Yet there is increasing evidence that trial quality can affect estimates of intervention efficacy. We investigated whether different methods of quality assessment provide different estimates of intervention efficacy evaluated in randomised controlled trials (RCTs). ::: ::: ::: METHODS ::: We randomly selected 11 meta-analyses that involved 127 RCTs on the efficacy of interventions used for circulatory and digestive diseases, mental health, and pregnancy and childbirth. We replicated all the meta-analyses using published data from the primary studies. The quality of reporting of all 127 clinical trials was assessed by means of component and scale approaches. To explore the effects of quality on the quantitative results, we examined the effects of different methods of incorporating quality scores (sensitivity analysis and quality weights) on the results of the meta-analyses. ::: ::: ::: FINDINGS ::: The quality of trials was low. Masked assessments provided significantly higher scores than unmasked assessments (mean 2.74 [SD 1.10] vs 2.55 [1.20]). Low-quality trials (score < or = 2), compared with high-quality trials (score > 2), were associated with an increased estimate of benefit of 34% (ratio of odds ratios [ROR] 0.66 [95% CI 0.52-0.83]). Trials that used inadequate allocation concealment, compared with those that used adequate methods, were also associated with an increased estimate of benefit (37%; ROR=0.63 [0.45-0.88]). The average treatment benefit was 39% (odds ratio [OR] 0.61 [0.57-0.65]) for all trials, 52% (OR 0.48 [0.43-0.54]) for low-quality trials, and 29% (OR 0.71 [0.65-0.77]) for high-quality trials. Use of all the trial scores as quality weights reduced the effects to 35% (OR 0.65 [0.59-0.71]) and resulted in the least statistical heterogeneity. ::: ::: ::: INTERPRETATION ::: Studies of low methodological quality in which the estimate of quality is incorporated into the meta-analyses can alter the interpretation of the benefit of intervention, whether a scale or component approach is used in the assessment of trial quality.
---
paper_title: A robotics lab for CS1

paper_content:

In this paper, we describe a robotics lab suitable for CS1 classes. The lab uses relatively inexpensive low platform robotics to reinforce repetition, selection and the use of basic functions. We have implemented this project with great success and require every CS1 computer science student to complete it.
---
paper_title: Experiences of prospective high school teachers using a programming teaching tool

paper_content:

During their time at school few high school students are exposed to basic computing concepts as Computer Science (CS) is not considered to be an important part of the curriculum. As a result many high school students do not encounter programming during their studies. In the UK, despite newly qualified CS and ICT (Information and Communication Technology) teachers having specific subject knowledge, in recent years schools have steadily 'watered down' the content of CS courses and have aligned the subject with disciplines such as Business Studies. This has distanced Computing from the other sciences whilst adding to students' confusion about what the subject actually entails. This paper presents the results of a study which involved 23 trainee CS/ICT teachers. The study took the form of a day-long workshop session and had the objectives of determining what perceptions and opinions the trainee teachers held in regards to programming as well as to discover the effectiveness and potential of a programming teaching tool based on the concept of a robot simulator. Analysis of data collected during the session shows how, despite the majority of trainees having some programming experience, a number of trainees had difficulty completing basic programming challenges. This displays how some CS/ICT teachers may lack fundamental programming knowledge. Moreover, whilst most of the trainees felt programming should be taught to high school students studying a CS or ICT course, fewer than half of the trainees said they had the confidence to teach the subject. An evaluation of the effectiveness of the robot simulator as a teaching tool is also presented as is a discussion on the implications which these findings may have.
---

Title: Systematic Literature Review: Teaching Novices Programming Using Robots

Section 1: Introduction
Description 1: Provide an introduction to the topic of teaching programming to novices using robots, including the motivation behind this study and an overview of the systematic literature review (SLR) methodology.

Section 2: Inclusion and exclusion criteria
Description 2: Explain the criteria used to determine which studies were included or excluded from the SLR.

Section 3: Quality assessment
Description 3: Detail the quality assessment procedure used to evaluate the studies included in the SLR.

Section 4: Data extraction
Description 4: Describe the data extraction process and the information collected from each study included in the SLR.

Section 5: Results
Description 5: Summarize the results of the SLR, including the number of studies included and the main findings.

Section 6: Search results
Description 6: Present the detailed results of the search process and the studies selected for inclusion in the SLR.

Section 7: Quality assessment of included studies
Description 7: Discuss the quality scores assigned to the included studies and analyze the implications of these scores.

Section 8: Research questions
Description 8: Provide answers to the research questions posed for the SLR based on the collected data from the included studies.

Section 9: Limitations of SLR
Description 9: Discuss the potential threats to the validity of the SLR and any limitations encountered during the research process.

Section 10: Discussion
Description 10: Present a discussion of the additional research undertaken to validate the findings of the SLR, along with the results and their implications.

Section 11: Publication source of literature included in the SLR
Description 11: Examine the publication sources of the literature included in the SLR to identify prominent journals or conferences.

Section 12: Discussion on the results of the SLR
Description 12: Offer a detailed discussion on the results of the SLR, including observations, trends, and potential implications for future research.

Section 13: Conclusions
Description 13: Summarize the key findings of the SLR and suggest areas for future research.