144,978 research outputs found

    Using Pair Programming as a Collaborative Learning Approach to Support Students With Learning Disabilities Via Zoom Breakout Rooms

    Get PDF
    Peer learning through pair programming is a type of collaborative learning that involves students working in pairs to discuss computer programming concepts or develop codes to solve problems. The Zoom breakout room method is applied to teach pair programming in a virtual classroom during the COVID-19 environment. By facilitating pair programming in a virtual learning environment, we gained valuable experience in promoting collaborative learning, active learning, and problem-based learning activities in a cloud setting

    Automation and schema acquisition in learning elementary computer programming: Implications for the design of practice

    Get PDF
    Two complementary processes may be distinguished in learning a complex cognitive skill such as computer programming. First, automation offers task-specific procedures that may directly control programming behavior, second, schema acquisition offers cognitive structures that provide analogies in new problem situations. The goal of this paper is to explore what the nature of these processes can teach us for a more effective design of practice. The authors argue that conventional training strategies in elementary programming provide little guidance to the learner and offer little opportunities for mindful abstraction, which results in suboptimal automation and schema acquisition. Practice is considered to be most beneficial to learning outcomes and transfer under strict conditions, in particular, a heavy emphasis on the use of worked examples during practice and the assignment of programming tasks that demand mindful abstraction from these examples

    Development and testing of a graphical FORTRAN learning tool for novice programmers

    Get PDF
    To address the difficulties associated with computer programming, this article first looks at some reasons why students, especially engineering students, find programming such a daunting prospect, and it proposes a programming learning tool managed by a Deterministic Finite Automaton (DFA). The DFA machine used a graphical environment provided by Simulink to teach the FOR-mula TRANslator (FORTRAN) programming language to science students. The proposed programming learning tool and the traditional method of teaching were compared and evaluated. The results of evaluation indicated that there was an improvement in learning effectiveness of the proposed learning tool

    Code Shrew: Software platform for teaching programming through drawings and animations

    Get PDF
    In this paper, we present Code Shrew, a new software platform accompanied by an interactive programming course. Its aim is to teach the fundamentals of computer programming by enabling users to create their own drawings and animations. The programming language has a straightforward syntax based on Python, with additions that enable easy drawing and animating using object-oriented code. The editor reacts seamlessly and instantly, providing an engaging and interactive environment for experimenting and testing ideas. The programming course consists of lessons that cover essential programming principles, as well as challenges to test users' skills as they progress through the course. Both the lessons and challenges take advantage of the editor's instant feedback, allowing for a focus on learning-by-doing. We describe the software and the content, the motivation behind them, and their connection to constructionism.Comment: 7 page

    Teaching Introductory Programming Concepts through a Gesture-Based Interface

    Get PDF
    Computer programming is an integral part of a technology driven society, so there is a tremendous need to teach programming to a wider audience. One of the challenges in meeting this demand for programmers is that most traditional computer programming classes are targeted to university/college students with strong math backgrounds. To expand the computer programming workforce, we need to encourage a wider range of students to learn about programming. The goal of this research is to design and implement a gesture-driven interface to teach computer programming to young and non-traditional students. We designed our user interface based on the feedback from students attending the College of Engineering summer camps at the University of Arkansas. Our system uses the Microsoft Xbox Kinect to capture the movements of new programmers as they use our system. Our software then tracks and interprets student hand movements in order to recognize specific gestures which correspond to different programming constructs, and uses this information to create and execute programs using the Google Blockly visual programming framework. We focus on various gesture recognition algorithms to interpret user data as specific gestures, including template matching, sector quantization, and supervised machine learning clustering algorithms

    Toward Using Games to Teach Fundamental Computer Science Concepts

    Get PDF
    Video and computer games have become an important area of study in the field of education. Games have been designed to teach mathematics, physics, raise social awareness, teach history and geography, and train soldiers in the military. Recent work has created computer games for teaching computer programming and understanding basic algorithms. We present an investigation where computer games are used to teach two fundamental computer science concepts: boolean expressions and recursion. The games are intended to teach the concepts and not how to implement them in a programming language. For this investigation, two computer games were created. One is designed to teach basic boolean expressions and operators and the other to teach fundamental concepts of recursion. We describe the design and implementation of both games. We evaluate the effectiveness of these games using before and after surveys. The surveys were designed to ascertain basic understanding, attitudes and beliefs regarding the concepts. The boolean game was evaluated with local high school students and students in a college level introductory computer science course. The recursion game was evaluated with students in a college level introductory computer science course. We present the analysis of the collected survey information for both games. This analysis shows a significant positive change in student attitude towards recursion and modest gains in student learning outcomes for both topics

    Increasing Intrinsic Motivation of Programming Students: Towards Fix and Play Educational Games

    Get PDF
    This research investigates a novel approach to teach programming using educational games. The objective of this research is to investigate the effectiveness of educational games on learning computer programming. In particular, we are examining whether allowing students to manipulate the underlying code of the educational games will increase their intrinsic motivation

    Why University Students Fail in Most Computer Programming Courses: The Case of Wachemo University-Student-Teacher Perspective

    Get PDF
    In this research, a study was conducted to investigate and explore the views of students for the failure and difficulties they faced in learning fundamental programming courses. There are many factors that influence the high rate of failure of students in most computer programming courses. This paper focuses on the teaching and learning methodologies and strategies that are implemented in teaching of all computer programming courses. This is a major factor for consideration; hence an investigation into the causes of failure of students in most computer programming courses from all perspectives with regard to the teaching methodology used by teachers to teach these courses is relevant and very important concept. Most computer programming courses form part of the core concentration areas for students especially studying in school of computing and informatics as an undergraduate degree program. All computer programming students are expected to prove capabilities in the principles of programming and logic that are being taught in the courses; even though some of these concepts are highly intellectual and multifaceted. Their opinions to the usefulness of the teaching methods being implemented in computer programming courses were required for. The needs and concerns about the teaching and learning methods are highlighted in the study and discussed thereby leading to the making of suggestions about the ways to improve the teaching and learning methods that are used in computer programming courses in order to advance understanding of computer programming, when studied by students thereby minimizing failure rates of those students. Keywords: Computer programming; Failure; School of Computing and Informatics; Student and Teacher Perspective DOI: 10.7176/CEIS/11-2-02 Publication date: February 29th 2020

    Applying E-learning Technologies to Teach Computer Programming: A Case Study

    Get PDF
    Recent developments in the quality of e-learning tools now made it a possible to integrate such technology into teaching programs to provide added value to the learning experience. This paper describes the experiences of Victoria University in adopting e-learning technologies to complement the teaching of SAP’s ABAP programming language to students in Singapore. Computer programming still remains an important part of most Information Systems courses. The involvement of SAP relates to Victoria University integrating Enterprise Resource Planning (ERP) systems into their curricula and research programs through a strategic alliance with SAP. The SAP technical infrastructure facilitates the development of courses using Internet and e-learning technology. To assist with the delivery of offshore ERP education an ERP e-Learning model has been developed that integrates synchronous and asynchronous content. Asynchronous e-learning does not involve the presence of a teacher. Typically the learning content is located on a web server that students can access using the Internet. Synchronous e-learning requires the learner and teacher to be present in the event at the same time. It is a real-time, instructor-led online learning event in which all participants are available at the same time and can communicate directly with each other. Recently a pilot was conducted using a synchronous e-learning tool to deliver several programming classes to students in Singapore. A successful evaluation of the pilot was conducted and it is planned to integrate web technology and synchronous e-learning sessions in a more permanent way to offshore courses

    Comparative Analysis of Widely use Object-Oriented Languages

    Full text link
    Programming is an integral part of computer science discipline. Every day the programming environment is not only rapidly growing but also changing and languages are constantly evolving. Learning of object-oriented paradigm is compulsory in every computer science major so the choice of language to teach object-oriented principles is very important. Due to large pool of object-oriented languages, it is difficult to choose which should be the first programming language in order to teach object-oriented principles. Many studies shown which should be the first language to tech object-oriented concepts but there is no method to compare and evaluate these languages. In this article we proposed a comprehensive framework to evaluate the widely used object-oriented languages. The languages are evaluated basis of their technical and environmental features.Comment: 30 pages, figures
    • …
    corecore