39 research outputs found

    Do Robots Dream of Virtual Sheep: Rediscovering the "Karel the Robot" Paradigm for the "Plug&Play Generation"

    Get PDF
    We introduce ”C-Sheep”, an educational system designed to teach students the fundamentals of computer programming in a novel and exciting way. Recent studies suggest that computer science education is fast approaching a crisis - application numbers for degree courses in the area of computer programming are down, and potential candidates are put off the subject which they do not fully understand. We address this problem with our system by providing the visually rich virtual environment of ”The Meadow”, where the user writes programs to control the behaviour of a sheep using our ”CSheep” programming language. This combination of the ”Karel the Robot” paradigm with modern 3D computer graphics techniques, more commonly found in computer games, aims to help students to realise that computer programming can be an enjoyable and rewarding experience and intends to help educators with the teaching of computer science fundamentals. Our mini-language-like system for computer science education uses a state of the art rendering engine offering features more commonly found in entertainment systems. The scope of the mini-language is designed to fit in with the curriculum for the first term of an introductory computer program ming course (using the C programming language)

    Critters in the Classroom: A 3D Computer-Game-Like Tool for Teaching Programming to Computer Animation Students

    Get PDF
    The brewing crisis threatening computer science education is a well documented fact. To counter this and to increase enrolment and retention in computer science related degrees, it has been suggested to make programming "more fun" and to offer "multidisciplinary and cross-disciplinary programs" [Carter 2006]. The Computer Visualisation and Animation undergraduate degree at the National Centre for Computer Animation (Bournemouth University) is such a programme. Computer programming forms an integral part of the curriculum of this technical arts degree, and as educators we constantly face the challenge of having to encourage our students to engage with the subject. We intend to address this with our C-Sheep system, a reimagination of the "Karel the Robot" teaching tool [Pattis 1981], using modern 3D computer game graphics that today's students are familiar with. This provides a game-like setting for writing computer programs, using a task-specific set of instructions which allow users to take control of virtual entities acting within a micro world, effectively providing a graphical representation of the algorithms used. Whereas two decades ago, students would be intrigued by a 2D top-down representation of the micro world, the lack of the visual gimmickry found in modern computer games for representing the virtual world now makes it extremely difficult to maintain the interest of students from today's "Plug&Play generation". It is therefore especially important to aim for a 3D game-like representation which is "attractive and highly motivating to today's generation of media-conscious students" [Moskal et al. 2004]. Our system uses a modern, platform independent games engine, capable of presenting a visually rich virtual environment using a state of the art rendering engine of a type usually found in entertainment systems. Our aim is to entice students to spend more time programming, by providing them with an enjoyable experience. This paper provides a discussion of the 3D computer game technology employed in our system and presents examples of how this can be exploited to provide engaging exercises to create a rewarding learning experience for our students

    Evaluation of Robocode as a Teaching Tool for Computer Programming

    Get PDF
    Robocode began as an educational tool to aid in learning Java programming. It has since evolved into something of a phenomenon, as the prospect of creating simple to complex virtual tanks appears to pose an attractive challenge to both novice and expert programmers alike. What started out as a teaching tool has grown into a worldwide network of competitors, all keen to prove that their ‘bot’ stands out from the crowd. Competitions are well organised and many Robocode events are a PR dream for the computing companies that sponsor them. Without a doubt, this easy to use application has sparked the imagination of the world of programming. This is especially evident in the number of higher education institutes that regularly hold competitions for their computing and engineering students, often inviting participants from other colleges. In Ireland alone, a major national event for third level students is held annually at the Tipperary Institute. Sponsors have included the likes of Microsoft and Lenovo and students from most Irish universities and colleges have taken part. This is merely a scenario that has been mimicked across the globe. A cursory browse through a typical computing faculty website will likely reveal a reference to Robocode. This paper attempts to look back to the roots of Robocode, and evaluate its merits as a teaching tool whether for use inside or outside the classroom. The detailed results of a survey are presented, showing the responses of students who have used the tool in a number of capacities, more specifically, an evaluation by those who have participated in the national competition or merely used the tool as part of their programming course work. Lecturers have also been asked for an evaluation to gauge its effect on programming students. With so many willing to dedicate extracurricular time to participate, it is worth investigating what ignited this spark in the first place. What motivates a student or indeed any programmer to want to develop a robot tank that fires bullets, and, attempts to dodge the bullets of other tanks

    Game design for a serious game to help learn programming

    Get PDF
    Tese de mestrado. Multimédia. Faculdade de Engenharia. Universidade do Porto. 201

    Self-beliefs in the introductory programming lab and game-based fantasy role-play

    Get PDF
    This thesis was submitted for the degree of Doctor of philosophy and awarded by Brunel University LondonIt is important for students to engage in adequate deliberate practice in order to develop programming expertise. However, students often encounter anxiety when they begin to learn. This can present a challenge to educators because such anxiety can influence practice behaviour. This thesis situates this challenge within the Control- Value Theory of Achievement Emotions, emphasising a need for domain-specific research and presenting new research tools which can be used to investigate the area. Analysis of data collected from three cohorts of introductory programming students on web programming (2011-12) and robot programming (2012-13 and 2013-14) courses show that programming self-concept and programming aptitude mindset can predict programming anxiety and that programming anxiety is negatively correlated with programming practice. However, levels of anxiety remained consistently high across this period. A method to enrich these psychological constructs through a multimedia-rich learning environment is proposed. Drawing upon the interplay between narrative reinforcement and procedural rhetoric that can be achieved in a fantasy role-play, students' self-concept can be enhanced. A double-blind randomised controlled trial demonstrates promising results, however small effect sizes suggest further research is needed

    Teaching and learning introductory programming : a model-based approach

    Get PDF
    The dissertation identifies and discusses impact of a model-based approach to teaching and learning introductory object-oriented programming both for practitioners and for computer science education research.Learning to program is notoriously difficult. This dissertation investigates ways to teach introductory object-oriented programming at the university level. It focuses on a model-based approach, describes and argues for this approach and investigates several of its aspects. It gives an overview of the research in teaching introductory programming in an objects-first way. The dissertation also investigates ways for university teachers to share and document best practices in teaching introductory object-oriented programming through pedagogical patterns. The dissertation addresses both traditional young full-time students and experienced programmers (although not in object-orientation) participating in part-time education. It examines whether the same success factors for learning programming apply to a model-based approach as to introductory programming courses in general for full-time students and gives a general overview of research in success factors for introductory programming. Some factors are the same, because students‘ math competence is positively correlated with their success. The dissertation examines how experienced programmers link a model-based programming course to their professional practices. The general answer is that the part-time students do not need to have a direct link to their specific work-practice, they expect to create the link themselves; but the teacher must be aware of the conditions facing the part-time students in industry. Furthermore, the dissertation addresses interaction patterns for part-time students learning model-based introductory programming in a net-based environment. A previously prepared solution to an exercise is found to mediate the interaction in three different ways. Design patterns have had a major impact on the quality of object-oriented software. Inspired by this, researchers have suggested pedagogical patterns for sharing best practices in teaching introductory object-oriented programming. It was expected that university teachers‘ knowledge of pedagogical patterns was limited, but this research proved that to be wrong; about half of the teachers know pedagogical patterns. One of the problems this dissertation identifies is the lack of a structuring principle for pedagogical patterns; potential users have problems identifying the correct patterns to apply. An alternative structuring principle based on a constructivist learning theory is suggested and analysed

    The use of ALICE, a visual environment for teaching and learning object-oriented programming

    Get PDF
    University students learning object-oriented programming (OOP) encounter many complexities. This study undertook empirical research aimed at analysing learners’ interactions with the Alice visual programming environment, which seeks to engage and motivate learners to grasp concepts of OOP, whilst creating animated movies and video games. A mixed-methods approach was employed, using questionnaire surveys and interviews to investigate learners’ experiences with Alice and their understanding of OOP. Findings indicated that learners lacked problem-solving abilities; were unable to grasp programming concepts on an abstract level and spent insufficient time practicing programming exercises. Alice proved to be an effective tool in helping to address these challenges and in improving learners’ grasp of OOP. Learners found Alice to have good usability. Furthermore, test and exam results revealed a statistically significant difference between performances of learners who had been taught Alice in comparison to similar learners who were not exposed to the Alice intervention.ComputingInformation SystemsM. Sc. (Information systems
    corecore